使用Kubeadm部署kubernetes集群

簡介:因工作要求所以學(xué)習(xí)了一下kubernetes相關(guān)知識,在這里和大家分享一下。文章中所有步驟都是在root權(quán)限下執(zhí)行的,如果文中有錯誤的地方還望看官交流指正,此文檔僅用作參考,謝謝。


準備:

準備3臺Cent OS7 虛擬機:

1.sh-vm3:172.17.1.43? port 4322 ; sh-vm4: 172.17.1.44? port 4422 ;?sh-vm5: 172.17.1.45 port 4522?

2.不需要ssh的同學(xué)忽略此步驟.

ssh -p 4322 root@218.255.12.218??ssh -p 4422 root@218.255.12.218??ssh -p 4522 root@218.255.12.218 開啟終端 分別連接三臺VM.

到這里我么的準備工作就完成了,下面讓我們開始k8s的部署吧。


Master:

1.我們把sh-vm3:172.17.1.43? port 4322 作為集群的Master.?sh-vm4和sh-vm5作為node.

2.在/etc/yum.repos.d/ 目錄下新建docker.repo文件:vim /etc/yum.repos.d/docker.repo? (如果沒有安裝vim 執(zhí)行 yum install vim). 在文件內(nèi)填入內(nèi)容

[dockerrepo]

name=Docker Repository

baseurl=https://yum.dockerproject.org/repo/main/centos/7/

enabled=1

gpgcheck=1

gpgkey=https://yum.dockerproject.org/gpg

3.安裝docker:? ?yum install docker-engine-1.12.6? ,執(zhí)行 :

a. systemctl enable docker.service

b. systemctl daemon-reload

c. systemctl start docker

4.安裝最新的kubectl:

a. curl -LOhttps://storage.googleapis.com/kubernetes-release/release/$(curl -shttps://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl

b. chmod +x ./kubectl? (修改權(quán)限)

c. mv ./kubectl /usr/local/bin/kubectl (移動文件位置)

5.安裝kubeadm和kubelet

a. 在 /etc/yum.repos.d/ 目錄下新建 kubernetes.repo文件: vim?/etc/yum.repos.d/docker.repo? 寫入內(nèi)容:

[kubernetes]

name=Kubernetes

baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64

enabled=1

gpgcheck=1

repo_gpgcheck=1

gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg

https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg

b. 禁用selinux,執(zhí)行:? setenforce 0

c. 安裝kubeadm和kubelet , 執(zhí)行:? ?yum install -y kubeadm kubelet? ?(注意:如果在這里出現(xiàn)錯誤,執(zhí)行:vim?/etc/yum.repos.d/docker.repo ; 將 gpgkey 的第一個鏈接https://packages.cloud.google.com/yum/doc/yum-key.gpg刪除)

6.執(zhí)行 vim?/etc/systemd/system/kubelet.service.d/10-kubeadm.conf ;?將systemd更改為cgroupfs 并且在?"--allow-privileged=true"后添加?''--fail-swap-on=false" ,結(jié)果如下圖

7執(zhí)行?systemctl daemon-reload ;?systemctl enable kubelet && systemctl start kubelet

8.創(chuàng)建集群,執(zhí)行:kubeadm init --pod-network-cidr=10.244.0.0/16 ; (如果有提示 you can skip pre-flight ...那么在命令后面添加?--skip-preflight-checks 參數(shù)即可)這時候你可以看到如下內(nèi)容:

Your Kubernetes master has initialized successfully!

To start using your cluster, you need to run (as a regular user):

mkdir -p $HOME/.kube

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

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

You should now deploy a pod network to the cluster.

Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:

http://kubernetes.io/docs/admin/addons/

You can now join any number of machines by running the following on each node

as root:

kubeadm join --token b5866f.ce6a5b3c7dbf849a 172.17.1.43:6443 --discovery-token-ca-cert-hash sha256:2ee4d26c40d529ca3c5ea715cb8ef5e5fc81bd5f7430dfe8cdf187e050e277c1

按照提示一步步執(zhí)行即可

9.通過執(zhí)行以下命令設(shè)置pod網(wǎng)絡(luò):

a. kubectl apply - f?https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

b. kubectl apply -f?https://raw.githubusercontent.com/coreos/flannel/master/Documentation/k8s-manifests/kube-flannel-rbac.yml

c. 現(xiàn)在master準備接受連接,執(zhí)行步驟#8返回的kubeadm join命令,檢查節(jié)點是否加入了網(wǎng)絡(luò),執(zhí)行kubectl get node

10.等待node安裝#2執(zhí)行完,將master證書通過scp拷貝到node(有多臺則執(zhí)行多次):

a. scp -P 4422 /etc/kubernetes/pki/ca.keyroot@172.17.1.44:/etc/kubernetes/pki/1.key

b. scp -P 4422 /etc/kubernetes/pki/ca.crtroot@172.17.1.44:/etc/kubernetes/pki/1.crt

node將使用master上的證書生成新的證書

11.拷貝bootstrap-kubelet.conf 和~/.kube/config到node:

a. scp -P 4422 /etc/kubernetes/bootstrap-kubelet.confroot@172.17.1.44:/etc/kubernetes/

b. scp -P 4422 ~/.kube/configroot@172.17.1.44:~/.kube/


node安裝:

1.重復(fù)Master安裝步驟的2-6,完成之后執(zhí)行#2

2.在/etc/kubernetes/ 目錄下面新建pki 文件夾,用來存儲秘鑰,新建~/.kube/ 存放config文件:

?mkdir?/etc/kubernetes/pki/? ;? ?mkdir?~/.kube/? ?等待Master #10 #11執(zhí)行完畢進行下一步

3.安裝證書生成工具:

a. yum install httpd

b. systemctl enable httpd.service

c. yum install mod_ssl

4.生成證書(進入/pki文件目錄):

a. openssl genrsa -out ca.key 2048

b. openssl req -new -key ca.key -subj "/CN=172.17.1.44" -out ca.csr? ("/CN=ip"填入node的IP地址)

c. openssl x509 -req -in ca.csr -CA 1.crt -CAkey 1.key -CAcreateserial -out ca.crt -days 3650

5.啟動kubectl服務(wù):

a. systemctl enable kubelet && systemctl start kubelet

b. 執(zhí)行Master#8?kubeadm join --token b5866f.ce6a5b3c7dbf849a 172.17.1.43:6443 --discovery-token-ca-cert-hash sha256:2ee4d26c40d529ca3c5ea715cb8ef5e5fc81bd5f7430dfe8cdf187e050e277c1??(如果有提示?you can skip pre-flight ...那么在命令后面添加?--skip-preflight-checks 參數(shù)即可)

7.到這里我們的node節(jié)點就部署好了,執(zhí)行 kubectl get nodes 就可以看到集群的狀態(tài)啦。



題外話:初次使用簡書,排版不好還請諒解。如果有疑問的話可以留言,我會及時回復(fù)。


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,321評論 6 543
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,559評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,442評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,835評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 72,581評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,922評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,931評論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 43,096評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,639評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 41,374評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,591評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,104評論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,789評論 3 349
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,196評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,524評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,322評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 48,554評論 2 379

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