Kubernetes 使用 Rancher 管理

这篇具有很好参考价值的文章主要介绍了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 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.80.104 ,由于未使用授信证书,会有报警,忽略即可
登录后如是英文页面,可点击右下角语言选项选择中文Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

 

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

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

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher 

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

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

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

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher 

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

kubectl get ns

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
kubectl get pods -n cattle-system -o wide

NAME                                    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 wide

NAME                           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,重启几遍集群。发现是虚拟机出了一些很奇怪的问题。重启时设置卡在启动界面。多次重启解决问题。

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

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

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

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher【监控组件版本】选择 0.2.1,其他的默认即可
点击【启用监控】,启动监控时间可能比较长,需要等待10分钟左右

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

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

 Rancher界面Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

 

Grafana界面Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

 

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

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

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher 

 

创建名称空间 namespace

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

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

 

创建 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】

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

 

创建 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

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

 

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

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

 Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

 

创建 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】

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

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

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

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

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

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher

访问测试:域名+nodeport 

Kubernetes 使用 Rancher 管理,kubernetes,容器,云原生,运维,linux,rancher文章来源地址https://www.toymoban.com/news/detail-662839.html

到了这里,关于Kubernetes 使用 Rancher 管理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Kubernetes、Docker Swarm和Rancher的特点 - 容器编排平台比较

    本文将介绍三种流行的容器编排平台:Kubernetes、Docker Swarm和Rancher。我们将比较它们的特点,包括架构、功能、性能和生态系统。通过了解这些平台的优势和劣势,读者可以更好地选择适合自己需求的容器编排平台。 随着容器技术的快速发展,容器编排平台的需求也日益增长

    2024年02月12日
    浏览(63)
  • Rancher 管理 Kubernetes 集群

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

    2024年02月16日
    浏览(91)
  • 【云原生】kubernetes在Pod中init容器的作用和使用

    目录 Pod 中 init 容器 1 init 容器特点 2 使用 init 容器 Pod 中 init 容器 Init 容器是一种特殊容器,在Pod 内的应用容器启动之前运行。Init 容器可以包括一些应用镜像中不存在的实用工具和安装脚本。 1 init 容器特点 init 容器与普通的容器非常像,除了如下几点: 它们总是运行到完

    2024年02月14日
    浏览(42)
  • 云原生之深入解析Kubernetes中如何使用临时容器进行故障排查

    容器及其周围的生态系统改变了工程师部署、维护和排查工作负载故障的方式。但是,在 Kubernetes 集群上调试应用程序有时可能会很困难,因为可能在容器中找不到所需的调试工具。许多工程师使用基于精简、发行版构建无发行版的基础镜像,其中甚至没有包管理器或shell,

    2024年02月05日
    浏览(48)
  • 云原生之深入解析如何正确计算Kubernetes容器CPU使用率

    使用 Prometheus 配置 kubernetes 环境中 Container 的 CPU 使用率时,会经常遇到 CPU 使用超出 100%,现在来分析一下: container_spec_cpu_period:当对容器进行 CPU 限制时,CFS 调度的时间窗口,又称容器 CPU 的时钟周期通常是 100000 微秒 container_spec_cpu_quota:是指容器的使用 CPU 时间周期总量

    2024年02月10日
    浏览(71)
  • K8S:Rancher管理 Kubernetes 集群

    Rancher 是一个开源的企业级多集群 Kubernetes 管理平台,实现了 Kubernetes 集群在混合云+本地数据中心的集中部署与管理, 以确保集群的安全性,加速企业数字化转型。超过 40000 家企业每天使用 Rancher 快速创新。 官网:https://docs.rancher.cn/ Rancher 和 k8s 都是用来作为容器的调度与

    2024年02月07日
    浏览(53)
  • 【云原生 | Kubernetes 系列】K8s 实战 使用 Kustomize 对 Kubernetes 对象进行声明式管理

    Kustomize 是一个用来定制 Kubernetes 配置的工具。它提供以下功能特性来管理应用配置文件: 从其他来源生成资源 为资源设置贯穿性(Cross-Cutting)字段 组织和定制资源集合 ConfigMap 和 Secret 包含其他 Kubernetes 对象(如 Pod)所需要的配置或敏感数据。 ConfigMap 或 Secret 中数据的来

    2024年01月17日
    浏览(75)
  • 【云原生】Kubernetes临时容器

    特性状态: Kubernetes v1.25 [stable] 本页面概述了临时容器:一种特殊的容器,该容器在现有 Pod 中临时运行,以便完成用户发起的操作,例如故障排查。 你会使用临时容器来检查服务,而不是用它来构建应用程序 Pod 是 Kubernetes 应用程序的基本构建块。 由于 Pod 是一次性且可替

    2024年02月15日
    浏览(41)
  • 【云原生】Kubernetes容器编排工具

    目录 1. K8S介绍 1.1 k8s的由来 下载地址 1.2 docker编排与k8s编排相比 1.3 传统后端部署与k8s 的对比 传统部署 k8s部署  ​2. k8s的集群架构与组件 (1) Kube-apiserver (2)Kube-controller-manager  (3)Kube-scheduler   2.2 k8s的配置存储中心 2.3  k8s的Node 组件   (1)Kubelet   (2)Kube-Proxy 

    2024年02月10日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包