【云原生】k8s图形化管理工具之rancher

news2024/9/23 11:28:57

 内容预知

 前言

 1. Rancher的相关知识

1.1 Rancher的简介 

  1.2 Rancher与k8s的关系及区别

1.3 Rancher具有的优势 

 2. Rancher的安装部署

 2.1 实验环境与部署图分配

2.2 具体的部署操作 

 (1)在 rancher 节点下载 rancher 镜像

(2)在所有k8s的node节点上下载 rancher-agent 镜像 

(3)在rancher主机上启动rancher镜像,映射端口 

(4)进行客户机登录rancher 

(5)Rancher 管理已存在的 k8s 集群 

 3. Rancher图形化界面的基本操作

3.1  Rancher 部署监控系统

3.2 使用 Rancher 仪表盘管理 k8s 集群 

(1)创建名称空间 namespace 

(2)创建 Deployment 资源 

(3)创建 service 


 前言

在前面的k8s基础学习中,我们学习了各种资源的搭配运用,以及命令行,声明式文件创建。这些都是为了k8s管理员体会k8s的框架,内容基础。在真正的生产环境中,大部分的公司还是会选用图形化管理工具来管理k8s集群,大大提高工作效率。 

 在二进制搭建k8集群时,我们就知道了k8s本身就具有一款原生的k8s集群管理工具,但是原生图形化管理工具dashborad只拥有管理一个集群的能力。而对于现代化生产力公司来讲,一个集群能够做的事情还是太少,所以我们需要引入更强大的集群管理工具。市面上较为常用的有rancher   kubesphere   k9s。本次我们主要介绍rancher的功能于搭建。

 1. Rancher的相关知识

1.1 Rancher的简介 

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

  1.2 Rancher与k8s的关系及区别

 Rancher和K8s的关系,Rancher和K8s区别对比。简单来说,K8s(Kubernetes)为企业提供了一种一致的方式来管理任何计算基础架构,Rancher则是用于管理位于任何位置的Kubernetes集群的完整平台。如果用户是自己手动部署K8s集群,流程还是比较复杂的,需要掌握一定的技术知识,所以为了简化Kubernetes操作,一些Kubernetes管理平台应运而生,例如Rancher。 

Rancher完美解决了Kubernetes用户安装和配置Kubernetes集群的难题,用户可以将集群配置定义为代码,Rancher将通过Kubernetes分发和配置引擎RKE在任何基础架构上构建和扩展Kubernetes。 

而k8s与Rancher最大区别:

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

1.3 Rancher具有的优势 

  • 简化Kubernetes学习曲线,推动企业采用Kubernetes
  • 快速构建、集成和自动化CI/CD流水线
  • 管理复杂的微服务应用程序
  • 提供基于Helm的应用商店,打造一站式应用程序部署
  • 集群监控和集群安全的最佳实践
  • 在任何云上、VMware集群或物理机上构建和运行Kubernetes集群

 2. Rancher的安装部署

 2.1 实验环境与部署图分配

至少准备一个二进制或其他方式部署好的k8s集群,准备一台初始化的虚拟机(实现安装好docker并且调整好仓库源)作为rancher的服务机。

Rancher节点/rancher 192.168.73.108
 控制节点/master01 192.168.73.105
工作节点/node01  192.168.73.106
工作节点/node02  192.168.73.107

 

2.2 具体的部署操作 

 (1)在 rancher 节点下载 rancher 镜像

docker load -i rancher.tar

#如果没有提前下载好镜像tar包,也可以采用直接拉取镜像
docker pull rancher/rancher:v2.5.7

(2)在所有k8s的node节点上下载 rancher-agent 镜像 

#将rancher-agent:v2.5.7包上传到master上,在传给其他node节点
scp rancher-agent:v2.5.7 root@192.168.73.106:`pwd`
scp rancher-agent:v2.5.7 root@192.168.73.107:`pwd`
#拉取本地镜像
docker load -i rancher-agent:v2.5.7



#如果没有本地镜像就用每台node主机拉取官方镜像
docker pull rancher/rancher-agent:v2.5.7

(3)在rancher主机上启动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 ps -a|grep rancher

 

(4)进行客户机登录rancher 

 

(5)Rancher 管理已存在的 k8s 集群 

选择【添加集群】,点击【导入】
【集群名称】设置为 k8s-cluster,点击【创建】
选择复制第三条命令绕过证书检查导入 k8s 集群 

 

 

 

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

curl --insecure -sfL https://192.168.73.108/v3/import/c7kj7vrz6rzn899pwdzmcbw89sv5bcnhlmk8s2j2h4s894sdjth6gt_c-g2b75.yaml | kubectl apply -f -

 

 

kubectl get pods -n cattle-system -o wide

 

 3. Rancher图形化界面的基本操作

3.1  Rancher 部署监控系统

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

 

 

 

3.2 使用 Rancher 仪表盘管理 k8s 集群 

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

(1)创建名称空间 namespace 

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

 

 

(2)创建 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】

 

 

 

 

(3)创建 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

 

 

 

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/171514.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Spring(七)】详细了解Spring的核心容器

文章目录前言容器总结前言 前面我们完成bean以及依赖注入的相关学习,现在我们进入到核心容器的最后一块内容了,也就是与容器相关操作的学习🎈🎈。 容器 前边我们获取容器是这样获取的👇👇。 这只是获取容器…

Vue CLI脚手架

1、Vue的开发模式 目前我们使用vue的过程都是在html文件中,通过template编写自己的模板、脚本逻辑、样式等。 但是随着项目越来越复杂,我们会采用组件化的方式来进行开发: 这就意味着每个组件都会有自己的模板、脚本逻辑、样式等&#xff…

凌恩生物报告升级,科研美图助力群落互作机制研究

2022年,在多位技术支持与生信工程师的通力合作下凌恩生物报告升级重磅升级!扩增子分析流程项目从60到120,可谓是加量不加价的超值更新了!结题报告的结果图片可直接用于文章发表,快一起来看看!小小的举个例子…

pytorch【Conv2d参数介绍】

def __init__(self,in_channels: int,out_channels: int,kernel_size: _size_2_t,stride: _size_2_t 1,padding: _size_2_t 0,dilation: _size_2_t 1,groups: int 1,bias: bool True,padding_mode: str zeros # TODO: refine this type):in_channels:网络输入…

《Linux性能优化实战》学习笔记 Day03

04 | 零拷贝:如何高效地传输文件? 原文摘抄 文件拷贝 上下文切换的成本并不小,虽然一次切换仅消耗几十纳秒到几微秒,但高并发服务会放大这类时间的消耗。 每周期中的 4 次内存拷贝,其中与物理设备相关的 2 次拷贝是…

再学C语言37:函数、数组和指针

编写一个对数组进行操作的函数,并进行调用 一般形式举例: int sum(int * arr, int n); // 函数原型// 第一个参数把数组地址和类型信息传递给函数// 第二个参数把数组中元素的个数传递给函数int main(void) {...int total;total sum(array_t, 10);...…

分分钟你也能写一个自己需要的 Chrome 扩展程序

废话 对于chrome浏览器想必大家大不陌生了,里面的扩展程序(本文后面称插件),多多少少也都用过吧,毕竟可以辅助自己的日常工作,娱乐等等,添加完之后呢,就会多出一些操作按钮&#xf…

年度总结-你觉得什么叫生活?

陈老老老板🦸👨‍💻本文专栏:生活(主要讲一下自己生活相关的内容)👨‍💻本文简述:生活就像海洋,只有意志坚强的人,才能到达彼岸。👨‍💻上一篇文章…

Linux常用命令——tr命令

在线Linux命令查询工具(http://www.lzltool.com/LinuxCommand) tr 将字符进行替换压缩和删除 补充说明 tr命令可以对来自标准输入的字符进行替换、压缩和删除。它可以将一组字符变成另一组字符,经常用来编写优美的单行命令,作用很强大。 语法 tr(选…

云逗猫——直播弹幕控制机械臂逗猫棒

这个东西思路是很简单的。简单来说在直播画面用文字跟观看者约定一些弹幕指令,然后用爬虫爬取直播弹幕,当爬到弹幕是约定的指令时,通过串口给舵机控制板发送信号,控制板控制舵机转动,机械臂就会做相应的动作。 猫 两…

Lesson2无头单向非循环链表(中)

1.链表 1.1链表的概念及结构 概念:链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的 。 1.2链表的分类 实际中链表的结构非常多样,以下情况组合起来就有8种链表结构: 1.…

【SAP Hana】X档案:SAP HANA 数据库基础知识

SAP HANA 数据库基础知识1、基本规则(1)注释(2)标识符(3)引号(4)保留字2、数据类型(1)日期时间类型(2)数字类型(3&#xf…

SNMP简单网络管理协议

随着网络的规模越来越庞大,网络中的设备种类繁多,如何对越来越复杂的网络进行有效的管理,从而提供高质量的网络服务,已成为网络管理所面临的巨大挑战。网络的管理和运维手段多样,下面将对几种常见的网管与运维手段展开…

[leetcode.29]两数相除,位运算虽好,不要满眼是她

题目如下 不允许用乘除法,但是我们可以用加减法和位运算。。。不过这里不要用位运算,比如说你要是想用补码交替除法,你根本无法获得移动几位(移动31位?太鬼畜了吧) 所以说单纯的除法部分,我们可…

测试开发 | 实战演练基于加密接口测试测试用例设计

image1080594 76.4 KB 如果接口测试仅仅只是掌握一些requests或者其他一些功能强大的库的用法,是远远不够的,还需要具有根据公司的业务以及需求去定制化一个接口自动化测试框架能力。所以在这个部分,会主要介绍接口测试用例分析以及通用的流程…

从零开始 verilog 以太网交换机(二)MAC接收控制器的设计与实现

从零开始 verilog 以太网交换机(二)MAC接收控制器的设计与实现 🔈声明: 😃博主主页:王_嘻嘻的CSDN主页 🧨 从零开始 verilog 以太网交换机系列专栏:点击这里 🔑未经作者允…

plt绘制点线图 点(marker)过密的解决办法

设置 markevery10 plt.plot(x, y, markero, markevery10) import matplotlib.pyplot as plt import numpy as npxnp.arange(0,2*np.pi,0.01) ynp.sin(x)fig, ax plt.subplots(constrained_layoutTrue)plt.title(markevery10)ax.plot(x, y, markero, markevery50, mfcr,mecr)…

(小甲鱼python)函数笔记合集四 函数(IV)总结 函数中参数的作用域 局部作用域 全局作用域 global语句 嵌套函数 nonlocal语句等详解

一、基础复习 函数的基本用法 创建和调用函数 函数的形参与实参等等函数的几种参数 位置参数、关键字参数、默认参数等函数的收集参数*args **args 解包参数详解 二、函数中参数的作用域 作用域:一个变量可以被访问的范围,一个变量的作用域总是由它在代…

jQuery学习-01jQuery下载安装

1 jQuery的介绍 jQuery就是js函数库,里面有大量的js函数库,使用这些函数操作dom对象,做事件,动画,ajax处理; 地址:https://jquery.com/ 2下载 地址:https://jquery.com/download/…

Apache Solr 9.1-(一)初体验单机模式运行

Apache Solr 9.1-(一)初体验单机模式运行 Solr是一个基于Apache Lucene的搜索服务器,Apache Lucene是开源的、基于Java的信息检索库,Solr能为用户提供无论在任何时候都可以根据用户的查询请求返回结果,它被设计为一个强…