K8S:Rancher管理 Kubernetes 集群
文章目录
- 一.Rancher 简介
- 1.Rancher概念
- 2.Rancher 和 k8s 的区别
- 二.Rancher 安装及配置
- 1.安装 rancher
- 2.登录 Rancher 平台
- 3.Rancher 管理已存在的 k8s 集群
- 4.Rancher 部署监控系统
- 5.使用 Rancher 仪表盘管理 k8s 集群
- 三.拓展
- 1.Rancher和kubesphere相比较
- 2.K3S和K8S相比较
一.Rancher 简介
1.Rancher概念
Rancher 是一个开源的企业级多集群 Kubernetes 管理平台,实现了 Kubernetes 集群在混合云+本地数据中心的集中部署与管理, 以确保集群的安全性,加速企业数字化转型。超过 40000 家企业每天使用 Rancher 快速创新。
官网:https://docs.rancher.cn/
2.Rancher 和 k8s 的区别
Rancher 和 k8s 都是用来作为容器的调度与编排系统。但是 rancher 不仅能够管理应用容器,更重要的一点是能够管理 k8s 集群。
Rancher2.x 底层基于 k8s 调度引擎,通过 Rancher 的封装,用户可以在不熟悉 k8s 概念的情况下轻松的通过 Rancher 来部署容器到k8s集群当中。
二.Rancher 安装及配置
实验环境
节点 | 主机名 | IP地址 |
---|---|---|
控制节点 | master01 | 192.168.198.11 |
工作节点 | node01 | 192.168.198.12 |
工作节点 | node02 | 192.168.198.13 |
Rancher节点 | rancher | 192.168.198.14 |
1.安装 rancher
#在 master01 节点下载 rancher-agent 镜像
docker pull rancher/rancher-agent:v2.5.7
#在 rancher 节点下载 rancher 镜像,rancher这台机器需要有docker容器
docker pull rancher/rancher:v2.5.7
#在 rancher 节点
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 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 #查看已经没有80端口及443端口的容器存在
再次创建即可
docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged --name rancher rancher/rancher:v2.5.7
docker ps -a|grep rancher4ce02f66eed2 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)随机生成密码,生成密码后需复制随机生成的密码(kG1mk!@&Mgv9VE5X)
此处使用第二种
3.Rancher 管理已存在的 k8s 集群
选择【添加集群】,点击【导入】
【集群名称】设置为 k8s-cluster,点击【创建】
选择复制第三条命令绕过证书检查导入 k8s 集群
#在 k8s 控制节点 master01 上执行刚才复制的命令,如第一次执行报错,再执行一次即可
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 wideNAME 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 wideNAME 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>
点击仪表盘可以查看集群的相关信息
4.Rancher 部署监控系统
点击【启用监控以查看实时监控】
【监控组件版本】选择 0.2.1,其他的默认即可
点击【启用监控】,启动监控时间可能比较长,需要等待10分钟左右
5.使用 Rancher 仪表盘管理 k8s 集群
//以创建 nginx 服务为例
点击【仪表盘】进入 k8s 集群仪表盘界面
#创建名称空间 namespace
点击左侧菜单【Namespaces】,再点击右侧【Create】
【Name】输入 rain-depl,【Description】选填可自定义
点击右下角【Create】
#创建 Deployment 资源
点击左侧菜单【Deployments】,再点击右侧【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】
#创建 service
点击左侧菜单【Services】,再点击右侧【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 是否已关联上 Pod#点击 service 资源的节点端口 30180/TCP,可以访问内部的 nginx 页面了
三.拓展
1.Rancher和kubesphere相比较
(1)KubeSphere 和 Rancher 都是用于管理和操作 Kubernetes 集群的平台,它们在概念和功能上有一些区别。以下是它们的区别概述:
①KubeSphere: KubeSphere 是一个开源的容器平台,旨在提供全面的解决方案,用于部署、管理和运行容器化应用程序。它提供了一个集成的界面和工具,使用户能够轻松地构建、编排和监控容器化应用程序。
主要特点包括:
- 一站式平台:KubeSphere 提供了从应用程序开发、CI/CD、容器编排、多租户管理、监测告警、日志记录等一系列功能,使用户能够在一个平台上完成大部分任务。
- 多租户管理:KubeSphere 支持多租户模式,可以为不同的团队或项目提供隔离的环境和权限管理。
- 安全和策略:KubeSphere 提供了安全审计、访问控制、镜像安全扫描等功能,帮助用户保护容器环境的安全。
②Rancher: Rancher 是一个开源的容器管理平台,旨在简化 Kubernetes 的部署、管理和监控。它提供了一个集中式管理界面,使用户能够轻松地配置和操作 Kubernetes 集群。
主要特点包括:
- 多集群管理:Rancher 支持在一个界面中管理多个 Kubernetes 集群,无论这些集群是部署在本地、云端还是边缘节点上。
- 声明式配置:Rancher 使用声明式配置模型,允许用户通过 YAML 文件定义基础架构和应用程序的配置,并且能够自动化应用程序的部署和更新。
- 第三方集成:Rancher 提供了与各种第三方工具和服务的集成,包括监控、日志记录、认证等,帮助用户将 Kubernetes 与其他系统集成在一起。
总结: KubeSphere 和 Rancher 都是功能强大的容器管理平台,但它们的定位和重点略有不同。KubeSphere 更加注重提供一站式的容器解决方案,包括开发、构建、编排、监测等各个环节;而 Rancher 则专注于多集群管理和声明式配置,使用户能够更方便地操作和管理 Kubernetes 集群。选择哪个平台取决于需求和偏好。
2.K3S和K8S相比较
K3s 和 Kubernetes (K8s) 都是用于容器编排和管理的工具,但有些区别:
(1)大小和复杂度:K3s 是一种轻量级的 Kubernetes 发行版,适用于资源受限的环境,它比 K8s 小得多,仅需要约 512MB 的 RAM 和 1 CPU 核心即可运行。K8s 是一个更复杂的系统,需要更多的资源才能正常运行。
(2)安装和配置:K3s 的安装非常简单,通常只需要运行一行命令即可完成。相比之下,K8s 的安装过程较为复杂,需要一些额外的步骤和配置。
(3)扩展性:K8s 作为业界流行的容器编排系统,拥有广泛的扩展程序和插件,可以满足各种不同的需求。而 K3s 虽然也支持扩展,但由于是要保持轻量级,可能不会提供所有功能。
(4)性能:由于 K3s 是一个轻量级的 Kubernetes 变体,因此在启动时间和资源使用方面表现更好。也就是说,它适用于部署在资源有限的边缘设备或 IoT 设备上。
(5)社区和支持:K8s 有一个庞大的社区,并且由 CNCF 维护,可以获得广泛的支持和资源。而 K3s 的社区较小,但它仍然有一些活跃的贡献者和用户,可以获得一定程度的支持。
总之,K3s 是一个更简单、更轻量级的 Kubernetes 变体,适合部署在边缘设备或 IoT 设备上。而 K8s 作为业界流行的容器编排系统,支持更多的扩展和功能。选择哪种方案取决于具体需求和资源限制。
相关文章:

K8S:Rancher管理 Kubernetes 集群
文章目录 一.Rancher 简介1.Rancher概念2.Rancher 和 k8s 的区别 二.Rancher 安装及配置1.安装 rancher2.登录 Rancher 平台3.Rancher 管理已存在的 k8s 集群4.Rancher 部署监控系统5.使用 Rancher 仪表盘管理 k8s 集群 三.拓展1.Rancher和kubesphere相比较2.K3S和K8S相比较 一…...
后台运行python程序并查看运行的python 进程
nohup python -u Job.py > log.log 2>&1 &说明: 末尾的“&”:表示后台运行程序 “nohup” :保证程序不被挂起 “python”:是执行python代码的命令 “-u”:表示不启用缓存,实时输出打印…...

树莓派部署.net core网站程序
1、发布你的项目 使用mobaxterm上传程序 回到mobaxterm,f进入目录输入: cd webpublish 运行程序:dotnet WebApplication1.dll 访问地址为:http://localhost:5000,尝访问如下: 已经出现 返回的json,证明是可以访问的…...

淘宝商品评论数据接口,淘宝商品评论API接口
淘宝商品评论数据接口可以通过淘宝开放平台API获取。 通过构建合理的请求URL,可以向淘宝服务器发起HTTP请求,获取商品评论数据。接口返回的数据一般为JSON格式,包含了商品的各种评价信息。获取到商品评论数据后,可以对其进行处理…...
455. 分发饼干
假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] …...
GEE:数据预处理的细节(处理顺序。比如, select() 和 filter() 要优先于 map())
作者:CSDN @ _养乐多_ 大家在数据预处理的时候,是不是随意进行处理,并没有考虑 Google Earth Engine(GEE)性能的问题?比如选择数据集的时候,先执行map函数,再按时间选择数据?不同的处理顺序会导致不同的计算成本。 因此,本文将探讨如何在 GEE 中筛选和选择数据集合…...
【AHK】任务栏调节音量/边缘滚动调节/边缘触发
通过ahk实现类似mouseinc的边缘滚动调节音量的功能,有两个思路。 任务栏调节音量 #If MouseIsOver("ahk_class Shell_TrayWnd") WheelUp::Send {Volume_Up} WheelDown::Send {Volume_Down} return #IfMouseIsOver(WinTitle) {MouseGetPos,,, Winreturn …...
Chrome插件 — ReRes
ReRes插件是一款可以帮助Web开发人员进行开发和测试的Chrome浏览器扩展。它可以模拟网页请求,并返回指定的响应。 该插件可以用于多种情况,例如: 测试网站功能,调试程序等;本地开发Web应用时,模拟远程API…...
前端面试基础面试题——9
1.js 延迟加载的方式有哪些? 2.js同步和异步的区别? 3.什么是浏览器的同源政策? 4.介绍一下 js 的节流与防抖? 5.js 中的深浅拷贝实现? 6.Js 动画与 CSS 动画区别及相应实现 7.观察者模式和发布订阅模式有什么不同…...

tomcat 问题
一、start up.bat 闪退 在命令窗口run 看看是缺少了哪个环境变量 二、控制台输出乱码 logging.properties 底部添加 java.util.logging.ConsoleHandler.encoding GBK 三、缓存不足 context.xml配置 <Resources cachingAllowed"false" cacheMaxSize"100…...

小程序首页如何进行装修设置
小程序首页是展示给用户的第一屏,它的装修直接影响到用户对小程序的第一印象。小程序首页的设置在小程序管理员后台->页面设置->首页,下图是小程序首页默认的设置。 下图,是小程序首页的具体表现形式。下面具体解释小程序首页各个设置项…...
npm安装依赖报错npm ERR! code ENOTFOUND npm ERR! errno ENOTFOUND、npm run dev报错记录
npm安装依赖报错npm ERR! code ENOTFOUND npm ERR! errno ENOTFOUND_得我所得,爱我所爱的博客-CSDN博客npm安装依赖报错今天在学习webpack的时候,在使用npm install来安装一个局部的webpack时候,报出一下错误:npm ERR! code ENOTFOUNDnpm ERR…...

堆叠注入([强网杯 2019]随便注1)
详解: 堆叠注入(Stack Injection)是一种计算机安全概念,涉及攻击者向程序的堆栈内存中插入恶意代码,以便在程序执行期间执行非预期的操作。 堆栈注入攻击通常利用程序在处理函数调用时使用的堆栈机制。当一个函数被调…...

零基础Linux_15(基础IO_文件)软硬链接+动静态库详解
目录 1. 软硬链接 1.1 创建软链接 1.2 创建硬链接 1.3 硬链接数和unlink 2. 动静态库 2.1 制作静态库 2.2 查看和打包静态库 2.3 使用静态库 2.3.1 安装在默认搜索路径 2.3.2 告知路径库路径库名 2.4 制作动态库 2.5 使用动态库 2.5.1 安装在默认搜索路径 2.5.2 …...

计算机毕业设计选什么题目好?springboot 健身房管理系统
✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…...
两台linux 之间传输文件 (详细+bash脚本)
两台linux设备文件直接传输,有很多应用场景 一、可能的方案 (一)先下载再上传 从linux通过ssh下载到windows下,然后再通过ssh上传到另一台linux。 1.优点:简单 2.缺点:效率低,需要额外的设备…...

嵌入式系统开发【深入浅出】 EXTI 与 NVIC
目录 CPU 感知外部事件变化的三种方式 中断分三个级别 中断控制器 STM32 的中断和异常 NVIC 中断控制器 NVIC 结构体成员 抢占优先级和响应优先级 简单配置NVIC中断控制器 EXTI 外部中断【中断源级】 STM32系列微控制器实际上最多有23根外部中断线(EXT…...

【Kali】简单记录
文章目录 信息收集DNS记录分析hostdigdnsenum 路由信息tcptraceroutetctrace 搜索引擎 目标识别arpingfping 识别操作系统p0f 服务枚举端口扫描nmap识别VPN服务器 漏洞映射exploitdbmsfconsole 提权arpspoofDsniff 信息收集 DNS记录分析 host host www.example.com host -a …...

【数据结构】:队列的实现
队列 队列的概念及结构 队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出 FIFO(First In First Out) 入队列:进行插入操作的一端称为队尾 出队列:进行删除操作的一端称为队…...

415. 字符串相加
415. 字符串相加 class Solution { public:string addStrings(string num1, string num2){//i j分别指向当前字符串的最后一位int i num1.length() - 1;int j num2.length() - 1;int add 0;string s "";//不要忽略两个串都遍历完了 但是还有一个进位while (i …...

深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...

初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...

水泥厂自动化升级利器:Devicenet转Modbus rtu协议转换网关
在水泥厂的生产流程中,工业自动化网关起着至关重要的作用,尤其是JH-DVN-RTU疆鸿智能Devicenet转Modbus rtu协议转换网关,为水泥厂实现高效生产与精准控制提供了有力支持。 水泥厂设备众多,其中不少设备采用Devicenet协议。Devicen…...