国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

使用rancher的rke2部署高可用的k8s集群

這篇具有很好參考價值的文章主要介紹了使用rancher的rke2部署高可用的k8s集群。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

目錄

1、linux環(huán)境初始化及內(nèi)核調(diào)優(yōu)

(1)設(shè)置主機(jī)名、關(guān)閉防火墻、配置集群ip映射、關(guān)閉selinux

(2)禁用linux的透明大頁、標(biāo)準(zhǔn)大頁

(3)禁用swap分區(qū)

(4)配置集群時間同步,同步阿里云服務(wù)器時間

(5)linux內(nèi)核參數(shù)調(diào)優(yōu)

(6)配置ipvs

2、rke2安裝k8s

(1)主節(jié)點(diǎn)安裝執(zhí)行

(2)從節(jié)點(diǎn)安裝執(zhí)行

(3)以上安裝完成后在主節(jié)點(diǎn)1執(zhí)行(一臺主節(jié)點(diǎn))

(4)主節(jié)點(diǎn)1配置啟動完成后,在其他主節(jié)點(diǎn)執(zhí)行以下命令進(jìn)行配置

(5)以上主節(jié)點(diǎn)都啟動后,接下來在所有從節(jié)點(diǎn)的進(jìn)行以下配置

3、集群kubectl命令行工具優(yōu)化

4、rke2集群升級問題


????????Kubernetes在1.20版之后已經(jīng)廢棄了Docker,而是使用Containerd作為容器運(yùn)行時。

? ? ? ? k8s在1.20之后的版本可以使用rke2來輔助部署。單純使用rke2部署k8s的好處是可以把k8s集群和rancher解耦合。使rancher只負(fù)責(zé)管理k8s,即使rancher出問題也不影響k8s本身。

1、linux環(huán)境初始化及內(nèi)核調(diào)優(yōu)

注意:在rke2中master節(jié)點(diǎn)一定是etcd節(jié)點(diǎn),保證etcd節(jié)點(diǎn)的選舉有效,master節(jié)點(diǎn)一定要是奇數(shù),本文準(zhǔn)備3個節(jié)點(diǎn)實(shí)現(xiàn)k8s的高可用。

以下是每臺節(jié)點(diǎn)都需要執(zhí)行的:

(1)設(shè)置主機(jī)名、關(guān)閉防火墻、配置集群ip映射、關(guān)閉selinux

#設(shè)置主機(jī)名
hostnamectl set-hostname bd-rke1.xxxx.com
#設(shè)計(jì)集群ip映射
vi /etc/hosts

#關(guān)閉防火墻
systemctl stop firewalld
systemctl disable firewalld
systemctl disable iptables
systemctl stop iptables

#關(guān)閉selinux
getenforce
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
getenforce

(2)禁用linux的透明大頁、標(biāo)準(zhǔn)大頁

在 Linux 中大頁分為兩種:Huge pages?( 標(biāo)準(zhǔn)大頁 ) 和?Transparent Huge pages( 透明大頁 ) 。內(nèi)存是以塊即頁的方式進(jìn)行管理的,當(dāng)前大部分系統(tǒng)默認(rèn)的頁大小為 4096 bytes 即 4K。1MB 內(nèi)存等于 256 頁;1GB 內(nèi)存等于 256000 頁。

echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled

echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag'  >> /etc/rc.local
echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'  >> /etc/rc.local

(3)禁用swap分區(qū)

echo 0 > /proc/sys/vm/swappiness
echo 'echo 0 > /proc/sys/vm/swappiness' >> /etc/rc.local

swapoff -a
#修改 /etc/fstab文件,注釋掉 SWAP 的自動掛載
vi /etc/fstab

cat <<-EOF >> /etc/sysctl.conf
vm.swappiness=0
EOF
sysctl -p 
free -h

chmod +x /etc/rc.d/rc.local

(4)配置集群時間同步,同步阿里云服務(wù)器時間

yum install -y ntp
date
#修改配置文件:
vim /etc/ntp.conf
#注銷默認(rèn)Server
#server 0.rhel.pool.ntp.org iburst
#server 1.rhel.pool.ntp.org iburst
#server 2.rhel.pool.ntp.org iburst
#server 3.rhel.pool.ntp.org iburst
#添加:
server  ntp1.aliyun.com prefer    #阿里云的服務(wù)器時間

#保存退出

#啟動ntp
systemctl start ntpd
#設(shè)置開啟啟動
systemctl enable ntpd
systemctl status ntpd

(5)linux內(nèi)核參數(shù)調(diào)優(yōu)

#加載網(wǎng)橋過濾模塊
modprobe br_netfilter
#查看是否成功
lsmod | grep br_netfilter
#添加網(wǎng)橋過濾和地址轉(zhuǎn)發(fā)功能
cat <<- EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
# 下面的內(nèi)核參數(shù)可以解決ipvs模式下長連接空閑超時的問題
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 10
net.ipv4.tcp_keepalive_time = 600
EOF
#重新加載配置
sysctl -p
sysctl -p /etc/sysctl.d/k8s.conf

(6)配置ipvs

yum install ipset ipvsadm

#需要加載模塊寫入腳本文件
cat <<EOF > /etc/sysconfig/modules/ipvs.modules
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
modprobe -- br_netfilter
EOF
chmod +x /etc/sysconfig/modules/ipvs.modules
/bin/bash /etc/sysconfig/modules/ipvs.modules
lsmod |grep -e ip_vs -e nf_conntrack_ipv4

lsmod | grep br_netfilter

以下僅需要主節(jié)點(diǎn)執(zhí)行:

安裝rke2時,需要查看NetworkManager,保證它不會干擾rke2,保證cali*和flannel*的網(wǎng)卡不被NetworkManager管理

#安裝rke2時,查看NetworkManager,保證它不會干擾rke2
systemctl is-active NetworkManager
cat <<EOF > /etc/NetworkManager/conf.d/rke2-canal.conf
[keyfile]
unmanaged-devices=interface-name:cali*;interface-name:flannel*
EOF
#cali*和flannel*的網(wǎng)卡不被NetworkManager管理
systemctl daemon-reload
systemctl restart NetworkManager

2、rke2安裝k8s

(1)主節(jié)點(diǎn)安裝執(zhí)行

?rke2版本目錄https://github.com/rancher/rke2/releases

#安裝默認(rèn)最新版本的rke2
curl -sfL https://get.rke2.io|sh -

#安裝指定版本的rke2,這里vx.y.z為rke2版本號
curl -sfL https://get.rke2.io | INSTALL_RKE2_VERSION=vx.y.z sh -

(2)從節(jié)點(diǎn)安裝執(zhí)行

#安裝默認(rèn)最新版本
curl -sfL https://get.rke2.io | INSTALL_RKE2_TYPE="agent" sh -

#指定版本執(zhí)行以下命令
curl -sfL https://get.rke2.io | INSTALL_RKE2_TYPE="agent" INSTALL_RKE2_VERSION=vx.y.z sh -

(3)以上安裝完成后在主節(jié)點(diǎn)1執(zhí)行(一臺主節(jié)點(diǎn))

systemctl start rke2-server
systemctl enable rke2-server

#查看第一次啟動后生成的文件
ll /var/lib/rancher/rke2/
ll /var/lib/rancher/rke2/bin/
ll /etc/rancher/rke2/

這里的rke2.yaml 相當(dāng)于admin.conf 誰擁有該文件就有rke2集群控制權(quán)

#查看node節(jié)點(diǎn)和pod啟動情況
export KUBECONFIG=/etc/rancher/rke2/rke2.yaml
/var/lib/rancher/rke2/bin/kubectl get node
/var/lib/rancher/rke2/bin/kubectl get pod -A

在主節(jié)點(diǎn)1執(zhí)行上述命令,等待集群啟動完成后,接著在該節(jié)點(diǎn)執(zhí)行以下命令進(jìn)行集群配置

#查看集群的唯一token
cat /var/lib/rancher/rke2/server/node-token

?復(fù)制上述token,vim?/etc/rancher/rke2/config.yaml 編輯這個文件

#/var/lib/rancher/rke2/server/node-token文件里面的token復(fù)制到這里
token: K102b4dfc868f2a36291d73365bb24aedc831efb7777bec9a9182fb1f62b2ebbc9d::server:ccfb808c305500b889ca2cd4c481b53c
tls-san:
    - xxxx.com    
node-name: "bd-kb-prd01.xxxx.com"    #配置這臺節(jié)點(diǎn)的名字,和主機(jī)名一樣

#給主節(jié)點(diǎn)打上污點(diǎn)標(biāo)記,使主節(jié)點(diǎn)不執(zhí)行pod的任務(wù),如果只想從節(jié)點(diǎn)執(zhí)行工作任務(wù),主節(jié)點(diǎn)不執(zhí)行,取消這個注釋。
#node-taint:                         
#    - "CriticalAddonsOnly=true:NoExecute"

#打上master標(biāo)記
node-label:
    - "node=Master"                
    - "bd-kb-prd01.xxxx.com=Master"

#設(shè)置阿里云鏡像地址,加速下載
system-default-registry: "registry.cn-hangzhou.aliyuncs.com" 

#設(shè)置etcd快照策略
etcd-snapshot-retention: 2            
etcd-snapshot-schedule-cron: '*/5 * * * *'

# 自定義垃圾回收機(jī)制,添加到所所節(jié)點(diǎn) 
kubelet-arg:
    - "eviction-hard=nodefs.available<1%,memory.available<10Mi"
    - "eviction-soft-grace-period=nodefs.available=30s,imagefs.available=30s"
    - "eviction-soft=nodefs.available<5%,imagefs.available<1%"

重新加載配置并重啟rke2

systemctl daemon-reload
systemctl restart rke2-server

#檢查啟動情況
/var/lib/rancher/rke2/bin/kubectl get node
/var/lib/rancher/rke2/bin/kubectl get pod -A

(4)主節(jié)點(diǎn)1配置啟動完成后,在其他主節(jié)點(diǎn)執(zhí)行以下命令進(jìn)行配置

把主節(jié)點(diǎn)1的 /etc/rancher/rke2/config.yaml 文件復(fù)制其他主節(jié)點(diǎn)

并在其他每一個主節(jié)點(diǎn)上進(jìn)行修改,主要把節(jié)點(diǎn)名修改成當(dāng)前節(jié)點(diǎn)主機(jī)名

vim?/etc/rancher/rke2/config.yaml

#這里 bd-kb-prd01.xxxx.com 為主節(jié)點(diǎn)1的主機(jī)名
server: https://bd-kb-prd01.xxxx.com:9345
token: K102b4dfc868f2a36291d73365bb24aedc831efb7777bec9a9182fb1f62b2ebbc9d::server:ccfb808c305500b889ca2cd4c481b53c
tls-san:
    - xxxx.com
node-name: "bd-kb-prd03.xxxx.com"
#node-taint:
#    - "CriticalAddonsOnly=true:NoExecute"
node-label:
    - "node=Master"
    - "bd-kb-prd03.xxxx.com=Master"

#設(shè)置阿里云鏡像地址,加速下載
system-default-registry: "registry.cn-hangzhou.aliyuncs.com" 

#設(shè)置etcd快照策略
etcd-snapshot-retention: 2            
etcd-snapshot-schedule-cron: '*/5 * * * *'

# 自定義垃圾回收機(jī)制,添加到所所節(jié)點(diǎn) 
kubelet-arg:
    - "eviction-hard=nodefs.available<1%,memory.available<10Mi"
    - "eviction-soft-grace-period=nodefs.available=30s,imagefs.available=30s"
    - "eviction-soft=nodefs.available<5%,imagefs.available<1%"

加載配置并啟動rke2

systemctl daemon-reload
systemctl start rke2-server
systemctl enable rke2-server

等待啟動完成,可以切換到主節(jié)點(diǎn)1查看其他主節(jié)點(diǎn)時候加入集群。

#等待,切換到master1查看狀態(tài)
systemctl status rke2-server -l
export KUBECONFIG=/etc/rancher/rke2/rke2.yaml
/var/lib/rancher/rke2/bin/kubectl get node
/var/lib/rancher/rke2/bin/kubectl get pod -A

(5)以上主節(jié)點(diǎn)都啟動后,接下來在所有從節(jié)點(diǎn)的進(jìn)行以下配置

把主節(jié)點(diǎn)1的 /etc/rancher/rke2/config.yaml 文件復(fù)制所有從節(jié)點(diǎn)

并在其他每一個從節(jié)點(diǎn)上進(jìn)行修改,主要把從點(diǎn)名修改成當(dāng)前節(jié)點(diǎn)主機(jī)名

vim?/etc/rancher/rke2/config.yaml

#這里 bd-kb-prd01.xxxx.com 為主節(jié)點(diǎn)1的主機(jī)名
server: https://bd-rke0.xxxx.com:9345
token: K1095be49da65ea82a388d41720e83b3f68ac8a97cda987d3648939e8c01e252560::server:5e59442937d36c8f06c0b482d967d24e

#這里只需要配置節(jié)點(diǎn)名,一般是主機(jī)名
node-name: "bd-rke2.xxxx.com"

#給節(jié)點(diǎn)打上work的標(biāo)記
node-label:
    - "node=Worker"
    - "bd-rke2.xxxx.com=Worker"

#配置阿里云鏡像倉庫,加速鏡像下載
system-default-registry: "registry.cn-hangzhou.aliyuncs.com"

#從節(jié)點(diǎn)不需要配置etcd快照策略

# 自定義垃圾回收機(jī)制,添加到所所節(jié)點(diǎn) 
kubelet-arg:
    - "eviction-hard=nodefs.available<1%,memory.available<10Mi"
    - "eviction-soft-grace-period=nodefs.available=30s,imagefs.available=30s"
    - "eviction-soft=nodefs.available<5%,imagefs.available<1%"

加載配置并啟動rke2工作節(jié)點(diǎn)

systemctl daemon-reload
systemctl start rke2-agent
systemctl enable rke2-agent 

等待啟動完成,可以切換到主節(jié)點(diǎn)1查看從節(jié)點(diǎn)點(diǎn)時候加入集群的狀態(tài)。

#等待,切換到master1查看狀態(tài)
systemctl status rke2-server -l
export KUBECONFIG=/etc/rancher/rke2/rke2.yaml
/var/lib/rancher/rke2/bin/kubectl get node
/var/lib/rancher/rke2/bin/kubectl get pod -A

附命令查看本機(jī)的containeded啟動情況

/var/lib/rancher/rke2/bin/crictl --runtime-endpoint=unix:///run/k3s/containerd/containerd.sock ps

3、集群kubectl命令行工具優(yōu)化

#設(shè)置后使用/var/lib/rancher/rke2/bin/kubectl get node等命令
#就不用export KUBECONFIG=/etc/rancher/rke2/rke2.yaml
mkdir ~/.kube
ln -s /etc/rancher/rke2/rke2.yaml ~/.kube/config
chmod 600 ~/.kube/config

#設(shè)置后使用/var/lib/rancher/rke2/bin/crictl --runtime-endpoint=unix:///run/k3s/containerd/containerd.sock ps
#不需要--runtime-endpoint=unix://


ln -s /var/lib/rancher/rke2/agent/etc/crictl.yaml /etc/crictl.yaml

#path設(shè)置
vi /etc/profile
export PATH=$PATH:/var/lib/rancher/rke2/bin
source /etc/profile

現(xiàn)在就可以直接在該節(jié)點(diǎn)上執(zhí)行kubectl get node命令進(jìn)行操作了。?文章來源地址http://www.zghlxwxcb.cn/news/detail-410171.html

4、rke2集群升級問題

########################### rke2升級問題 ############################
# server 升級 再執(zhí)行
curl -sfL https://get.rke2.io | sh -
# worker 升級
curl -sfL https://get.rke2.io | INSTALL_RKE2_TYPE="agent" sh -
#server指定版本升級
curl -sfL https://get.rke2.io | INSTALL_RKE2_VERSION=vx.y.z sh -
# worker 指定版升級
https://get.rke2.io | INSTALL_RKE2_TYPE="agent"   INSTALL_RKE2_VERSION=vx.y.z sh -

到了這里,關(guān)于使用rancher的rke2部署高可用的k8s集群的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 使用rancher rke快速安裝k8s集群

    使用rancher rke快速安裝k8s集群

    Rancher Kubernetes Engine(RKE)是一個用于部署、管理和運(yùn)行Kubernetes集群的開源工具。旨在簡化Kubernetes集群的部署和操作。 RKE具有以下特點(diǎn)和功能: 簡化的部署過程 RKE提供了一個簡單的命令行界面,使您可以輕松地部署一個完整的Kubernetes集群。您只需提供少量的配置信息,RK

    2024年02月05日
    瀏覽(48)
  • k8s~RKE的方式升級Rancher集群

    k8s~RKE的方式升級Rancher集群

    在主機(jī)或者遠(yuǎn)程訪問的筆記本上安裝kubectl命令行工具 通過RKE創(chuàng)建kubernetes集群,需要預(yù)先設(shè)置rancher-cluster.yml配置文件,通過這個配置文件安裝kubernetes集群,同時可以指定kubernetes的版本。 RKE安裝kubernetes集群后,會在RKE二進(jìn)制文件相同目錄下生成kube_config_rancher-cluster.yml文件,

    2024年02月08日
    瀏覽(25)
  • k8s集群中部署rancher v2.7高可用集群

    k8s集群中部署rancher v2.7高可用集群

    一,什么是 Rancher? ?官網(wǎng)地址: 什么是 Rancher? | Rancher Manager Rancher 是一個 Kubernetes 管理工具,讓你能在任何地方和任何提供商上部署和運(yùn)行集群。 Rancher 可以創(chuàng)建來自 Kubernetes 托管服務(wù)提供商的集群,創(chuàng)建節(jié)點(diǎn)并安裝 Kubernetes,或者導(dǎo)入在任何地方運(yùn)行的現(xiàn)有 Kubernetes 集群

    2024年02月07日
    瀏覽(24)
  • RKE快速搭建離線k8s集群并用rancher管理界面

    RKE快速搭建離線k8s集群并用rancher管理界面

    轉(zhuǎn)載說明:如果您喜歡這篇文章并打算轉(zhuǎn)載它,請私信作者取得授權(quán)。感謝您喜愛本文,請文明轉(zhuǎn)載,謝謝。 本文記錄使用RKE快速搭建一套k8s集群過程,使用的rancher老版本2.5.7(當(dāng)前最新版為2.7)。適用于初學(xué)測試、測試環(huán)境及定制化要求不高的生產(chǎn)環(huán)境。 關(guān)聯(lián)文章: 1.

    2024年01月24日
    瀏覽(24)
  • 使用 RKE 方式搭建 K8s 集群并部署 NebulaGraph

    使用 RKE 方式搭建 K8s 集群并部署 NebulaGraph

    本文由社區(qū)用戶 Albert 貢獻(xiàn),首發(fā)于 NebulaGraph 論壇,旨在提供多一種的部署方式使用 NebulaGraph。 在本文,我將會詳細(xì)地記錄下我用 K8s 部署分布式圖數(shù)據(jù)庫 NebulaGraph 的過程。下面是本次實(shí)踐的內(nèi)容規(guī)劃: 一到十章節(jié)為 K8s 集群搭建過程; 十一到十五章節(jié)為參考 NebulaGraph 官方

    2024年02月14日
    瀏覽(29)
  • rke2安裝單節(jié)點(diǎn)k8s

    Linux version 3.10.0-957.21.3.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Tue Jun 18 16:35:19 UTC 2019 root@10.101.1.30 ~$ cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) CentOS Linux release 7.5.1804 (Core) 顯示running表示啟動成功,如下: ● rke2-server.service - Rancher

    2024年02月12日
    瀏覽(49)
  • 使用docker部署rancher并導(dǎo)入k8s集群

    使用docker部署rancher并導(dǎo)入k8s集群

    前言:鑒于我已經(jīng)部署了k8s集群,那就在部署rancher一臺用于管理k8s,這是一臺單獨(dú)的虛擬環(huán)境,之前在k8s的master節(jié)點(diǎn)上進(jìn)行部署并未成功,有可能端口沖突了,這個問題我并沒有深究,如果非要通過修改端口等操作部署上去后續(xù)可能帶來的問題我處理不了,也很浪費(fèi)時間,所

    2024年02月09日
    瀏覽(31)
  • Rancher部署k8s集群

    Rancher是一個開源的企業(yè)級容器管理平臺。通過Rancher,企業(yè)再也不必自己使用一系列的開源軟件去從頭搭建容器服務(wù)平臺。Rancher提供了在生產(chǎn)環(huán)境中使用的管理Docker和Kubernetes的全棧化容器部署與管理平臺。 首先所有節(jié)點(diǎn)部署docker 安裝docker依賴 yum install wget expect vim net-tools

    2024年02月11日
    瀏覽(23)
  • rancher2.6部署k8s集群示例

    rancher2.6部署k8s集群示例

    博客主頁:https://tomcat.blog.csdn.net 博主昵稱:農(nóng)民工老王 主要領(lǐng)域:Java、Linux、K8S 期待大家的關(guān)注??點(diǎn)贊??收藏?留言?? rancher 2.6已經(jīng)發(fā)布一段時間,與2.5還是有不少變動,而且目前只有英語文檔。為了方便大家順利使用,在此演示下rancher2.6部署k8s集群。 本文是 如何通過

    2023年04月11日
    瀏覽(17)
  • 【K8S】Rancher的安裝&使用Rancher搭建K8S集群&Rancher的使用

    【K8S】Rancher的安裝&使用Rancher搭建K8S集群&Rancher的使用

    rancher官方文檔 Rancher 是一個 Kubernetes 管理工具,讓你能在任何地方和任何提供商上部署和運(yùn)行集群。 Rancher 可以創(chuàng)建來自 Kubernetes 托管服務(wù)提供商的集群,創(chuàng)建節(jié)點(diǎn)并安裝 Kubernetes,或者導(dǎo)入在任何地方運(yùn)行的現(xiàn)有 Kubernetes 集群。 Rancher 基于 Kubernetes 添加了新的功能,包括統(tǒng)

    2024年02月02日
    瀏覽(47)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包