基於rancher部署k8s及使用


 

K8s概述

k8s全稱kubernetes,這個名字大家應該都不陌生,k8s是為容器服務而生的一個可移植容器的編排管理工具,越來越多的公司正在擁抱k8s,並且當前k8s已經主導了雲業務流程,推動了微服務架構等熱門技術的普及和落地,正在如火如荼的發展。
那么,K8S實現了什么?
從架構設計層面,我們關注的可用性,伸縮性都可以結合k8s得到很好的解決,如果你想使用微服務架構,搭配k8s,真的是完美,再從部署運維層面,服務部署,服務監控,應用擴容和故障處理,k8s都提供了很好的解決方案。
具體來說,主要包括以下幾點:
 服務發現與調度
 負載均衡
 服務自愈
 服務彈性擴容
 橫向擴容
 存儲卷掛載
總而言之,k8s可以使我們應用的部署和運維更加方便。

二、 K8s的集群架構

 主節點,承載 k8s 的控制和管理整個集群系統的控制面板
 工作節點,運行用戶實際的應用
在這里插入圖片描述

三、 使用Rancher部署k8s

Rancher是業界唯一完全開源的企業級容器管理平台,為企業用戶提供在生產環境中落地使用容器所需的一切功能與組件。
Rancher2.0基於Kubernetes構建,使用Rancher,DevOps團隊可以輕松測試、部署和管理應用程序,運維團隊可以部署、管理和維護一切Kubernetes集群,無論集群運行在何基礎設施之上。

安裝docker指定版本

# curl http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker.repo# yum makecache fast# yum install -y docker-ce
  • 1
  • 2
  • 3
  • 4

系統准備

# systemctl stop firewalld && systemctl disable firewalld# sed -i 's/enforcing/disabled/g' /etc/selinux/config; setenforce 0# systemctl start docker && systemctl enable docker
  • 1
  • 2
  • 3

安裝rancher

# docker run -d --privileged --name rancher -v /home/volume/rancher:/var/lib/rancher --restart=unless-stopped -p 70:80 -p 442:443 rancher/rancher:v2.4.8
  • 1

瀏覽器訪問

設定好密碼之后登錄
在這里插入圖片描述

K8S集群部署

登錄進來之后,點擊添加集群,選擇添加主機自建kubernetes集群:
在這里插入圖片描述
選擇集群選項:
在這里插入圖片描述
點擊下一步之后,勾選集群角色,這里我就在一台機器上部署集群,所以全部勾選:
在這里插入圖片描述
復制下方命令,在集群對應角色的機器上執行。
執行完之后,頁面會出現注冊成功的提示:
在這里插入圖片描述
此時集群正處於准備狀態中等待一段時間集群自動搭建完成:
在這里插入圖片描述
等待一段時間集群自動搭建完成,顯示為active狀態集群就搭建完成:
在這里插入圖片描述
查看集群狀態:
在這里插入圖片描述
點擊執行kubectl命令行:
在這里插入圖片描述
在這里插入圖片描述
查看集群主機:
在這里插入圖片描述
角色配置一目了然
查看項目及命名空間:
在這里插入圖片描述

部署應用

部署NFS

打開應用商店並點啟動:
在這里插入圖片描述
啟動nfs-provisioner
在這里插入圖片描述
在這里插入圖片描述
啟動完成后,應用列表中顯示Active
在這里插入圖片描述

部署其他應用:

打開部署服務
在這里插入圖片描述
在這里插入圖片描述
添加數據卷,選前面安裝的NFS服務並配置容量及容器與主機的映射路徑:
在這里插入圖片描述
在這里插入圖片描述
填好相關參數之后,點擊啟動:
在這里插入圖片描述
可以看到,nginx服務已經正常運行,點擊 Pod副本數,可以看到下面運行的nginx pod數立馬增加1,這就實現了動態伸縮。
打開命令行,新增一個網頁,之前容器掛載目錄是/usr/share/nginx/html,新增一個網頁,再次刷新頁面,就可看到新頁面了:
在這里插入圖片描述

jenkins 調用Rancher2.x api實現CI/CD

Rancher提供了api給我們調用,從而實現不用通過訪問Rancher UI 或使用 Rancher CLI 來對應用服務進行例如啟動,停止,創建,升級等一系列的操作;

Rancher創建api key

點擊用戶右上角–>API & Keys
在這里插入圖片描述
添加key
在這里插入圖片描述
輸入描述,選擇永不過期,這里不指定作用范圍。
請根據實際情況來原則
在這里插入圖片描述
創建成功后,一定要保存。它只會顯示一次
在這里插入圖片描述
我只需要用到2個:

Access Key(用戶名):token-v82g7Secret Key(密碼):zzph8mnrv7r2q5qqt9kds85xvjcwzpg5btkttpvj72nmfll8jmxn67
  • 1
  • 2
  • 3
  • 4

Jekins安裝Rancher插件

在jekins安裝插件:Redeploy Rancher2.x Workload Plugin
在這里插入圖片描述
添加rancher的憑據
在這里插入圖片描述
查看rancher的API接口
在這里插入圖片描述
查看redeploy的地址,復制紅框的URL地址
在這里插入圖片描述

Jekins配置rancher

在工作中引入rancher的插件:
在這里插入圖片描述
配置工作負載API的地址,就是粘貼rancher中復制的API地址
在這里插入圖片描述

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM