這篇文章主要講解了“KubeSphere怎么安裝”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“KubeSphere怎么安裝”吧!
為張家界等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及張家界網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、張家界網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
當(dāng)然,還有些同學(xué)可能會(huì)和我一樣有強(qiáng)迫癥,即使目前沒(méi)有現(xiàn)成的 Kubernetes 環(huán)境,我也不想讓 KubeSphere 給我來(lái)個(gè)全家桶,還是想自己搭建 k8s 集群,怎么辦,二進(jìn)制部署好煩啊,像我這種菜鳥(niǎo)沒(méi)有半天搞不定,有沒(méi)有簡(jiǎn)單快捷的方法,十分鐘就能建好集群?當(dāng)然有,用 sealos 就好了,只需一條命令即可跨主機(jī)安裝所有依賴,不需要 ansible
,不需要 ssh 登錄到其他機(jī)器,安裝之前需要做一些準(zhǔn)備工作:
所有節(jié)點(diǎn)安裝并啟動(dòng) docker
下載 kubernetes 離線安裝包
下載最新版本 sealos(目前穩(wěn)定版是 2.0.4)
我的機(jī)器規(guī)劃是這樣的:
Hostname | IP | Role |
---|---|---|
sealos-node1 | 192.168.0.2 | master |
sealos-node2 | 192.168.0.3 | node |
sealos-node3 | 192.168.0.4 | node |
安裝步驟分為以下幾步:
1、在 master 上執(zhí)行以下命令:
$ sealos init --master 192.168.0.2 \ --node 192.168.0.3 \ --node 192.168.0.4 \ --user root \ --passwd password \ --version v1.14.5 \ --pkg-url /root/kube1.14.5.tar.gz
2、沒(méi)有了。
真沒(méi)有了,如果想了解原理,請(qǐng)查看 sealos 的官方文檔。
下面就正式進(jìn)入 KubeSphere 的安裝環(huán)節(jié)。
1、首先將 ks-installer
倉(cāng)庫(kù)克隆到 master 節(jié)點(diǎn)上:
$ git clone https://github.com/kubesphere/ks-installer -b advanced-2.0.2
2、在 Kubernetes 集群中創(chuàng)建名為 kubesphere-system
和 kubesphere-monitoring-system
的 namespace。
3、創(chuàng)建 Kubernetes 集群 CA 證書(shū)的 Secret。
> 注:按照當(dāng)前集群 ca.crt 和 ca.key 證書(shū)路徑創(chuàng)建(Kubeadm 創(chuàng)建集群的證書(shū)路徑一般為 /etc/kubernetes/pki
)
$ kubectl -n kubesphere-system create secret generic kubesphere-ca \ --from-file=ca.crt=/etc/kubernetes/pki/ca.crt \ --from-file=ca.key=/etc/kubernetes/pki/ca.key
4、創(chuàng)建 etcd 的證書(shū) Secret。
> 注:根據(jù)集群實(shí)際 etcd 證書(shū)位置創(chuàng)建;
若 etcd 已經(jīng)配置過(guò)證書(shū),則參考如下創(chuàng)建:
$ kubectl -n kubesphere-monitoring-system create secret generic kube-etcd-client-certs \ --from-file=etcd-client-ca.crt=/etc/kubernetes/pki/etcd/ca.crt \ --from-file=etcd-client.crt=/etc/kubernetes/pki/etcd/healthcheck-client.crt \ --from-file=etcd-client.key=/etc/kubernetes/pki/etcd/healthcheck-client.key
若 etcd 沒(méi)有配置證書(shū),則創(chuàng)建空 Secret(以下命令適用于 Kubeadm 創(chuàng)建的 Kubernetes 集群環(huán)境):
$ kubectl -n kubesphere-monitoring-system create secret generic kube-etcd-client-certs
我這里是使用 sealos 搭建的集群,可以通過(guò)查看 etcd 的資源清單文件來(lái)獲取它的證書(shū):
5、修改部署文件
由于 KubeSphere 部署過(guò)程中涉及的組件非常多,安裝過(guò)程中會(huì)有很多莫名其妙的坑,你可能會(huì)遇到以下幾個(gè)問(wèn)題:
**問(wèn)題 1:**如果現(xiàn)有集群中已經(jīng)安裝有 metrics-server,需要在配置文件中將 metrics_server_enable
設(shè)置為 False。我的集群中沒(méi)有安裝這個(gè)組件,所以不用設(shè)為 False。
**問(wèn)題 2:**在安裝過(guò)程中卡死在 Waitting for ks-sonarqube port to become open
部分,節(jié)點(diǎn)上通過(guò) NodePort 已經(jīng)可以正常訪問(wèn) sonarqube ,該問(wèn)題沒(méi)有解決,由于是一個(gè)不影響全局安裝的一個(gè)操作,所以同樣在配置文件中將 sonarqube_enable
設(shè)置為 False。
**問(wèn)題 3:**如果當(dāng)前的集群資源不是很足,可以臨時(shí)取消掉 istio 的安裝,后續(xù)再開(kāi)啟 istio 的支持。
**問(wèn)題 4:**KubeSphere 的組件默認(rèn)情況下使用持久化存儲(chǔ),需要確保集群中有一個(gè)默認(rèn)的 StorageClass
資源對(duì)象,如果確實(shí)沒(méi)有,只是想臨時(shí)部署一個(gè) demo,可以在配置文件中將 persistence
里面的 enable
設(shè)置為 false。
我最終用于安裝 KubeSphere 的配置文件如下:
只需要修改 ConfigMap 的值即可,其中 kube_apiserver_host
就是現(xiàn)有集群的 APIServer 地址,etcd_endpoint_ips
就是 etcd 的所在節(jié)點(diǎn) IP,默認(rèn)端口為 2379,如果你是集群模式 etcd,這里可以填寫多個(gè)節(jié)點(diǎn) IP,中間用 ,
隔開(kāi),下面就是不需要安裝的組件設(shè)置為 False。
6、自定義 Docker 鏡像。
因?yàn)槟壳?ConfigMap 中不能禁用日志,所以只能強(qiáng)行修改 ansible playbook 了。進(jìn)入 ks-installer 的根目錄,將 kubesphere.yaml
中的 ks-logging
刪除:
然后修改 Dockerfile
,將 Helm v2 替換為 Helm v3,原因你懂得,我可不想裝 tiller。修改后的 Dockerfile 內(nèi)容如下:
最后重新構(gòu)建鏡像,將部署文件中 Deployment 的鏡像改為自定義的鏡像,就可以直接部署了:
$ kubectl apply -f deploy/kubesphere.yaml $ kubectl -n kubesphere-system get pod NAME READY STATUS RESTARTS AGE ks-account-585846bd44-mt7ss 1/1 Running 0 3h9m ks-apigateway-7d77cb9495-hxgz8 1/1 Running 0 3h9m ks-apiserver-697c5f4859-dsbmm 1/1 Running 0 3h7m ks-console-5b8fbf45c4-7hxrw 1/1 Running 0 3h8m ks-console-5b8fbf45c4-hj4bj 1/1 Running 0 3h8m ks-controller-manager-7497f6c944-4k8wd 1/1 Running 0 3h8m ks-docs-65999c97c9-5f9z7 1/1 Running 0 3h47m kubesphere-installer-6j49s 0/1 Completed 0 3h20m openldap-78df9f7b47-wvs5n 1/1 Running 0 3h48m redis-99f5985b8-2d62q 1/1 Running 0 3h48m $ kubectl -n kubesphere-system get job NAME COMPLETIONS DURATION AGE kubesphere-installer 1/1 2m9s 3h20m
如果上面用于安裝的 Job 是完成狀態(tài)的話,證明 KubeSphere 已經(jīng)安裝成功了。
可以創(chuàng)建一個(gè) IngressRoute 對(duì)象來(lái)訪問(wèn) KubeSphere:
將域名信息加入本地電腦的 hosts 中,就可以在瀏覽器中訪問(wèn) KubeSphere 的 Dashboard 了。
默認(rèn)的集群管理員賬號(hào)為:
用戶名:admin
密碼:P@88w0rd
感謝各位的閱讀,以上就是“KubeSphere怎么安裝”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)KubeSphere怎么安裝這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
新聞名稱:KubeSphere怎么安裝
網(wǎng)頁(yè)鏈接:http://www.rwnh.cn/article0/ghchoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開(kāi)發(fā)、電子商務(wù)、動(dòng)態(tài)網(wǎng)站、關(guān)鍵詞優(yōu)化、虛擬主機(jī)、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)