57 Rancher管理平台

文章目录

前言

本文档详细介绍了Rancher平台的安装、配置及Kubernetes集群管理流程,涵盖核心概念、部署步骤和操作实践。标题大纲如下:

  1. Rancher简介
  2. Rancher和k8s的区别
  3. Rancher安装及配置

理论部分

1_Rancher简介

  • Rancher是一个开源的企业级多集群Kubernetes管理平台,用于实现Kubernetes集群在混合云和本地数据中心的集中部署与管理。
  • 在需要同时管理多个Kubernetes集群(如跨公有云、私有云环境)并确保安全合规的企业场景中,Rancher提供了统一管理能力。
    其他类似产品:
  • kubebox
  • KubeSphere

2_Rancher和k8s的区别

  • Rancher和k8s都是容器调度与编排系统,但Rancher不仅能管理应用容器,更能直接管理k8s集群。
  • 当用户不熟悉k8s底层概念时,Rancher通过封装k8s API提供可视化界面,使容器部署操作更简单高效。

实验部分

主机名 IP地址 用途
k8s-master01 192.168.100.13 Kubernetes控制节点
k8s-node01 192.168.100.14 Kubernetes工作节点
k8s-node02 192.168.100.15 Kubernetes工作节点
rancher 192.168.100.16 Rancher管理平台节点

1_安装rancher

1.1_下载镜像及启动

k8s-master01

①_下载rancher-agent镜像
shell 复制代码
docker pull rancher/rancher-agent:v2.5.7

docker pull:拉取Docker镜像的命令
rancher/rancher-agent:v2.5.7:Rancher代理组件镜像及其版本

rancher

②_下载rancher主镜像
shell 复制代码
docker pull rancher/rancher:v2.5.7

docker pull:拉取Docker镜像的命令
rancher/rancher:v2.5.7:Rancher管理平台主镜像及其版本

③_启动Rancher容器
shell 复制代码
docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged --name rancher rancher/rancher:v2.5.7

docker run:创建并启动Docker容器
-d:后台运行容器
--restart=unless-stopped:容器退出时自动重启(Docker守护进程启动时已停止的容器除外)
-p 80:80 -p 443:443:将宿主机80/443端口映射到容器80/443端口
--privileged:授予容器扩展权限
--name rancher:指定容器名称为rancher
rancher/rancher:v2.5.7:使用的镜像名称

④_验证容器状态
shell 复制代码
docker ps -a | grep rancher

docker ps -a:列出所有容器(包括非运行状态)
grep rancher:过滤包含"rancher"的关键字
输出示例:
1326da432b17 rancher/rancher:v2.5.7 "entrypoint.sh" 13 seconds ago Up 13 seconds 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp rancher

2_登录Rancher平台

①_访问管理界面

在浏览器中访问 http://192.168.100.16

由于使用自签名证书,浏览器会显示安全警告,需忽略警告继续访问

②_切换语言

登录后点击右下角语言选项选择中文

可根据用户需求切换界面语言

3_Rancher管理已存在的k8s集群

3.1_集群导入流程

①_创建集群配置

在Rancher界面选择【添加集群】→【导入】,设置【集群名称】为 k8s-cluster,点击【创建】

导入现有Kubernetes集群到Rancher管理平台

②_复制证书绕过命令

选择复制第三条命令(绕过证书检查的导入命令)

用于处理非授信证书环境的集群注册

3.2_执行导入操作

k8s-master01

③_应用集群配置
shell 复制代码
curl --insecure -sfL https://192.168.100.16/v3/import/ltlhl7vggnwz8knbjncgbxqlrf6krpbfbxtzh4qlpnqxrq5559k6gf_c-jf5bx.yaml | kubectl apply -f -

curl:网络数据传输工具
--insecure:跳过SSL证书验证
-sfL:静默失败、跟随重定向
https://192.168.100.16/v3/import/...:Rancher生成的集群注册URL
| kubectl apply -f -:将输出传给kubectl应用YAML配置

如首次执行报错需重新执行

④_检查命名空间
shell 复制代码
kubectl get ns

kubectl get ns:查看所有Kubernetes命名空间
输出示例:

复制代码
NAME              STATUS   AGE
cattle-system     Active   3m24s
default           Active   27d
fleet-system      Active   2m14s
kube-node-lease   Active   27d
kube-public       Active   27d
kube-system       Active   27d
⑤_验证核心Pod
shell 复制代码
kubectl get pods -n cattle-system -o wide

-n cattle-system:指定命名空间
-o wide:显示详细信息
输出示例:

复制代码
NAME                                    READY   STATUS    RESTARTS   AGE   IP           NODE
cattle-cluster-agent-78647b4ff8-fbqdp   1/1     Running   0          2m1s  10.244.1.4   k8s-node01
shell 复制代码
kubectl get pods -n fleet-system -o wide

-n fleet-system:指定命名空间
输出示例:

复制代码
NAME                           READY   STATUS    RESTARTS   AGE   IP           NODE
fleet-agent-55bfc495bd-m9qjt   1/1     Running   0          6m8s  10.244.1.3   k8s-node01

4_Rancher部署监控系统

① 启用监控组件

点击【启用监控以查看实时监控】,选择【监控组件版本】0.2.1,其他保持默认,点击【启用监控】

0.2.1版本监控组件提供集群实时监控能力

② 等待系统就绪

监控系统启动需要约10分钟

监控组件初始化过程较长,需耐心等待

5_使用Rancher仪表盘管理k8s集群

5.1_创建资源空间

① 创建dev命名空间

点击【Namespaces】→【Create】,输入【Name】dev,点击【Create】

创建隔离的应用部署空间

5.2_部署应用服务

② 创建nginx-dev Deployment

点击【Deployments】→【Create】:

  • 【Namespace】选择dev
  • 【Name】输入nginx-dev
  • 【Replicas】输入3
  • 【Container Image】输入nginx:1.14,【Pull Policy】选择IfNotPresent
  • 【Pod Labels】添加【Key】app、【Value】nginx
  • 【Labels and Annotations】添加【Key】app、【Value】nginx
  • 点击【Create】

部署3个副本的Nginx服务,使用指定容器镜像

5.3_暴露服务端口

③ 创建NodePort服务

点击【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】

通过NodePort类型将服务暴露到节点30180端口(30000-32767范围)

④ 验证服务关联

点击刚创建的【nginx-dev】查看Pod关联状态

确认Service成功绑定Deployment的Pod

⑤ 访问服务

点击Service资源的【30180/TCP】端口链接

可直接访问集群内部的Nginx服务页面

结语

Rancher平台 :企业级Kubernetes集群管理工具,实现多环境集中管控。
集群导入 :必须通过--insecure参数绕过证书验证执行导入命令。
节点端口:NodePort类型需指定30000-32767范围内的端口号(如30180)。

!question\] 请问Rancher的核心价值是什么? 提供混合云环境下多Kubernetes集群的统一管理能力,降低容器平台运维复杂度 \[!question\] 请问导入k8s集群时为什么需要--insecure参数? 因Rancher默认使用自签名证书,必须跳过客户端证书验证才能正常注册集群 \[!question\] 请问NodePort服务的端口范围限制是什么? Kubernetes规定的NodePort端口范围是30000-32767

相关推荐
新钛云服17 小时前
Grafana Polystat面板与腾讯云可观测平台的深度融合实践
大数据·云计算·腾讯云·grafana
忍冬行者18 小时前
k8s的etcd的一键备份和故障恢复
docker·云原生·容器·kubernetes·云计算
戴西软件19 小时前
戴西发布 DLM许可证加密防护软件V4.2让工业软件授权迈入并发调度与精细治理时代
运维·服务器·网络·数据库·人工智能·安全·云计算
HehuaTang1 天前
K8s labels 与 annotations 区别
k8s
咕噜企业分发小米2 天前
阿里云AI教育产品如何助力企业提升客户转化率?
人工智能·阿里云·云计算
冷存储观察2 天前
Gigaom雷达报告反映的非结构化数据管理技术应用趋势
大数据·人工智能·云计算·数据安全·企业数据管理·数据基础设施
weisian1512 天前
入门篇--知名企业-20-阿里巴巴-8--阿里云PAI:AI开发的“全自动装配线”
人工智能·阿里云·云计算·pai
chao_6666662 天前
【MCP】Claude Code for VS Code 配置阿里云 MCP 工具教程
阿里云·云计算·claude·mcp
未来之窗软件服务2 天前
服务器运维(二十二) 服务器安全探针封装—东方仙盟练气期
运维·云计算·仙盟创梦ide·东方仙盟·服务器探针