目錄
一、實驗
1.環(huán)境
2.安裝 Ubuntu
3.連接Ubuntu
4.master節(jié)點安裝docker
5.node節(jié)點安裝docker
6.master節(jié)點安裝K8S
7.添加K8S工作節(jié)點
8.安裝網(wǎng)絡(luò)插件calico
9.故障
10.故障恢復(fù)
11.測試k8s網(wǎng)絡(luò)和coredns
二、問題
1.Ubuntu如何修改鏡像源
2.Ubuntu和Windows之間如何實現(xiàn)復(fù)制粘貼
3.Ubuntu如何開啟openssh-server
4.UbuntuSSH連接失敗
5.Ubuntu?ping不通
6.更新apt源和安裝基礎(chǔ)軟件包報錯
7. master更新鏡像源報錯
8.Ubuntu如何安裝rz命令
一、實驗
1.環(huán)境
(1)主機
表1 主機
主機 | 架構(gòu) | 版本 | IP | 備注 |
master1 | K8S master節(jié)點 | 1.23.1 | 192.168.204.102 | |
node1 | K8S node節(jié)點 | 1.23.1 | ?192.168.204.104 |
2.安裝 Ubuntu
(1) 選擇版本
ubuntu-20.04.3-desktop-amd64
(2)系統(tǒng)檢查
(3)等待
(4)選擇語言
(5)鍵盤布局
(6)更新和其他軟件
(7)時區(qū)
(8)磁盤
(9)用戶
(10)安裝
(11)重啟
3.連接Ubuntu
(1)設(shè)置密碼
1)先用安裝時候的用戶登錄進(jìn)入系統(tǒng)
2)輸入:sudo passwd 按回車
3)輸入新密碼,重復(fù)輸入密碼,最后提示passwd:password updated sucessfully
此時已完成root密碼的設(shè)置
4)輸入:su root
切換用戶到root試試.
(2)網(wǎng)絡(luò)
ip a
(3)修改機器主機名
master1
hostnamectl set-hostname master1 && bash
node1
hostnamectl set-hostname node1 && bash
(4)安裝vim
sudo apt-get install vim
(5)安裝網(wǎng)絡(luò)工具
apt install net-tools
(6)修改網(wǎng)卡
sudo vim /etc/network/interfaces
?
auto ens33
iface ens33 inet static
address 192.168.204.102
netmask 255.255.255.0
gateway 192.168.204.2
dns-nameserver 8.8.8.8
(7)重啟
reboot
(8) 修改域名
vim /etc/hosts
(8)更新apt源和安裝基礎(chǔ)軟件包
apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common gnupg2
4.master節(jié)點安裝docker
(1)把下載的key添加到本地trusted數(shù)據(jù)庫中
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
(2)設(shè)置穩(wěn)定版?zhèn)}庫
sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \
$(lsb_release -cs) \
stable"
(3)?安裝Docker
sudo apt-get install docker-ce docker-ce-cli containerd.io -y
(4)?配置Docker驅(qū)動
cat <<EOF | tee /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
EOF
(5)開機自啟
mkdir -p /etc/systemd/system/docker.service.d
systemctl daemon-reload
systemctl restart docker
systemctl enable --now docker
5.node節(jié)點安裝docker
(1) 安裝過程
與master節(jié)點相同,這里省略。
6.master節(jié)點安裝K8S
(1)更新
apt-get update && apt-get install -y apt-transport-https curl
(2)鏡像加速
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial main
EOF
(3)安裝
apt-get install -y kubelet=1.23.1-00 kubeadm=1.23.1-00 kubectl=1.23.1-00
(4)標(biāo)記指定軟件包為保留(held back),阻止軟件自動更新
apt-mark hold kubelet kubeadm kubectl
(5)關(guān)閉交換分區(qū)
swapoff -a
(6)初始化K8S
kubeadm init --apiserver-advertise-address 192.168.204.102 --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=SystemVerification
(7)配置文件
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
7.添加K8S工作節(jié)點
(1)更新
apt-get update && apt-get install -y apt-transport-https curl
?(2)鏡像加速
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial main
EOF
(3)安裝
apt-get install -y kubelet=1.23.1-00 kubeadm=1.23.1-00 kubectl=1.23.1-00
?(4)標(biāo)記指定軟件包為保留(held back),阻止軟件自動更新
apt-mark hold kubelet kubeadm kubectl
?(5)關(guān)閉交換分區(qū)
swapoff -a
(6)在master1上查看加入節(jié)點的命令
kubeadm token create --print-join-command
(7)在node1執(zhí)行命令
(8)查看
kubectl get node
8.安裝網(wǎng)絡(luò)插件calico
(1)下載配置文件
https://docs.projectcalico.org/manifests/calico.yaml
(2)修改配置文件
(3)安裝
kubectl apply -f calico.yaml
9.故障
(1)故障描述
此時磁盤大小不夠崩潰
(2)查看pod狀態(tài)
kubectl get pod --all-namespaces
嘗試再次初始化報錯ERROR
10.故障恢復(fù)
(1)重置kubeadm
kubeadm reset
出現(xiàn)刪除提示
(2) 刪除配置文件
(3)關(guān)閉swap 測試
sed -ri 's/.*swap.*/#&/' /etc/fstab
swapoff -a
(4)再次重置kubeadm
kubeadm reset
(5)初始化
kubeadm init --apiserver-advertise-address 192.168.204.102 --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=SystemVerification
(6) 配置文件
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
(7)在master1上查看加入節(jié)點的命令
kubeadm token create --print-join-command
kubeadm join 192.168.204.102:6443 --token d70wh5.gyvrmwa62w91hhoa --discovery-token-ca-cert-hash sha256:765a563a7ba90c23da4c375ec99dd434763ca43512e27c6ae38ce0bd67a6234d
(8)從節(jié)點加入失敗
systemctl stop kubelet
systemctl stop docker
rm -rf /var/lib/cni/ /var/lib/kubelet/* /etc/cni/
ifconfig docker0 down
systemctl start docker
free -m
(9)刪除文件重新加入
rm -rf /etc/kubernetes/kubelet.conf
rm -rf /etc/kubernetes/pki/ca.crt
(10)查看節(jié)點狀態(tài)
kubectl get node
(11)?安裝網(wǎng)絡(luò)插件calico
kubectl apply -f calico.yaml
(12) 觀察pod變化
拉取鏡像需要一定時間,查看pod狀態(tài)為running則安裝成功。
kubectl get pod --all-namespaces -w
kubectl get pod --all-namespaces
(13)查看集群狀態(tài)
kubectl get node
kubectl get node -o wide
11.測試k8s網(wǎng)絡(luò)和coredns
(1)測試
kubectl run busybox --image busybox:1.28 --restart=Never --rm -it busybox -- sh
/ # ping www.baidu.com
/ # nslookup kubernetes.default.svc.cluster.local
/ # exit
二、問題
1.Ubuntu如何修改鏡像源
(1)自動
選擇 “Ubuntu軟件 / 源代碼 (需驗證,輸入密碼) / 其它站點 / 選擇最佳服務(wù)器 ”,自動選擇合適的鏡像源
(2)手動
Ubuntu系統(tǒng)中,軟件源文件地址為:/etc/apt/sources.list
1)備份原來的源,將以前的源備份一下,以防以后可以用的。
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
2)打開/etc/apt/sources.list文件,在前面添加如下條目,并保存。
sudo vim /etc/apt/sources.list(可將vim更換為自己熟悉的編輯器)
#添加阿里源
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
#添加清華源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse multiverse
(3)更新
更新源
sudo apt-get update
如出現(xiàn)依賴問題,解決方式如下:
sudo apt-get -f install
更新軟件:
sudo apt-get upgrade
2.Ubuntu和Windows之間如何實現(xiàn)復(fù)制粘貼
(1)命令
apt-get autoremove open-vm-tools
sudo apt-get install open-vm-tools-desktop
3.Ubuntu如何開啟openssh-server
(1) 開啟命令
要在Ubuntu主機開啟SSH服務(wù),需要開啟openssh-server命令
(2)下載SSH服務(wù)
sudo apt-get install openssh-server
(3)執(zhí)行下句,驗證下載后是否已經(jīng)開啟了服務(wù)
#如果只有ssh-agent表示還沒啟動
ps -e | grep ssh
(4)開啟服務(wù)
#如果顯示sshd則說明已啟動成功
/etc/init.d/ssh start
4.UbuntuSSH連接失敗
(1)修改配置文件
1)進(jìn)入終端窗口
2)進(jìn)入root權(quán)限。輸入命令:sudo su,回車后輸入密碼即可。
3)打開ssh服務(wù)器的配置文件,輸入命令:vi /etc/ssh/sshd_config
4)在彈出窗口中找到Authentication,使用vi命令修改其中PermitRootLogin后的prohibit-password為yes(如果不會使用vi命令,參考下面的注意)。
修改前
修改后
(2)重新啟動
?重新啟動ssh服務(wù)器,輸入命令
sudo /etc/init.d/ssh restart
?重新使用XShell工具進(jìn)行連接
?
5.Ubuntu?ping不通
(1)修改網(wǎng)卡
輸入命令sudo vim /etc/network/interfaces,編輯該文件。注意此處 ens33 處用自己的網(wǎng)卡編號替換,address和gateway也是要視自己的情況定的。
auto lo
iface lo inet loopback
auto ens33
iface ens33 inet static
address 192.168.204.102
netmask 255.255.255.0
gateway 192.168.204.2
dns-nameserver 8.8.8.8
(2)保存退出
wq 保存退出,此時ping一些自己的內(nèi)網(wǎng)應(yīng)該是可以ping通的了。要是ping www.baidu.com還是ping不通的,接下來就需要繼續(xù)接著做。
(3)DNS解析
在命令行輸入sudo vim /etc/systemd/resolved.conf 修改改文件:將DNS前的 # 號去掉,然后加上DNS服務(wù)器地址即可。
(4)重啟網(wǎng)絡(luò)服務(wù)
sudo /etc/init.d/ network-manager force-reload ==> 重新加載網(wǎng)路配置文件
sudo /etc/init.d/network-manager restart
(5)安裝ifupdown
apt install ifupdown
(6)再次修改網(wǎng)卡
sudo vim /etc/network/interfaces
auto ens33
iface ens33 inet static
address 192.168.204.102
netmask 255.255.255.0
gateway 192.168.204.2
dns-nameserver 8.8.8.8
?
(7)重啟
reboot
(8)重啟Ubuntu
su root
(9)ping
6.更新apt源和安裝基礎(chǔ)軟件包報錯
(1)報錯
(2)原因分析
鎖定。
(3)解決方法
sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock*
sudo dpkg --configure -a
sudo apt update
7. master更新鏡像源報錯
(1)報錯
(2)原因分析
沒有公鑰
(3)解決方法
添加公鑰
apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 8B57C5C2836F4BEB
成功
8.Ubuntu如何安裝rz命令
(1)安裝文章來源:http://www.zghlxwxcb.cn/news/detail-832063.html
apt install lrzsz
文章來源地址http://www.zghlxwxcb.cn/news/detail-832063.html
到了這里,關(guān)于云原生Kubernetes: Ubuntu 安裝 K8S 1.23版本(單Master架構(gòu)) 及故障恢復(fù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!