中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

做國際網(wǎng)站的上海高端網(wǎng)站公司百度官網(wǎng)下載安裝

做國際網(wǎng)站的上海高端網(wǎng)站公司,百度官網(wǎng)下載安裝,法律咨詢網(wǎng)站建設方案,自己做網(wǎng)站排版k8s概述 Kubernetes 是一個可移植、可擴展的開源平臺,用于管理容器化的工作負載和服務,可促進聲明式配置和自動化。 Kubernetes 擁有一個龐大且快速增長的生態(tài),其服務、支持和工具的使用范圍相當廣泛。 Kubernetes 這個名字源于希臘語&…

k8s概述

Kubernetes 是一個可移植、可擴展的開源平臺,用于管理容器化的工作負載和服務,可促進聲明式配置和自動化。 Kubernetes 擁有一個龐大且快速增長的生態(tài),其服務、支持和工具的使用范圍相當廣泛。

Kubernetes?這個名字源于希臘語,意為“舵手”或“飛行員”。k8s 這個縮寫是因為 k 和 s 之間有八個字符的關系。 Google 在 2014 年開源了 Kubernetes 項目。 Kubernetes 建立在?Google 大規(guī)模運行生產(chǎn)工作負載十幾年經(jīng)驗的基礎上, 結合了社區(qū)中最優(yōu)秀的想法和實踐。

Kubernetes 架構

K8s安裝步驟

1、環(huán)境要求及準備

  • 一臺或多臺運行兼容 deb/rpm 的 Linux 操作系統(tǒng)的計算機;例如:Ubuntu 或 CentOS。
  • 每臺機器 2 GB 以上的內(nèi)存,內(nèi)存不足時應用會受限制。
  • 用作控制平面節(jié)點的計算機上至少有 2 個 CPU。
  • 集群中所有計算機之間具有完全的網(wǎng)絡連接。你可以使用公共網(wǎng)絡或專用網(wǎng)絡。

?準備三臺虛擬機

節(jié)點IP節(jié)點角色
192.168.42.138k8s-master
192.168.42.139k8s-node01
192.168.42.140k8s-node02

關閉防火墻firewalld

systemctl stop firewalld

systemctl disable firewalld

關閉selinux

setenforce 0? ?#臨時關閉

sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config? ?#永久關閉

時間進行同步

yum install ntpdate -y?

ntpdate cn.pool.ntp.org (如果服務器時間不一致才做)

關閉swap

swapoff -a? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?# 臨時

sed -i 's/.swap./#&/' /etc/fstab? ? ?#永久注釋swap開機掛載行

三臺節(jié)點配置主機名解析

cat >> /etc/hosts << EOF 
192.168.42.138  k8s-master
192.168.42.139  k8s-node01
192.168.42.140  k8s-node02
EOF

設置主機名

主機名根據(jù)自己的主機去使用這條命令,注意要跟上面的主機名解析保持一致

hostnamectl set-hostname xxxx

?轉發(fā) IPv4 并讓 iptables 看到橋接流量

執(zhí)行下述指令:

cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOFsudo modprobe overlay
sudo modprobe br_netfilter# 設置所需的 sysctl 參數(shù),參數(shù)在重新啟動后保持不變
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables  = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward                 = 1
EOF# 應用 sysctl 參數(shù)而不重新啟動
sudo sysctl --system

通過運行以下指令確認?br_netfilter?和?overlay?模塊被加載:

lsmod | grep br_netfilter
lsmod | grep overlay

通過運行以下指令確認?net.bridge.bridge-nf-call-iptablesnet.bridge.bridge-nf-call-ip6tables?和?net.ipv4.ip_forward?系統(tǒng)變量在你的?sysctl?配置中被設置為 1:

sysctl net.bridge.bridge-nf-call-iptables net.bridge.bridge-nf-call-ip6tables net.ipv4.ip_forward

2、選擇容器運行時

容器運行時是負責運行容器的軟件。

在集群內(nèi)每個節(jié)點上都需要安裝一個?容器運行時?以使 Pod 可以運行在上面。

常見的容器運行時有:

  • containerd
  • CRI-O
  • Docker Engine
  • Mirantis Container Runtime

?說明:

v1.24 之前的 Kubernetes 版本直接集成了 Docker Engine 的一個組件,名為?dockershim。 這種特殊的直接整合不再是 Kubernetes 的一部分 (這次刪除被作為 v1.20 發(fā)行版本的一部分宣布)。

v1.20版本之后,docker已經(jīng)從k8s中剝離出來了,但是官方依然支持,只是不再是必須安裝的組件。

下面的表格包括被支持的操作系統(tǒng)的已知端點。

運行時Unix 域套接字
containerdunix:///var/run/containerd/containerd.sock
CRI-Ounix:///var/run/crio/crio.sock
Docker Engine(使用 cri-dockerd)unix:///var/run/cri-dockerd.sock

從kubernetes 1.24開始,dockershim已經(jīng)從kubelet中移除,但因為歷史問題docker卻不支持kubernetes主推的CRI(容器運行時接口)標準,所以docker不能再作為kubernetes的容器運行時了,即從kubernetesv1.24開始不再使用docker了。k8s已經(jīng)將容器運行時默認改為containerd。

3、安裝 kubeadm、kubelet 和 kubectl

  • kubeadm:用來初始化集群的指令。

  • kubelet:在集群中的每個節(jié)點上用來啟動 Pod 和容器等。

  • kubectl:用來與集群通信的命令行工具。

注意:三臺節(jié)點都安裝

3.1?添加 Kubernetes 的?yum?倉庫

# 此操作會覆蓋 /etc/yum.repos.d/kubernetes.repo 中現(xiàn)存的所有配置
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.29/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.29/rpm/repodata/repomd.xml.key
exclude=kubelet kubeadm kubectl cri-tools kubernetes-cni
EOF

3.2 安裝 kubelet、kubeadm 和 kubectl,并啟用 kubelet 以確保它在啟動時自動啟動

sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
sudo systemctl enable --now kubelet

4、使用 kubeadm 創(chuàng)建集群

4.1 初始化控制平面節(jié)點

控制平面節(jié)點是運行控制平面組件的機器, 包括?etcd(集群數(shù)據(jù)庫) 和?API 服務器?(命令行工具?kubectl?與之通信)。

要初始化控制平面節(jié)點,請運行:

kubeadm init <args>

?實際命令:

注意:這個初始化命令只在k8s-master節(jié)點執(zhí)行

kubeadm init --apiserver-advertise-address=192.168.42.138 --control-plane-endpoint=k8s-master --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers --kubernetes-version v1.29.2 --service-cidr=10.96.0.0/16 --pod-network-cidr=10.244.0.0/16

參數(shù)解釋:

--apiserver-advertise-address?可用于為控制平面節(jié)點的 API 服務器設置廣播地址

--control-plane-endpoint?可用于為所有控制平面節(jié)點設置共享端點,允許 IP 地址和可以映射到 IP 地址的 DNS 名稱。

--image-repository?聲明使用阿里云官方鏡像

--kubernetes-version?指定k8s安裝的版本,這里我安裝最新的?

--service-cidr 集群內(nèi)部虛擬網(wǎng)絡,Pod統(tǒng)一訪問入口

--pod-network-cidr Pod網(wǎng)絡,與下面部署的CNI網(wǎng)絡組件yaml中保持一致

?初始化過程

kubeadm init?首先運行一系列預檢查以確保機器為運行 Kubernetes 準備就緒。 這些預檢查會顯示警告并在錯誤時退出。然后?kubeadm init?下載并安裝集群控制平面組件。這可能會需要幾分鐘。

?完成之后你應該看到:

?要使非 root 用戶可以運行 kubectl,請運行以下命令, 它們也是?kubeadm init?輸出的一部分:

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

?或者,如果你是?root?用戶,則可以運行:

export KUBECONFIG=/etc/kubernetes/admin.conf

記錄?kubeadm init?輸出的?kubeadm join?命令。 你需要此命令將節(jié)點加入集群。

4.2 將節(jié)點加入集群

在其他從節(jié)點上執(zhí)行如下命令,這個命令的token以你的虛擬機kubeadm init為準

139執(zhí)行:

?140執(zhí)行:

?4.3?驗證安裝結果

提示使用kubectl get nodes在控制節(jié)點查看從節(jié)點的加入情況,當然其他節(jié)點也可以執(zhí)行

在139執(zhí)行命令報錯如下:

?出現(xiàn)這個問題的原因是kubectl命令需要使用kubernetes-admin來運行

解決辦法

1.將主節(jié)點(master節(jié)點)中的【/etc/kubernetes/admin.conf】文件拷貝到從節(jié)點相同目錄下:

2.從節(jié)點配置環(huán)境變量

echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile

3.立即生效

source ~/.bash_profile

兩個node執(zhí)行后則再指令kubectl get nodes命令則都可以返回

注意:以前老版本的Roles字段顯示master,新版本已經(jīng)被control-plane替代

?

5、安裝 Pod 網(wǎng)絡附加組件

[root@k8s-master ~]# kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

5、驗證安裝結果

出現(xiàn)上述結果,說明我們已經(jīng)安裝成功!

也可通過查看kube-system名字空間下的pod資源判斷

當所有組件狀態(tài)都是running時才能確保k8s正常使用。

過程中報錯

1、CNI網(wǎng)絡插件未初始化

"Container runtime network not ready" networkReady="NetworkReady=false reason:NetworkPluginNotReady message:Network plugin returns error: cni plugin not initialized"

?解決方案:

三臺節(jié)點都重啟kubelet進程后再查看node狀態(tài)

2、無法從API端點獲取集群ConfigMap信息

Unable to fetch the kubeadm-config ConfigMap from cluster: failed to get config map: Get "https://master:6443/api/v1/namespaces/kube-system/configmaps/kubeadm-config?timeout=10s": dial tcp: lookup master on 223.5.5.5:53: no such host

這個報錯是由于我之前把kubeadm init命令那里的--control-plane-endpoint=master,我實際上是k8s-master,導致主機名解析失敗,找不到https://master:6443/api/v1/namespaces/kube-system/configmaps/kubeadm-config?timeout=10s這個api端點,那必然會報錯,修改正確后,使用kubeadm reset重置,然后重新Init就好了

3、拉取 registry.k8s.io/pause:3.6 鏡像失敗 導致sandbox 創(chuàng)建不了而報錯?

報錯:detected that the sandbox image "registry.k8s.io/pause:3.6" of the container runtime is inconsistent with that used by kubeadm.? It is recommended that using "registry.aliyuncs.com/google_containers/pause:3.9" as the CRI sandbox image.

?解決方案:

### 三臺節(jié)點執(zhí)行如下命令 生成 containerd 的默認配置文件
containerd config default > /etc/containerd/config.toml 
### 查看 sandbox 的默認鏡像倉庫在文件中的第幾行 
cat /etc/containerd/config.toml | grep -n "sandbox_image"  
### 使用 vim 編輯器 定位到 sandbox_image,將 倉庫地址修改成 registry.aliyuncs.com/google_containers/pause:3.9/pause:3.6
vim /etc/containerd/config.toml  
sandbox_image = "registry.aliyuncs.com/google_containers/pause:3.9"  
### 重啟 containerd 服務  
systemctl daemon-reload  
systemctl restart containerd.service 

修改完成后記得重啟containerd服務

4、k8s初始化int時出現(xiàn)Initial timeout of 40s passed

可以先使用以下命令查看k8s的啟動日志:

systemctl status kubelet

或使用以下命令查看最近的k8s日志:

journalctl -xeu kubelet

具體參考:k8s初始化int時出現(xiàn)Initial timeout of 40s passed | 思維網(wǎng)絡|站長博客|陳配鋒

http://www.risenshineclean.com/news/52594.html

相關文章:

  • seo提高網(wǎng)站排名單頁網(wǎng)站制作教程
  • 中國企業(yè)報蘇州旺道seo
  • 做淘寶客網(wǎng)站掙錢瀏覽器網(wǎng)址
  • 蘇州專業(yè)做網(wǎng)站的公司有哪些在線代理瀏覽網(wǎng)站免費
  • 短視頻網(wǎng)站平臺怎么做seo研究中心怎么樣
  • 東坑網(wǎng)站建設東莞seo優(yōu)化公司
  • 建手機網(wǎng)站價格企業(yè)網(wǎng)站seo哪里好
  • 群暉nas可以做網(wǎng)站百度seo怎么提高排名
  • 豬八戒官網(wǎng)做網(wǎng)站專業(yè)嗎企業(yè)網(wǎng)絡
  • 自己做的網(wǎng)站如何百度能搜索企業(yè)關鍵詞排名優(yōu)化網(wǎng)址
  • 最吸引人的廣告圖片seo教學免費課程霸屏
  • 自己設計圖紙的軟件佛山百度快照優(yōu)化排名
  • 能在線做初中題的網(wǎng)站適合小學生的新聞事件
  • 可以用來做視頻網(wǎng)站的視頻外鏈嗎網(wǎng)絡營銷專員的就業(yè)前景
  • 產(chǎn)品經(jīng)理做網(wǎng)站網(wǎng)站頁面
  • 跨境電子商務網(wǎng)站建設ks免費刷粉網(wǎng)站推廣
  • 網(wǎng)絡運營一個月工資寧波seo推廣方式排名
  • 荔灣做網(wǎng)站上海優(yōu)化公司排行榜
  • wordpress pdf 免費濰坊seo按天收費
  • flash做安卓游戲下載網(wǎng)站百度官方首頁
  • 《水利建設與管理》雜志社網(wǎng)站上海高端網(wǎng)站定制
  • Linux下使用wordpress公司seo排名優(yōu)化
  • 提供專業(yè)網(wǎng)站建設平臺收錄是什么意思
  • 心得體會萬能模板免費網(wǎng)站seo
  • 有些網(wǎng)站下方只有版權沒有ICP簡述seo和sem的區(qū)別與聯(lián)系
  • 北京網(wǎng)站推廣怎么做不屬于網(wǎng)絡推廣方法
  • 公司網(wǎng)站建設需要多少錢googleplay官方下載
  • 買2g 空間做下載網(wǎng)站全網(wǎng)搜索關鍵詞查詢
  • 邯鄲網(wǎng)站設計哪家好好省推廣100種方法
  • h5可以用什么網(wǎng)站做app推廣渠道商