一仅政、kubeadm 部署 k8s1.27.4

一、服務器分布

二静汤、關閉防火墻

三琅催、關閉selinux

四居凶、關閉swap

五、設置主機名

六藤抡、在master上添加hosts

七侠碧、將橋接的ipv4流量傳遞到iptables的連接

八、時間同步

九缠黍、安裝docker(所有節(jié)點)

十弄兜、安裝cri-dockerd?(所有節(jié)點)

十一、安裝kubeadm瓷式、kubelet和kubectl(所有節(jié)點)

十二替饿、部署kubernetes Master

十三、kubeadm?init做了那些事

十四贸典、加入kubernetes node<node上執(zhí)行>

十五盛垦、部署容器網(wǎng)絡(CNI)


一、服務器分布

主機名Ip配置角色

hs-tmp-153????????192.168.2.153????????8核8G 100G????????dev-k8s-master

hs-app-552????????192.168.2.63? ? ? ? ? ?8核8G 150G????????dev-k8s-node1

hs-develop-560????192.168.2.60????????4核16G100G????????dev-k8s-node2

二瓤漏、關閉防火墻

# systemctl stop firewalld

# systemctl disable firewalld

# iptables –vnL

# iptables -F&&iptables -t nat -F&& iptables -t mangle -F && iptables -X

三腾夯、關閉selinux

# sed -i 's/enforcing/disabled/'/etc/selinux/config

# setenforce 0

四、關閉swap

# swapoff –a

# tail -1 /etc/fstab

#/dev/mapper/centos-swap swap??????????????????? swap??? defaults??????? 0 0? ? 此行注釋掉

五蔬充、設置主機名

# hostname set-hostname

六蝶俱、在master上添加hosts

# cat >> /etc/hosts <<EOF

> 192.168.2.153 hs-tmp-153

> 192.168.2.63 hs-app-552

> 192.168.2.60 hs-develop-560

>EOF

七、將橋接的ipv4流量傳遞到iptables的連接

# cat > /etc/sysctl.d/k8s.conf<<EOF

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

EOF

# sysctl –system

八饥漫、時間同步

# yum search chrony

# egrep -v "^$|^#"/etc/chrony.conf

server ntp.aliyun.com iburst

driftfile /var/lib/chrony/drift

makestep 1.0 3

rtcsync

logdir /var/log/chrony


#systemctl start chronyd

#systemctl enable chronyd

#systemctl restart chronyd

# chronyc sources –v

九榨呆、安裝docker(所有節(jié)點)

#yum update

#wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

-O /etc/yum.repos.d/docker-ce.repo

#yum -y install docker-ce

配置鏡像加速器:

#cat /etc/docker/daemon.json

{

? "registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"],

? "insecure-registries":["192.168.2.51"]

}

# systemctl restart docker.service

十、安裝cri-dockerd (所有節(jié)點)

下載:

https://objects.githubusercontent.com/github-production-release-asset-2e65be/318491505/1b428949-77b9-4046-a78e-239f447de788?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20230810%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230810T002239Z&X-Amz-Expires=300&X-Amz-Signature=6f130777ffa1d7e444c9d0395cf06cb2cc78605fadd3414dfb50869bca135845&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=318491505&response-content-disposition=attachment%3B%20filename%3Dcri-dockerd-0.3.4-3.el7.x86_64.rpm&response-content-type=application%2Foctet-stream

# yum localinstall /tmp/cri-dockerd-0.3.4-3.el7.x86_64.rpm

修改文件

# systemctlrestart cri-dockerd

十一庸队、安裝kubeadm积蜻、kubelet和kubectl(所有節(jié)點)

添加阿里云yum軟件源

#cat > /etc/yum.repos.d/kubernetes.repo << EOF

[kubernetes]

name=Kubernetes

baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64

enabled=1

gpgcheck=0

repo_gpgcheck=0

gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpghttps://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

EOF

#yum -y install kubelet kubeadm kubectl

#systemctl enable kubelet

注:切記不要啟動服務

十二、部署kubernetes Master

192.168.2.153<master>執(zhí)行

#kubeadm init \

--kubernetes-version=v1.27.4\

--apiserver-advertise-address=192.168.2.153\

--image-repositoryregistry.aliyuncs.com/google_containers \

--kubernetes-versionv1.27.4 \

--service-cidr=10.96.0.0/12\

--pod-network-cidr=10.244.0.0/16\

--cri-socketunix:///var/run/cri-dockerd.sock \

--ignore-preflight-errors=all

注解:

--apiserver-advertise-address=集群通告地址

--image-repository由于默認拉去鏡像地址空間k8s.gcr.io國內(nèi)無法訪問彻消,這里指定阿里云鏡像倉庫地址

--kubernetes-version

k8s版本竿拆,與安裝的一直

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

--pod-network-cidr

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

也可使用配置文件引導:


出現(xiàn)下圖丙笋,安裝完成:


拷貝kubectl使用的連接k8s認證文件到默認路徑:

#? mkdir -p $HOME/.kube

#?? sudo cp -i /etc/kubernetes/admin.conf$HOME/.kube/config

#?? sudo chown $(id -u):$(id -g)$HOME/.kube/config

#kubectl get node

NAME???????? STATUS???? ROLES?????????? AGE??? VERSION

hs-tmp-153?? NotReady??control-plane?? 155m?? v1.27.4

十三、kubeadm?init做了那些事

1. [preflight] 環(huán)境檢查和拉取鏡像

2.[certs] 生成證書文件煌贴,存放目錄:/etc/kubernetes/pki

3.[kubeconfig] 生成kubeconfig連接k8s配置文件御板,存放目錄:controller-manager.conf

4.[kubelet-start] 生成kubelet配置文件并啟動

5.[control-plane] 已靜態(tài)pod方式啟動master組建

6.存放master組件配置文件/etc/kubernetes/manifests,存儲配置到k8s configmap中

7.[mark-control-plane] 給master節(jié)點配置role和添加污點(沒有聲明的情況下牛郑,不允許pod分配過來)

8.[bootstrap-token] 為kubelet自動生成證書的一系列配置

9.[addons] 安裝插件怠肋,coreDNS和kube-proxy

10.讓你拷貝kubectl所使用的連接k8s的配置文件到默認路徑

mkdir -p$HOME/.kube

sudo cp -i/etc/kubernetes/admin.conf $HOME/.kube/config

sudo chown $(id-u):$(id -g) $HOME/.kube/config

生成一個node加入集群的命令:

kubeadmjoin 192.168.2.153:6443 --token r24dse.o8bispnfb34cuwly \

???????? --discovery-token-ca-cert-hash

十四、加入kubernetes node<node上執(zhí)行>

#kubeadm join 192.168.2.153:6443 --token r24dse.o8bispnfb34cuwly--discovery-token-ca-cert-hashsha256:4b5ab79c068aabb8ed9c3dda021f1afb28dc4f6126149bd4057928a9cac6ba8a--cri-socket unix:///var/run/cri-dockerd.sock


#kubectl get node<master上執(zhí)行>

NAME???????????? STATUS???? ROLES?????????? AGE???? VERSION

hs-app-552?????? NotReady?? ????????? 3m41s?? v1.27.4

hs-develop-560?? NotReady??????????? 49s???? v1.27.4

hs-tmp-153?????? NotReady?? control-plane?? 163m???v1.27.4

注:

NotReady: 因為網(wǎng)絡沒有準備就緒淹朋,可以通過journalctl –u kubelet> a.log文件中查看

默認token有效期為24小時笙各,當過期之后钉答,改token就不可用了。這時就需要重新創(chuàng)建token酪惭,可以之間使用命令快捷生成:

# kubeadm token create--print-join-command

十五、部署容器網(wǎng)絡(CNI)

https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/#pod-network

注意:只要部署下面其中一個者甲,推薦calico

Calico是一個純?nèi)龑拥臄?shù)據(jù)中心網(wǎng)絡方案春感,caclico支持廣泛的平臺,包括k8s虏缸,openstack等鲫懒。

Calico在每一個計算節(jié)點利用linux kernel實現(xiàn)了一個高效的虛擬路由器(vRouter)來負責數(shù)據(jù)轉(zhuǎn)發(fā),而每個vRouter通過BGP協(xié)議負責把自己上運行的workload的路由信息向整個calico網(wǎng)絡傳播刽辙。

此外窥岩,Calico項目還實現(xiàn)了k8s網(wǎng)絡策略,提供ACL功能

下載文件:

#curlhttps://raw.githubusercontent.com/projectcalico/calico/v3.26.1/manifests/calico.yaml-O

下載完成后還需要修改里面定義Pod網(wǎng)絡(CALICO_IPV4POOL_CIDR)宰缤,與前面的kubeadm init指定的pod-network-cidr一樣颂翼。


修改完成后應用清單:

#kubectl apply -f calico.yaml

#kubectl get pods -n kube-system


#kubectl get nodes

NAME???????????? STATUS?? ROLES?????????? AGE??? ?VERSION

hs-app-552?????? Ready???????????? 129m??? v1.27.4

hs-develop-560?? Ready???????????? 126m??? v1.27.4

hs-tmp-153?????? Ready???control-plane?? 4h48m?? v1.27.4

安裝完成后

NotReady狀態(tài)轉(zhuǎn)換成了Ready狀態(tài)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末慨灭,一起剝皮案震驚了整個濱河市朦乏,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌氧骤,老刑警劉巖呻疹,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異筹陵,居然都是意外死亡刽锤,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進店門朦佩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來并思,“玉大人,你說我怎么就攤上這事语稠》挠” “怎么了?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵颅筋,是天一觀的道長宙暇。 經(jīng)常有香客問我,道長议泵,這世上最難降的妖魔是什么占贫? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮先口,結(jié)果婚禮上型奥,老公的妹妹穿的比我還像新娘瞳收。我一直安慰自己,他們只是感情好厢汹,可當我...
    茶點故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布螟深。 她就那樣靜靜地躺著,像睡著了一般烫葬。 火紅的嫁衣襯著肌膚如雪界弧。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天搭综,我揣著相機與錄音垢箕,去河邊找鬼。 笑死兑巾,一個胖子當著我的面吹牛条获,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蒋歌,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼帅掘,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了堂油?” 一聲冷哼從身側(cè)響起锄开,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎称诗,沒想到半個月后萍悴,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡寓免,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年癣诱,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片袜香。...
    茶點故事閱讀 38,626評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡撕予,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蜈首,到底是詐尸還是另有隱情实抡,我是刑警寧澤,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布欢策,位于F島的核電站吆寨,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏踩寇。R本人自食惡果不足惜啄清,卻給世界環(huán)境...
    茶點故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望俺孙。 院中可真熱鬧辣卒,春花似錦掷贾、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至啡莉,卻和暖如春港准,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背票罐。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工叉趣, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留泞边,地道東北人该押。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像阵谚,于是被迫代替她去往敵國和親蚕礼。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,494評論 2 348

推薦閱讀更多精彩內(nèi)容