Rancher—多集群Kubernetes管理平台

目录

  • [一、Rancher 简介](#一、Rancher 简介)
    • [1.1 Rancher 和 k8s 的区别](#1.1 Rancher 和 k8s 的区别)
  • [二、Rancher 安装及配置](#二、Rancher 安装及配置)
    • [2.1 安装 rancher](#2.1 安装 rancher)
    • [2.2 登录 Rancher 平台](#2.2 登录 Rancher 平台)
    • [2.3 Rancher 管理已存在的 k8s 集群](#2.3 Rancher 管理已存在的 k8s 集群)
    • [2.4 创建名称空间 namespace](#2.4 创建名称空间 namespace)
    • [2.5 创建 Deployment 资源](#2.5 创建 Deployment 资源)
    • [2.6 创建 service](#2.6 创建 service)
    • [2.7 Rancher 部署监控系统](#2.7 Rancher 部署监控系统)

一、Rancher 简介

Rancher 是一个开源的企业级多集群 Kubernetes 管理平台,实现了 Kubernetes 集群在混合云+本地数据中心的集中部署与管理, 以确保集群的安全性,加速企业数字化转型。超过 40000 家企业每天使用 Rancher 快速创新。

官网:https://docs.rancher.cn/

1.1 Rancher 和 k8s 的区别

Rancher 和 k8s 都是用来作为容器的调度与编排系统。但是 rancher 不仅能够管理应用容器,更重要的一点是能够管理 k8s 集群。 Rancher2.x 底层基于 k8s 调度引擎,通过 Rancher 的封装,用户可以在不熟悉 k8s 概念的情况下轻松的通过 Rancher 来部署容器到k8s集群当中。

二、Rancher 安装及配置

bash 复制代码
//实验环境
控制节点/master01		192.168.154.10
工作节点/node01			192.168.154.11
工作节点/node02			192.168.154.12
Rancher节点/rancher	    192.168.154.13

2.1 安装 rancher

bash 复制代码
#在 所有 node 节点下载 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守护进程启动时就已经停止了的容器

docker ps -a|grep rancher

2.2 登录 Rancher 平台

需要先等一会儿,再浏览器访问 http://192.168.154.13 ,由于未使用授信证书,会有报警,忽略即可

登录后如是英文页面,可点击右下角语言选项选择中文


2.3 Rancher 管理已存在的 k8s 集群

选择【添加集群】,点击【导入】

【集群名称】设置为 k8s-cluster,点击【创建】

选择复制第三条命令绕过证书检查导入 k8s 集群




bash 复制代码
//在 k8s 控制节点 master01 上执行刚才复制的命令,如第一次执行报错,再执行一次即可
curl --insecure -sfL https://192.168.154.13/v3/import/tmz8vp49fth54hpr85nq5wtl5gdtgjwfphw8mtnfxq8rb9bgc7shnj_c-v744p.yaml | kubectl apply -f -

管理K8S集群资源

2.4 创建名称空间 namespace

点击左侧菜单【Namespaces】,再点击右侧【Create】

【Name】输入 test01,【Description】选填可自定义

点击右下角【Create】




2.5 创建 Deployment 资源

点击左侧菜单【Deployments】,再点击右侧【Create】

【Namespace】下拉选择 test01,【Name】输入 myapp-deploy,【Replicas】输入 3

点击中间选项【Container】,【Container Image】输入 soscscs/myapp:v1,【Pull Policy】选择 IfNotPresent

在【Pod Labels】下点击【Add Lable】,【Key】输入 app,【Value】输入 myapp

点击中间选项【Labels and Annotations】,点击【Add Label】,【Key】输入 app,【Value】输入 myapp

点击右下角【Create】



2.6 创建 service

点击左侧菜单【Services】,再点击右侧【Create】

点击【Node Port】

【Namespace】下拉选择 test01,【Name】输入 svc-myapp

【Port Name】输入 http,【Listening Port】输入 8080,【Target Port】输入 80,【Node Port】输入 30888

点击中间选项【Selectors】,【Key】输入 app,【Value】输入 myapp

点击右下角【Create】

点击【svc-myapp】查看 service 是否已关联上 Pod






2.7 Rancher 部署监控系统

点击【启用监控以查看实时监控】

【监控组件版本】选择 0.2.1,其他的默认即可

点击【启用监控】,启动监控时间可能比较长,需要等待10分钟左右


相关推荐
Patrick_Wilson16 小时前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
阿里云云原生18 小时前
AI 开发新常态:当 Cursor、Claude、Codex 并行,如何统一管理散落的 Skill 资产?
云原生·ai编程
探索云原生1 天前
K8s 1.36 这个 GA 特性,把 initContainer 拉模型的 hack 干掉了
ai·云原生·kubernetes
云恒要逆袭1 天前
运行你的第一个Docker容器
后端·docker·容器
Java之美1 天前
从edge-trigger到level-trigger,谈谈 Kubernetes controller 的开发范式
云原生
阿里云云原生2 天前
深度解构:当 Append-only 的 SLS 遇上 Update/Delete,是如何实现设计权衡的?
云原生
Java之美2 天前
一次k8s升级引发的DevicePlugin注册失败
云原生·kubernetes
秋播2 天前
nerdctl推送rancher本地镜像到harbor
云原生
程序员老赵3 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程