【Kubernetes】-------------Rancher开源平台 超详细解读
Rancher 是一个开源的企业级多集群 Kubernetes 管理平台,实现了 Kubernetes 集群在混合云+本地数据中心的集中部署与管理,以确保集群的安全性,加速企业数字化转型。超过 40000 家企业每天使用 Rancher 快速创新。官网:https://docs.rancher.cn/
目录
一、Rancher 简介
1.1Rancher 定义
Rancher 是一个开源的企业级多集群 Kubernetes 管理平台,实现了 Kubernetes 集群在混合云+本地数据中心的集中部署与管理, 以确保集群的安全性,加速企业数字化转型。超过 40000 家企业每天使用 Rancher 快速创新。
官网:https://docs.rancher.cn/
1.2Rancher 和 k8s 的区别
Rancher 和 k8s 都是用来作为容器的调度与编排系统。
但是 rancher 不仅能够管理应用容器,更重要的一点是能够管理 k8s 集群。 Rancher2.x 底层基于 k8s 调度引擎,通过 Rancher 的封装,用户可以在不熟悉 k8s 概念的情况下轻松的通过 Rancher 来部署容器到k8s集群当中。
Kubernetes
-
Kubernetes 是一个开源的容器编排平台,它提供了自动化的容器部署、扩展和管理功能。
-
它主要用于创建、运行和管理容器化应用程序,并确保它们在预定义的状态下运行。
Rancher
- Rancher 是建立在 Kubernetes 之上的管理平台,它提供了一个用户友好的界面,使得 Kubernetes 更易于使用和理解。
- Rancher 通过抽象 Kubernetes 的复杂性,允许用户在不了解 Kubernetes 概念的情况下部署和管理容器化应用程序。
- 它支持多集群管理,使得用户可以在一个集中的位置管理多个 Kubernetes 集群,无论它们位于何处。
1.3Rancher 的关键特性
- 多集群管理:支持在一个界面中管理多个 Kubernetes 集群,无论它们是在本地、云中还是混合环境中。
- 应用目录:提供了一个应用目录,用户可以从中选择并部署预配置的应用程序到 Kubernetes 集群。
- CI/CD 集成:支持与流行的持续集成和持续部署工具集成,如 Jenkins、GitLab CI/CD 等。
- 安全性:提供了企业级的安全特性,包括 RBAC、网络策略、Pod 安全策略等。
- 用户友好的界面:提供了一个直观的 Web UI,使得 Kubernetes 的管理变得更加简单和直观。
- 自动化:支持自动化的集群部署和升级,简化了 Kubernetes 集群的生命周期管理。
- 监控和日志:集成了监控和日志工具,提供了对集群性能和应用程序状态的实时视图。
- 支持多种运行环境:支持在多种环境中运行 Kubernetes,包括公有云、私有云、边缘计算和混合云环境。
通过使用 Rancher,企业可以更快速、更安全地采用 Kubernetes 技术,同时降低了 Kubernetes 的学习曲线和管理复杂性。Rancher 通过提供额外的工具和服务,增强了 Kubernetes 的功能,使其更适合企业级应用。
二、Rancher 安装及配置
2.1环境准备
服务器名称 | IP地址 |
---|---|
控制节点(Master01) | 192.168.246.10 |
工作节点(Node01) | 192.168.246.11 |
工作节点(Node02) | 192.168.246.12 |
Rancher节点 | 192.168.246.9 |
2.2安装 rancher
#在 master01 节点下载 rancher-agent 镜像
docker pull rancher/rancher-agent:v2.5.7
#在 rancher 节点下载 rancher 镜像
docker pull rancher/rancher:v2.5.7
docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged --name rancher rancher/rancher:v2.5.7
#--restart=unless-stopped 表示在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器
#如果此处报错,可以先看哪些占了80端口,kill它,但是生产要注意,也可以修改端口
docker ps -a|grep rancher
可以看看有没有nginx或httpd占用80端口
2.3登录 Rancher 平台
需要先等一会儿,再浏览器访问 http://192.168.246.9 由于未使用授信证书,会有报警,忽略即可
登录后如是英文页面,可点击右下角语言选项选择中文
浏览器访问 http://192.168.246.9
初次登入要修改密码,此处我们修改密码为admin123123
2.4Rancher 管理已存在的 k8s 集群
导入 Kubernetes 集群到 Rancher
添加集群
- 选择【添加集群】,点击【导入】
- 【集群名称】设置为 k8s-cluster,点击【创建】
- 选择复制第三条命令绕过证书检查导入 k8s 集群
设置集群名称
- 将导入的集群命名为 k8s-cluster,然后点击【创建】
复制导入命令
- Rancher 会提供一个命令,用于绕过证书检查并将 Kubernetes 集群导入到 Rancher。
执行导入命令
- 在 Kubernetes 控制节点 master01 上,执行 Rancher 提供的 curl 命令。
- 如果第一次执行时出现错误,再次执行该命令通常可以解决问题。
在 k8s 控制节点 master01 上执行刚才复制的命令,如第一次执行报错,再执行一次即可
curl --insecure -sfL https://192.168.246.9/v3/import/6rqlf4mm6r2kcqmmckc2glmvnd6rlmrwk4phcjr5vkfdsbb85pzmhw_c-f7l8g.yaml | kubectl apply -f -
验证Kubernetes集群状态
kubectl get ns
#查看 Kubernetes 集群中的所有命名空间及其状态
kubectl get pods -n cattle-system -o wide
#命令查看 cattle-system 命名空间中运行的 Pod,包括 cattle-cluster-agent
kubectl get pods -n fleet-system -o wide
#查看 fleet-system 命名空间中运行的 Pod,包括 fleet-agent
2.5Rancher 部署监控系统
- 点击【启用监控以查看实时监控】
- 【监控组件版本】选择 0.2.1,其他的默认即可
- 点击【启用监控】,启动监控时间可能比较长,需要等待10分钟左右
2.6使用 Rancher 仪表盘管理 k8s 集群
2.6.1以创建 nginx 服务为例
- 点击【仪表盘】进入 k8s 集群仪表盘界面
2.6.2创建名称空间 namespace
- 点击左侧菜单【Namespaces】,再点击右侧【Create】
- 【Name】输入 dev,【Description】选填可自定义
- 点击右下角【Create】
2.6.3创建 Deployment 资源
- 点击左侧菜单【Deployments】,再点击右侧【Create】
- 【Namespace】下拉选择 dev,【Name】输入 nginx-dev,【Replicas】输入 3
- 点击中间选项【Container】,【Container Image】输入 nginx:1.14,【Pull Policy】选择 IfNotPresent
- 在【Pod Labels】下点击【Add Lable】,【Key】输入 app,【Value】输入 nginx
- 点击中间选项【Labels and Annotations】,点击【Add Label】,【Key】输入 app,【Value】输入 nginx
- 点击右下角【Create】
在这里创建好了之后,直接去xhell命行查看,创建成功,不需要命令创建了哦
2.6.4创建 service
- 点击左侧菜单【Services】,再点击右侧【Create】
- 点击【Node Port】
- 【Namespace】下拉选择 dev,【Name】输入 nginx-dev
- 【Port Name】输入 nginx,【Listening Port】输入 80,【Target Port】输入 80,【Node Port】输入 30180
- 点击中间选项【Selectors】,【Key】输入 app,【Value】输入 nginx
- 点击右下角【Create】
- 点击【nginx-dev】查看 service 是否已关联上 Pod
2.6.5访问页面
- 点击 service 资源的节点端口 30001/TCP,可以访问内部的 nginx 页面了
更多推荐
所有评论(0)