一.Rancher 簡介
1.Rancher概念
Rancher 是一個開源的企業(yè)級多集群 Kubernetes 管理平臺,實現(xiàn)了 Kubernetes 集群在混合云+本地數(shù)據(jù)中心的集中部署與管理, 以確保集群的安全性,加速企業(yè)數(shù)字化轉(zhuǎn)型。超過 40000 家企業(yè)每天使用 Rancher 快速創(chuàng)新。
官網(wǎng):https://docs.rancher.cn/
2.Rancher 和 k8s 的區(qū)別
Rancher 和 k8s 都是用來作為容器的調(diào)度與編排系統(tǒng)。但是 rancher 不僅能夠管理應(yīng)用容器,更重要的一點是能夠管理 k8s 集群。
Rancher2.x 底層基于 k8s 調(diào)度引擎,通過 Rancher 的封裝,用戶可以在不熟悉 k8s 概念的情況下輕松的通過 Rancher 來部署容器到k8s集群當中。
二.Rancher 安裝及配置
實驗環(huán)境
節(jié)點 | 主機名 | IP地址 |
---|---|---|
控制節(jié)點 | master01 | 192.168.198.11 |
工作節(jié)點 | node01 | 192.168.198.12 |
工作節(jié)點 | node02 | 192.168.198.13 |
Rancher節(jié)點 | rancher | 192.168.198.14 |
1.安裝 rancher
#在 master01 節(jié)點下載 rancher-agent 鏡像
docker pull rancher/rancher-agent:v2.5.7
#在 rancher 節(jié)點下載 rancher 鏡像,rancher這臺機器需要有docker容器
docker pull rancher/rancher:v2.5.7
#在 rancher 節(jié)點
docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged --name rancher rancher/rancher:v2.5.7
#--restart=unless-stopped 表示在容器退出時總是重啟容器,但是不考慮在Docker守護進程啟動時就已經(jīng)停止了的容器
創(chuàng)建的時候出現(xiàn)以下:
docker run -d --restart=unless-stopped -p 80:80 -p 8443:443 --privileged --name rancher rancher/rancher:v2.5.7
6631fe2a0f913dde14b7b650738dab5ef85f34ee918e6341204f7fb4a8bc0471
docker: Error response from daemon: driver failed programming external connectivity on endpoint rancher (cedbda15ce8b48fc5e90c5ca2262958d5fb0dc731bad30bfdb430e505d9cd8c6): Bind for 0.0.0.0:80 failed: port is already allocated.是端口號被占用了,可以停止刪除之前的端口號或者換其他的端口即可,此處是將之前的端口號停止刪除
docker ps #查看存在容器并找到端口號
docker stop <container_id> #停止容器
docker rm <container_id> #刪除容器
此處使用停止容器
docker stop e531c7774eb8
docker ps #查看已經(jīng)沒有80端口及443端口的容器存在
再次創(chuàng)建即可
docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged --name rancher rancher/rancher:v2.5.7
docker ps -a|grep rancher
4ce02f66eed2 rancher/rancher:v2.5.7 "entrypoint.sh" 46 seconds ago Up 44 seconds 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp rancher
2.登錄 Rancher 平臺
需要先等一會兒,再瀏覽器訪問 https://192.168.198.14 ,由于未使用授信證書,會有報警,忽略即可
登錄后如是英文頁面,可點擊右下角語言選項選擇中文
如果等待刷新還不可以,輸入init 6重啟虛擬機再次訪問刷新
登入輸入密碼有兩種方式:
(1)自定義密碼
(2)隨機生成密碼,生成密碼后需復(fù)制隨機生成的密碼(kG1mk!@&Mgv9VE5X)
此處使用第二種
3.Rancher 管理已存在的 k8s 集群
選擇【添加集群】,點擊【導(dǎo)入】
【集群名稱】設(shè)置為 k8s-cluster,點擊【創(chuàng)建】
選擇復(fù)制第三條命令繞過證書檢查導(dǎo)入 k8s 集群
#在 k8s 控制節(jié)點 master01 上執(zhí)行剛才復(fù)制的命令,如第一次執(zhí)行報錯,再執(zhí)行一次即可
curl --insecure -sfL https://192.168.198.14/v3/import/d6mtqc4kwcv82jp925gpk28sgfpdsl8dbgjr6v8x9kz2wnr6klbh7k_c-lrcc4.yaml | kubectl apply -f -
kubectl get ns
kubectl get pods -n cattle-system -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
cattle-cluster-agent-cbf67657c-48hx4 1/1 Running 0 2m4s 10.244.0.5 master01 <none> <none>
kubectl get pods -n fleet-system -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
fleet-agent-55bfc495bd-zd864 1/1 Running 0 55s 10.244.1.79 node02 <none> <none>
點擊儀表盤可以查看集群的相關(guān)信息
4.Rancher 部署監(jiān)控系統(tǒng)
點擊【啟用監(jiān)控以查看實時監(jiān)控】
【監(jiān)控組件版本】選擇 0.2.1,其他的默認即可
點擊【啟用監(jiān)控】,啟動監(jiān)控時間可能比較長,需要等待10分鐘左右
5.使用 Rancher 儀表盤管理 k8s 集群
//以創(chuàng)建 nginx 服務(wù)為例
點擊【儀表盤】進入 k8s 集群儀表盤界面
#創(chuàng)建名稱空間 namespace
點擊左側(cè)菜單【Namespaces】,再點擊右側(cè)【Create】
【Name】輸入 rain-depl,【Description】選填可自定義
點擊右下角【Create】
#創(chuàng)建 Deployment 資源
點擊左側(cè)菜單【Deployments】,再點擊右側(cè)【Create】
【Namespace】下拉選擇 rain-depl,【Name】輸入 nginx-rain-depl,【Replicas】輸入 3
點擊中間選項【Container】,【Container Image】輸入 nginx:1.14,【Pull Policy】選擇 IfNotPresent
在【Pod Labels】下點擊【Add Lable】,【Key】輸入 app 【Value】輸入 nginx
點擊右下角【Create】
#創(chuàng)建 service
點擊左側(cè)菜單【Services】,再點擊右側(cè)【Create】
點擊【Node Port】
【Namespace】下拉選擇 rain-depl,【Name】輸入 nginx-rain-depl
【Port Name】輸入 nginx,【Listening Port】輸入 80,【Target Port】輸入 80,【Node Port】輸入 30180(30000以上)
點擊中間選項【Selectors】,【Key】輸入 app,【Value】輸入 nginx
點擊右下角【Create】
點擊【nginx-dev】查看 service 是否已關(guān)聯(lián)上 Pod
#點擊 service 資源的節(jié)點端口 30180/TCP,可以訪問內(nèi)部的 nginx 頁面了
三.拓展
1.Rancher和kubesphere相比較
(1)KubeSphere 和 Rancher 都是用于管理和操作 Kubernetes 集群的平臺,它們在概念和功能上有一些區(qū)別。以下是它們的區(qū)別概述:
①KubeSphere: KubeSphere 是一個開源的容器平臺,旨在提供全面的解決方案,用于部署、管理和運行容器化應(yīng)用程序。它提供了一個集成的界面和工具,使用戶能夠輕松地構(gòu)建、編排和監(jiān)控容器化應(yīng)用程序。
主要特點包括:
- 一站式平臺:KubeSphere 提供了從應(yīng)用程序開發(fā)、CI/CD、容器編排、多租戶管理、監(jiān)測告警、日志記錄等一系列功能,使用戶能夠在一個平臺上完成大部分任務(wù)。
- 多租戶管理:KubeSphere 支持多租戶模式,可以為不同的團隊或項目提供隔離的環(huán)境和權(quán)限管理。
- 安全和策略:KubeSphere 提供了安全審計、訪問控制、鏡像安全掃描等功能,幫助用戶保護容器環(huán)境的安全。
②Rancher: Rancher 是一個開源的容器管理平臺,旨在簡化 Kubernetes 的部署、管理和監(jiān)控。它提供了一個集中式管理界面,使用戶能夠輕松地配置和操作 Kubernetes 集群。
主要特點包括:
- 多集群管理:Rancher 支持在一個界面中管理多個 Kubernetes 集群,無論這些集群是部署在本地、云端還是邊緣節(jié)點上。
- 聲明式配置:Rancher 使用聲明式配置模型,允許用戶通過 YAML 文件定義基礎(chǔ)架構(gòu)和應(yīng)用程序的配置,并且能夠自動化應(yīng)用程序的部署和更新。
- 第三方集成:Rancher 提供了與各種第三方工具和服務(wù)的集成,包括監(jiān)控、日志記錄、認證等,幫助用戶將 Kubernetes 與其他系統(tǒng)集成在一起。
總結(jié): KubeSphere 和 Rancher 都是功能強大的容器管理平臺,但它們的定位和重點略有不同。KubeSphere 更加注重提供一站式的容器解決方案,包括開發(fā)、構(gòu)建、編排、監(jiān)測等各個環(huán)節(jié);而 Rancher 則專注于多集群管理和聲明式配置,使用戶能夠更方便地操作和管理 Kubernetes 集群。選擇哪個平臺取決于需求和偏好。
2.K3S和K8S相比較
K3s 和 Kubernetes (K8s) 都是用于容器編排和管理的工具,但有些區(qū)別:
(1)大小和復(fù)雜度:K3s 是一種輕量級的 Kubernetes 發(fā)行版,適用于資源受限的環(huán)境,它比 K8s 小得多,僅需要約 512MB 的 RAM 和 1 CPU 核心即可運行。K8s 是一個更復(fù)雜的系統(tǒng),需要更多的資源才能正常運行。
(2)安裝和配置:K3s 的安裝非常簡單,通常只需要運行一行命令即可完成。相比之下,K8s 的安裝過程較為復(fù)雜,需要一些額外的步驟和配置。
(3)擴展性:K8s 作為業(yè)界流行的容器編排系統(tǒng),擁有廣泛的擴展程序和插件,可以滿足各種不同的需求。而 K3s 雖然也支持擴展,但由于是要保持輕量級,可能不會提供所有功能。
(4)性能:由于 K3s 是一個輕量級的 Kubernetes 變體,因此在啟動時間和資源使用方面表現(xiàn)更好。也就是說,它適用于部署在資源有限的邊緣設(shè)備或 IoT 設(shè)備上。
(5)社區(qū)和支持:K8s 有一個龐大的社區(qū),并且由 CNCF 維護,可以獲得廣泛的支持和資源。而 K3s 的社區(qū)較小,但它仍然有一些活躍的貢獻者和用戶,可以獲得一定程度的支持。文章來源:http://www.zghlxwxcb.cn/news/detail-726179.html
總之,K3s 是一個更簡單、更輕量級的 Kubernetes 變體,適合部署在邊緣設(shè)備或 IoT 設(shè)備上。而 K8s 作為業(yè)界流行的容器編排系統(tǒng),支持更多的擴展和功能。選擇哪種方案取決于具體需求和資源限制。文章來源地址http://www.zghlxwxcb.cn/news/detail-726179.html
到了這里,關(guān)于K8S:Rancher管理 Kubernetes 集群的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!