摘要:集群三步安裝構建生產環境可用的高可用集群項目地址特性支持任意節點的集群自動構建,且集群使用安全證書,通過方式啟動,這樣可以通過監控來監控集群健康狀態支持多節點,允許任意一臺宕機集群功能不受影響使用集群,配置安全證書,網絡管控數據無單點故障包
kubernetes集群三步安裝 構建生產環境可用的高可用kubernetes集群 | sealos項目地址 特性
[x] 支持任意節點的etcd集群自動構建,且etcd集群使用安全證書,通過static pod方式啟動,這樣可以通過監控pod來監控etcd集群健康狀態
[x] 支持多master節點,允許任意一臺master宕機集群功能不受影響
[x] calico使用etcd集群,配置安全證書,網絡管控數據無單點故障
[x] 包含dashboard, heapster coreDNS addons, coreDNS雙副本,無單點故障
[x] 使用haproxy負載master節點,同樣是用static pod,這樣可通過統一監控pod狀態來監控haproxy是否健康
[x] haproxy節點使用keepalived提供虛擬IP,任意一個節點宕機虛擬IP可實現漂移,不影響node連接master
[x] node節點與kube-proxy配置使用虛擬IP
[ ] 集群健康檢測功能
[ ] promethus 監控功能,一鍵安裝,無需配置
[ ] EFK 日志收集功能
[ ] 分布式HA模式,不用keepalived,減少集群構建出錯概率,無VIP切換時間
[x] istio 微服務支持
ship on docker 你必須已經有了sealyun kubernetes離線安裝包 (默認支持kubernetes版本v1.12.x,針對特殊版本的適配會切分支處理)針對后續高版本會有更多優化
大概原理是為了減少大家搭建ansible和sealos的環境,客戶端的東西都放到docker里,把安裝包掛載到容器中,然后ansible腳本會把包分發到你在hosts文件中配置的所有服務器上
所以大概分成三步:
配置免密鑰,把docker里的公鑰分發給你所有的服務器
配置ansible playbook的hosts文件
執行ansible
下面逐一說明:
啟動ansible容器與免密鑰設置找臺宿主機如你的PC,或者一臺服務器,把下載好的離線包拷貝到/data目錄,啟動sealos容器,把離線包掛載進去:
docker run --rm -v /data/kube1.12.0.tar.gz:/data/kube1.12.0.tar.gz -it -w /etc/ansible fanux/sealos:v1.12.0-beta bash
在容器里面執行:
mkdir ~/.ssh cd ~/.ssh ssh-keygen -t rsa
ssh public key:
cat ~/.ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC7fTirP9zPcx7wIjhsF+Dyu0A2sV5llC8jsmp/xtiyuJirE3mclpNEqgrzHC26f+ckfzwoE0HPU0wDPxbWFl3B0K89EwJSBsVZSZ0VLYnZp0u2JgwCLZzZzKfY0018yoqoL9KHz/68RpqtG2bWVf0/WSj+4hN7xTRpRTtXJHBOQRQBfqVSIcfMBSEnO15buUbDaLol/HvQd0YBrWwafQtMacmBlqDG0Z6/yeY4sTNRVRV2Uu5TeaHfzgYgmY9+NxtvPn8Td6tgZtq7cVU//kSsbzkUzDSD8zsh8kPUm4yljT5tYM1cPFLGM4m/zqAjAZN2YaEdFckJFAQ7TWAK857d root@8682294b9464
這樣公鑰就生成了
在其它所有要安裝k8s的服務器上執行:cd ~/.ssh echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC7fTirP9zPcx7wIjhsF+Dyu0A2sV5llC8jsmp/xtiyuJirE3mclpNEqgrzHC26f+ckfzwoE0HPU0wDPxbWFl3B0K89EwJSBsVZSZ0VLYnZp0u2JgwCLZzZzKfY0018yoqoL9KHz/68RpqtG2bWVf0/WSj+4hN7xTRpRTtXJHBOQRQBfqVSIcfMBSEnO15buUbDaLol/HvQd0YBrWwafQtMacmBlqDG0Z6/yeY4sTNRVRV2Uu5TeaHfzgYgmY9+NxtvPn8Td6tgZtq7cVU//kSsbzkUzDSD8zsh8kPUm4yljT5tYM1cPFLGM4m/zqAjAZN2YaEdFckJFAQ7TWAK857d root@8682294b9464" >> authorized_keys
這樣公鑰分發工作完成了,所有的機器直接ssh無需輸入密碼即可登錄
修改配置Config your own hosts
# cd /etc/ansible # vim hosts
配置說明:
[k8s-master] 10.1.86.204 name=node01 order=1 role=master lb=MASTER lbname=lbmaster priority=100 10.1.86.205 name=node02 order=2 role=master lb=BACKUP lbname=lbbackup priority=80 10.1.86.206 name=node03 order=3 role=master [k8s-node] 10.1.86.207 name=node04 role=node [k8s-all:children] k8s-master k8s-node [all:vars] vip=10.1.86.209 # 同網段未被占用IP k8s_version=1.12.0 # kubernetes版本 ip_interface=eth.* etcd_crts=["ca-key.pem","ca.pem","client-key.pem","client.pem","member1-key.pem","member1.pem","server-key.pem","server.pem","ca.csr","client.csr","member1.csr","server.csr"] k8s_crts=["apiserver.crt","apiserver-kubelet-client.crt","ca.crt", "front-proxy-ca.key","front-proxy-client.key","sa.pub", "apiserver.key","apiserver-kubelet-client.key", "ca.key", "front-proxy-ca.crt", "front-proxy-client.crt" , "sa.key"]
注意role=master的會裝etcd與kubernetes控制節點,role=node即k8s node節點,配置比較簡單,除了改IP和版本,其它基本不用動
啟動安裝# ansible-playbook roles/install-all.yamluninstall all
# ansible-playbook roles/uninstall-all.yaml
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27507.html
摘要:由于,容器任務被簡化,包括部署操作水平自動伸縮滾動更新金絲雀部署和管理監視資源應用健康檢查調試應用等。支持和培訓當企業準備應用容器化戰略時,管理平臺提供商是否向企業保證的支持以及培訓在所有可用的選擇中,只有少數的一些公司,如支持了這些選項。 作為時下最火熱的熱點詞匯:Kubernetes,其擁有成熟的社區,大公司的背景等等獲得了大部分人的認可,很多公司都在準備啟用Kubernetes,...
摘要:才云科技云開源高級工程師唐繼元受邀社群,在線分享高級實踐,介紹如何構建環境。除命令外的停止都是異常停止。 才云科技云開源高級工程師唐繼元受邀DBAplus社群,在線分享《Kubernetes Master High Availability 高級實踐》,介紹如何構建Kubernetes Master High Availability環境。 以下是分享實錄: 大家好,我是才云科技的唐繼...
摘要:所以,選擇把運行直接運行在宿主機中,使用容器部署其他組件。獨立部署方式所需機器資源多按照集群的奇數原則,這種拓撲的集群關控制平面最少就要臺宿主機了。 在上篇文章minikube部署中,有提到Minikube部署Kubernetes的核心就是Kubeadm,這篇文章來詳細說明下Kubeadm原理及部署步驟。寫這篇文章的時候,Kubernetes1.14剛剛發布,所以部署步驟以1.14版為...
摘要:所以,選擇把運行直接運行在宿主機中,使用容器部署其他組件。獨立部署方式所需機器資源多按照集群的奇數原則,這種拓撲的集群關控制平面最少就要臺宿主機了。 在上篇文章minikube部署中,有提到Minikube部署Kubernetes的核心就是Kubeadm,這篇文章來詳細說明下Kubeadm原理及部署步驟。寫這篇文章的時候,Kubernetes1.14剛剛發布,所以部署步驟以1.14版為...
摘要:前言本文給大家分享的題目是基于微服務以及的高可用架構探索與實現。比如說年大地震的時候我正好在東京,當時在做一個金融系統的相關工作。那次大地震導致很多很多的問題,雖然大地震不是在東京發生,但是還是給我們的系統造成了影響。 前言 本文給大家分享的題目是《基于DevOps、微服務以及K8S的高可用架構探索與實現》。整個企業的高可用架構面臨很多的挑戰,面向微服務、容器化以及敏態交付,是我們現在...
閱讀 865·2021-11-15 11:37
閱讀 3604·2021-11-11 16:55
閱讀 3270·2021-11-11 11:01
閱讀 998·2019-08-30 15:43
閱讀 2743·2019-08-30 14:12
閱讀 681·2019-08-30 12:58
閱讀 3389·2019-08-29 15:19
閱讀 2025·2019-08-29 13:59