当前位置: 首页 > news >正文

Kubernetes 使用 Rancher 管理

K8S集群管理工具

只能管理单个K8S集群

  • kubectl命令行管理工具    
  • dashboard(K8S官方的UI界面图形化管理工具)  

(管理多集群很麻烦,切换不同集群每次需要更改kube-config文件[kubectl配置文件],如果kubeadm部署每次都需要更改admin.conf[kubectl配置文件]

同时管理多个K8S集群

  • rancher
  • kubesphere  
  • k9s

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

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

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


Rancher 安装及配置

实验环境
控制节点/master01         192.168.80.101
工作节点/node01            192.168.80.102
工作节点/node02            192.168.80.103
Rancher节点/rancher      192.168.80.104 (只要安装docker的主机都能作为Rancher节点)

systemctl stop firewalld
setenforce 0

1、安装 rancher 

所有 node 节点下载 rancher-agent 镜像

docker pull rancher/rancher-agent:v2.5.7

在 rancher 节点下载 rancher 镜像并docker run启动(注意主机上不要有80 443端口冲突)

yum install -y docker
systemctl start docker
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 rancher1326da432b17   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.80.104 ,由于未使用授信证书,会有报警,忽略即可
登录后如是英文页面,可点击右下角语言选项选择中文

 

3、Rancher 管理已存在的 k8s 集群

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

 

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

 在 k8s 控制节点 master01 上执行刚才复制的命令,如第一次执行报错,再执行一次即可

curl --insecure -sfL https://192.168.80.104/v3/import/dsrhm4vpzmf5xjkmc5dsvfmv5vw52crlws6cqfwq9nswwlrzt6bzsc_c-jxsdv.yaml | kubectl apply -f -

 

 查看创建了哪些命名空间以及pod

kubectl get nsNAME              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
kubectl get pods -n cattle-system -o wideNAME                                    READY   STATUS    RESTARTS   AGE    IP           NODE     NOMINATED NODE   READINESS GATES
cattle-cluster-agent-78647b4ff8-fbqdp   1/1     Running   0          2m1s   10.244.1.4   node01   <none>           <none>
kubectl get pods -n fleet-system -o wideNAME                           READY   STATUS    RESTARTS   AGE    IP           NODE     NOMINATED NODE   READINESS GATES
fleet-agent-55bfc495bd-m9qjt   1/1     Running   0          6m8s   10.244.1.3   node01   <none>           <none>

若迟迟未创建 cattle-system命名空间内pod,或是迟迟未创建fleet-system,重启几遍集群。发现是虚拟机出了一些很奇怪的问题。重启时设置卡在启动界面。多次重启解决问题。

4、Rancher 部署监控系统(Rancher会自动安装Prometheus)

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

【监控组件版本】选择 0.2.1,其他的默认即可
点击【启用监控】,启动监控时间可能比较长,需要等待10分钟左右

安装完成后,点击集群监控,查看监控信息。

 Rancher界面

 

Grafana界面

 

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

以创建 nginx 服务为例
点击【仪表盘】进入 k8s 集群仪表盘界面

 

 

创建名称空间 namespace

点击左侧菜单【Namespaces】,再点击右侧【Create】
【Name】输入 dev,【Description】选填可自定义
点击右下角【Create】

 

创建 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 (设置pod标签)
点击中间选项【Labels and Annotations】,点击【Add Label】,【Key】输入 app,【Value】输入 nginx(设置deployment标签)
点击右下角【Create】

 

创建 service

点击左侧菜单【Services】,再点击右侧【Create】
点击【Node Port】
【Namespace】下拉选择 dev,【Name】输入 nginx-dev-service
【Port Name】输入 nginx,【Listening Port】输入 80(service端口号),【Target Port】输入 80(容器内端口号),【Node Port】输入 34567(nodeip端口号)
点击中间选项【Selectors】(标签选择器),【Key】输入 app,【Value】输入 nginx
点击右下角【Create】
点击【nginx-dev-service】查看 service 是否已关联上 Pod

 

 点击 service 资源的节点端口 30080/TCP,可以访问内部的 nginx 页面了

 

 

创建 ingress

点击左侧菜单【ingress】,再点击右侧【Create】
点击【Node Port】
【Namespace】下拉选择 dev,【Name】输入 nginx-dev-ingress
【Request Host】输入 www.xue666.com,【Path】选择 Prefix(前缀匹配)填入 / ,【Target Service】选择 nginx-dev-service,【Port】选择 80(刚刚创建的service的端口号)

点击右下角Edit as YAML,73行 修改    ingressClassName: nginx(指定ingressClass控制器)
点击右下角【Create】

点击【nginx-dev-ingress】查看 service 是否已关联上 Pod

编辑C:\Windows\System32\drivers\etc\hosts

192.168.80.101 www.xue666.com
#ip写安装了nginx-ingress-controller的主机

访问测试:域名+nodeport 

相关文章:

Kubernetes 使用 Rancher 管理

K8S集群管理工具 只能管理单个K8S集群 kubectl命令行管理工具 dashboard&#xff08;K8S官方的UI界面图形化管理工具&#xff09; &#xff08;管理多集群很麻烦&#xff0c;切换不同集群每次需要更改kube-config文件[kubectl配置文件]&#xff0c;如果kubeadm部署每次都需…...

5G随身wifi如何选择?简单分类一下

最近5g随身wifi越来越多了&#xff0c;价格也一直走低&#xff0c;根据我的观察和总结&#xff0c;5g随身wifi可以分为这几档&#xff1a;&#xff08;普遍来说&#xff09; 1&#xff0c;紫光udx710基带芯片&#xff08;也叫v510&#xff09; 代表产品&#xff1a;r106&#x…...

华为PPPOE配置实验

华为PPPOE配置实验 网络拓扑图拓扑说明电信ISP设备配置用户拨号路由器配置查看是否拨上号是否看不懂&#xff1f; 看不懂就对了&#xff0c;只是记录一下命令。至于所有原理&#xff0c;等想写了再写 网络拓扑图 拓扑说明 用户路由器用于模拟家用拨号路由器&#xff0c;该设备…...

1.jvm和java体系结构

jvm简介 JVM&#xff1a;跨语言的平台 Java是目前应用最为广泛的软件开发平台之一。随着Java以及Java社区的不断壮大Java 也早已不再是简简单单的一门计算机语言了&#xff0c;它更是一个平台、一种文化、一个社区。 ● 作为一个平台&#xff0c;Java虚拟机扮演着举足轻重的…...

h264 SPS 帧分辨率解析标准

来源:微信公众号「编程学习基地」 文章目录 导致1088出现的原因h264 sps解析h264bitstream的简单使用导致1088出现的原因 大部分IPC推过来的数据流都是标准的1080P(1920x1080),720P(1280x720) 但是也有个例,部分设备存在16位/32位对齐的情况,出现非标1080P(1920x1088),72…...

二、SQL注入之联合查询

文章目录 1、SQL注入原理2、SQL注入的原因3、SQL注入的危害4、SQL注入基础4.1 MySQL相关4.2 SQL注入流程&#xff1a; 5、联合注入实例基本步骤6、总结 1、SQL注入原理 SQL注入(Sql Injection&#xff09;就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串&…...

Python爬虫入门 - 规则、框架和反爬策略解析

在当今信息爆炸的时代&#xff0c;爬虫技术成为了获取互联网数据的重要手段。对于初学者来说&#xff0c;掌握Python爬虫的规则、框架和反爬策略是迈向高效爬取的关键。本文将分享一些实用的经验和技巧&#xff0c;帮助你快速入门Python爬虫&#xff0c;并解析常见的反爬策略&a…...

【数据结构入门指南】二叉树

【数据结构入门指南】二叉树 一、二叉树的概念二、现实中的二叉树三、特殊的二叉树四、二叉树的性质五、二叉树的存储结构5.1 顺序结构5.2 链式结构 一、二叉树的概念 二叉树是一棵特殊的树。一棵二叉树是结点的一个有限集合&#xff0c;该节点&#xff1a; ①&#xff1a;或者…...

C++初阶——string(字符数组),跟C语言中的繁琐设计say goodbye

前言&#xff1a;在日常的程序设计中&#xff0c;我们会经常使用到字符串。比如一个人的身份证号&#xff0c;家庭住址等&#xff0c;只能用字符串表示。在C语言中&#xff0c;我们经常使用字符数组来存储字符串&#xff0c;但是某些场景(比如插入&#xff0c;删除)下操作起来很…...

Android Bitmap详解(下)之图片缓存详解

前言&#xff1a; 之前有出过俩篇关于bitmap相关的讲解&#xff0c;分别是Bitmap详解(上)常用概念和常用API和Bitmap详解(中)之像素级操作&#xff0c;今天主要是来一个系统的总结。 认识Bitmap&#xff1a; Bitmap是Android系统中的图像处理的最重要类之一。用它可以获取图像…...

020-从零搭建微服务-认证中心(九)

写在最前 如果这个项目让你有所收获&#xff0c;记得 Star 关注哦&#xff0c;这对我是非常不错的鼓励与支持。 源码地址&#xff08;后端&#xff09;&#xff1a;https://gitee.com/csps/mingyue 源码地址&#xff08;前端&#xff09;&#xff1a;https://gitee.com/csps…...

孤注一掷中的黑客技术

最近孤注一掷电影很火&#xff0c;诈骗团伙的骗术实在厉害&#xff0c;就连电影中的黑客潘生都未能幸免。电影中的陆经理说&#xff1a;不是我们坏&#xff0c; 是他们贪。这句话我觉得有一部分是对的&#xff0c;诈骗分子抓住了人的本性贪婪&#xff0c;才使得被骗的人逐步走向…...

机器学习笔记 - PyTorch Image Models图像模型概览 (timm)

一、简述 PyTorch Image Models (timm)是一个用于最先进的图像分类的库,包含图像模型、优化器、调度器、增强等的集合;是比较热门的论文及代码库。 虽然越来越多的低代码和无代码解决方案可以轻松开始将深度学习应用于计算机视觉问题,但我们经常与希望寻求定制解决方案的客户…...

Java 实现证件照底图替换,Java 实现照片头像底图替换

效果图 这里前端用layui实现的案例截图 color底图颜色可以在网页上这样取色 new Color(34, 133, 255) 实现案例下载链接&#xff1a;https://download.csdn.net/download/weixin_43992507/88237432...

周易卦爻解读笔记——未济

第六十四卦未济 火水未济 离上坎下 未济卦由否卦所变&#xff0c;否卦六二与九五换位&#xff0c;象征尚未完成。 天地否 未济卦和既济卦既是错卦又是覆卦&#xff0c;这也是最后一卦&#xff0c;序卦传【物不可穷也&#xff0c;故受之以未济终焉】 未济卦象征尚未完成&…...

AI 绘画Stable Diffusion 研究(十三)SD数字人制作工具SadTlaker使用教程

免责声明: 本案例所用安装包免费提供&#xff0c;无任何盈利目的。 大家好&#xff0c;我是风雨无阻。 想必大家经常看到&#xff0c;无论是在产品营销还是品牌推广时&#xff0c;很多人经常以数字人的方式来为自己创造财富。而市面上的数字人收费都比较昂贵&#xff0c;少则几…...

伦敦金走势图行情值得关注

不知道大家是否了解过伦敦金这个投资品种&#xff0c;或者有否财经网站以及金融终端上看到过它的行情走势图。其实&#xff0c;伦敦金并不是一种实实在在的黄金&#xff0c;而是一种跟踪伦敦现货黄金市场价格走势的黄金保证金交易品种&#xff0c;它每天的行情走势变化&#xf…...

机器学习之数据清洗

一、介绍 数据清洗是机器学习中的一个重要步骤&#xff0c;它涉及对原始数据进行预处理和修复&#xff0c;以使数据适用于机器学习算法的训练和分析。数据清洗的目标是处理数据中的噪声、缺失值、异常值和不一致性等问题&#xff0c;以提高数据的质量和准确性。 二、方法 处理…...

T599聚合物电容器:在汽车应用中提供更长的使用寿命的解决方案

自从电子技术被引入汽车工业以来&#xff0c;汽车的技术含量一直在提升。诸多技术被应用在汽车上&#xff0c;使汽车的形象更接近于轮子上的超级计算机。更多传感器、更强大的计算能力和电力被装载到汽车上&#xff0c;汽车应用中的电子产品数量正在迅速增长。随着电动汽车和自…...

学习ts(五)类

定义 是面向对象程序设计&#xff08;OOP&#xff09;实现信息封装的基础 类是一种用户定义的引用数据类型&#xff0c;也称类类型 JavaScript的class,虽然本质是构造函数&#xff0c;但是使用起来已经方便了许多&#xff0c;js中没有加入修饰符和抽象类等特性 ts的class支持面…...

别再搞混了!AUTOSAR通信栈里,PduR和CanTp到底为谁打工?一个DCM诊断请求的完整旅程

AUTOSAR通信栈揭秘&#xff1a;诊断请求如何穿越PduR与CanTp的迷宫 在汽车电子系统的开发中&#xff0c;诊断通信就像车辆的"健康检查系统"&#xff0c;而AUTOSAR架构中的通信栈则是确保这些诊断命令能够准确传达的神经网络。许多工程师第一次接触AUTOSAR通信栈时&am…...

dynamic-datasource JVM调优:提升多数据源性能的7个实用技巧

dynamic-datasource JVM调优&#xff1a;提升多数据源性能的7个实用技巧 【免费下载链接】dynamic-datasource dynamic datasource for springboot 多数据源 动态数据源 主从分离 读写分离 分布式事务 项目地址: https://gitcode.com/gh_mirrors/dy/dynamic-datasource …...

Llama-3.2V-11B-cot代码实例:Streamlit中图片上传与缓存机制

Llama-3.2V-11B-cot代码实例&#xff1a;Streamlit中图片上传与缓存机制 1. 项目概述 Llama-3.2V-11B-cot是基于Meta Llama-3.2V-11B-cot多模态大模型开发的高性能视觉推理工具&#xff0c;专为双卡4090环境优化。该工具通过Streamlit构建了直观易用的交互界面&#xff0c;特…...

STM32CubeMX定时器避坑指南:为什么你的中断总是不触发?

STM32CubeMX定时器避坑指南&#xff1a;为什么你的中断总是不触发&#xff1f; 第一次使用STM32CubeMX配置定时器中断时&#xff0c;很多开发者都会遇到一个令人抓狂的问题——代码编译下载后&#xff0c;中断就像睡着了一样毫无反应。LED灯不闪烁、串口没输出、变量不更新&…...

百度快速排名优化技术(百度seo排名优化)

百度快速排名优化技术是一种针对搜索引擎结果页面&#xff08;SERP&#xff09;排名优化的技术手段&#xff0c;通过优化网站的内容、结构和用户体验等方面&#xff0c;提高网站在搜索引擎中的排名&#xff0c;从而获得更多的流量和潜在客户。下面&#xff0c;我将介绍百度快速…...

SAP--S4/HANA

1、Webdispatcher 2、ASCS 全称&#xff1a;ABAP Central Services Instance&#xff08;在 Java 栈中称为 SCS - Java Central Services&#xff09;。 核心功能&#xff1a;它是 SAP 系统的“大脑”或控制中心&#xff0c;不包含处理具体业务对话&#xff08;Dialog&#xff…...

语音播报实时

目录 GPT-SoVITS&#xff08;强烈推荐&#xff09; Fish Speech-1.5 GPT-SoVITS&#xff08;强烈推荐&#xff09; RVC-Boss/GPT-SoVITS: 1 min voice data can also be used to train a good TTS model! (few shot voice cloning) Fish Speech-1.5 追求极致流畅的实时对话&a…...

扩散模型实现:从环境搭建到图像生成的全流程指南

扩散模型实现&#xff1a;从环境搭建到图像生成的全流程指南 【免费下载链接】Diffusion-Models-pytorch Pytorch implementation of Diffusion Models (https://arxiv.org/pdf/2006.11239.pdf) 项目地址: https://gitcode.com/gh_mirrors/di/Diffusion-Models-pytorch …...

Vivado初始化设计慢?可能是这3个隐藏设置惹的祸

Vivado初始化设计慢&#xff1f;可能是这3个隐藏设置惹的祸 当你在深夜赶项目进度&#xff0c;Vivado却卡在"Initializing Design"界面转圈超过15分钟&#xff0c;那种焦虑感堪比考试时笔没水。作为Xilinx FPGA开发的核心工具&#xff0c;Vivado的初始化速度直接影响…...

你用AI写代码时,是不是总觉得“它懂语法,却搞不定真实工程”?Composer 2的答案在这里

很多开发者都有过这种体验&#xff1a;把一个真实项目需求甩给AI&#xff0c;它能秒出语法完美的代码片段&#xff0c;可一到大型代码库、遗留系统、多文件联动的时候&#xff0c;就开始原地打转。改了半天核心逻辑没动&#xff0c;引入新问题&#xff0c;或者干脆在长链条任务…...