云原生|kubernetes|rancher-2.6.4安装部署简明手册

简介: 云原生|kubernetes|rancher-2.6.4安装部署简明手册

前言:

rancher是一个比较特殊的开源的kubernetes管理工具,特殊在它是一个名称为k3s的简单kubernetes集群,而该集群是在kubernetes集群内的。

rancher还可以在一个裸的仅具有docker环境的机器部署,然后通过该机器将其它的kubernetes集群纳入rancher管理(简称纳管),或者是通过该机器快速的在其它节点安装一个全新的由rancher纳管的kubernetes集群。

OK,本文将讲述如何在centos7服务器上,在已有的kubernetes-1.23.15集群内,通过docker安装rancher-2.6.4,并调试到可用状态。

一,

环境介绍

已有的kubernetes集群大体情况:

[root@k8s-master ~]# kubectl get no -owide
NAME         STATUS   ROLES                  AGE    VERSION    INTERNAL-IP      EXTERNAL-IP   OS-IMAGE                KERNEL-VERSION                CONTAINER-RUNTIME
k8s-master   Ready    control-plane,master   110d   v1.23.15   192.168.123.11   <none>        CentOS Linux 7 (Core)   5.4.228-1.el7.elrepo.x86_64   docker://20.10.7
k8s-node1    Ready    <none>                 110d   v1.23.15   192.168.123.12   <none>        CentOS Linux 7 (Core)   5.4.228-1.el7.elrepo.x86_64   docker://20.10.7
k8s-node2    Ready    <none>                 110d   v1.23.15   192.168.123.13   <none>        CentOS Linux 7 (Core)   5.4.228-1.el7.elrepo.x86_64   docker://20.10.7

 

[root@k8s-master ~]# kubectl get po -A
NAMESPACE     NAME                                 READY   STATUS    RESTARTS       AGE
kube-system   coredns-6d8c4cb4d-8fqvx              1/1     Running   1 (110d ago)   110d
kube-system   coredns-6d8c4cb4d-wwmkf              1/1     Running   1 (110d ago)   110d
kube-system   etcd-k8s-master                      1/1     Running   2 (110d ago)   110d
kube-system   kube-apiserver-k8s-master            1/1     Running   2 (110d ago)   110d
kube-system   kube-controller-manager-k8s-master   1/1     Running   2 (110d ago)   110d
kube-system   kube-flannel-ds-jhnhc                1/1     Running   1 (110d ago)   110d
kube-system   kube-flannel-ds-v59k2                1/1     Running   1 (110d ago)   110d
kube-system   kube-flannel-ds-vlrtj                1/1     Running   1 (110d ago)   110d
kube-system   kube-proxy-2xlzz                     1/1     Running   2 (110d ago)   110d
kube-system   kube-proxy-pndtl                     1/1     Running   2 (110d ago)   110d
kube-system   kube-proxy-z4zdp                     1/1     Running   2 (110d ago)   110d
kube-system   kube-scheduler-k8s-master            1/1     Running   2 (110d ago)   110d

OK,现有的kubernetes集群版本是1.23.15,服务器的IP地址什么的都在上面,该集群是一个比较干净的集群,没有安装什么多的pod。

二,

使用docker安装rancher

镜像下载:

链接:https://pan.baidu.com/s/1DuP4ZGDES9EhTGGPLprZmQ?pwd=ranc
提取码:ranc

 

注:rancher的镜像都是比较大的,主要是两个镜像,一个是server 镜像,一个是客户端镜像,都是1.5G左右大小,如果是使用下面的第一个命令,最好还是先导入镜像在执行docker启动命令

[root@k8s-master ~]# ls -alh  |grep rancher
-rw-r--r--   1 root root 1.4G Apr 23 05:59 rancher-2.6.4.tar.gz
-rw-r--r--   1 root root 1.4G Apr 23 05:59 rancher-agent-2.6.4.tar.gz

docker启动命令为(在master节点,也就是192.168.123.11节点执行此命令):

docker run --privileged -d --name rancher --restart=unless-stopped -p 80:80 -p 443:443 -v /opt/rancher:/var/lib/rancher rancher/rancher:v2.6.4

该命令可以使用阿里云的镜像,如果是阿里云的镜像,命令为:

docker run --privileged -d --name rancher \
--restart=unless-stopped -p 80:80 -p 443:443 -v /opt/rancher:/var/lib/rancher \
-e  CATTLE_AGENT_IMAGE="registry.cn-hangzhou.aliyuncs.com/rancher/rancher-agent:v2.6.4" \
registry.cn-hangzhou.aliyuncs.com/rancher/rancher:v2.6.4

等待大概3分钟即可,然后就可以进入rancher的web界面了:

三,

rancher 的设置

1,获取web界面的密码

[root@k8s-master ~]# docker ps -a |grep rancher
c922a62d3c15   rancher/rancher:v2.6.4                              "entrypoint.sh"          11 minutes ago   Up 11 minutes               0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   rancher
[root@k8s-master ~]# docker logs  c922a  2>&1 | grep "Bootstrap Password:"
2023/04/22 22:09:56 [INFO] Bootstrap Password: rhs4j82d9bmqqqlqwfkprls5pmx6wmdqnwvjqgcmvkfklsdz9v5bwx

2,登陆rancher,并修改上面获取到的随机密码:

只打第二个√

3,rancher 的初始界面

可以看到,现在是有一个名为local的k3s集群,版本还挺高,是1.22.7,状态是active,但这些不是重要的,重要的是,我们需要导入已存在的kubernetes-1.23.15

4,导入已存在的现有集群

注:rancher-agent-2.6.4.tar.gz 三个节点都应该导入

这个命令输出大体如下:

[root@k8s-master ~]# curl --insecure -sfL https://192.168.123.11/v3/import/ll2gkc5v4mwlxllw8dgld7zfkp2sdclxspmg8hvrkkxksf2zwzr8xg_c-m-vrmw68ql.yaml | kubectl apply -f -
clusterrole.rbac.authorization.k8s.io/proxy-clusterrole-kubeapiserver unchanged
clusterrolebinding.rbac.authorization.k8s.io/proxy-role-binding-kubernetes-master unchanged
namespace/cattle-system unchanged
serviceaccount/cattle unchanged
clusterrolebinding.rbac.authorization.k8s.io/cattle-admin-binding unchanged
secret/cattle-credentials-c4a8a0f created
clusterrole.rbac.authorization.k8s.io/cattle-admin unchanged
Warning: spec.template.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[0].matchExpressions[0].key: beta.kubernetes.io/os is deprecated since v1.14; use "kubernetes.io/os" instead
deployment.apps/cattle-cluster-agent created
service/cattle-cluster-agent unchanged

可以看到确实有三个节点:

OK,我们现在已经初步的导入了已存在的集群,但,现在很多功能还是用不了的,因为,一些插件还没有部署:

[root@k8s-master ~]# kubectl get po -A -owide
NAMESPACE             NAME                                   READY   STATUS             RESTARTS       AGE    IP               NODE         NOMINATED NODE   READINESS GATES
cattle-fleet-system   fleet-agent-6b98dfb776-nqw5j           0/1     ImagePullBackOff   0              17m    10.244.2.4       k8s-node2    <none>           <none>
cattle-system         cattle-cluster-agent-8f9c97c59-bq57h   1/1     Running            0              5m3s   10.244.2.5       k8s-node2    <none>           <none>
cattle-system         cattle-cluster-agent-8f9c97c59-hxwfq   1/1     Running            0              17m    10.244.1.4       k8s-node1    <none>           <none>
kube-system           coredns-6d8c4cb4d-8fqvx                1/1     Running            1 (110d ago)   110d   10.244.0.4       k8s-master   <none>           <none>

最终应该是四个running:

[root@k8s-master ~]# kubectl get po -A -owide
NAMESPACE             NAME                                   READY   STATUS    RESTARTS       AGE    IP               NODE         NOMINATED NODE   READINESS GATES
cattle-fleet-system   fleet-agent-55b948fdd7-lvrkx           1/1     Running   0              19m    10.244.1.7       k8s-node1    <none>           <none>
cattle-system         cattle-cluster-agent-8f9c97c59-bq57h   1/1     Running   0              26m    10.244.2.5       k8s-node2    <none>           <none>
cattle-system         cattle-cluster-agent-8f9c97c59-hxwfq   1/1     Running   0              38m    10.244.1.4       k8s-node1    <none>           <none>
cattle-system         dashboard-shell-xkpx6                  2/2     Running   0              7s     10.244.2.9       k8s-node2    <none>           <none>

关于rancher的UI界面汉化:

rancher-2.6的UI界面是选择语言的,可以方便的切换到中文:

四,

基于rancher创建全新集群

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。 &nbsp; &nbsp; 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
3月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
416 2
|
11月前
|
存储 Kubernetes 对象存储
部署DeepSeek但GPU不足,ACK One注册集群助力解决IDC GPU资源不足
借助阿里云ACK One注册集群,充分利用阿里云强大ACS GPU算力,实现DeepSeek推理模型高效部署。
|
10月前
|
存储 Kubernetes 开发工具
使用ArgoCD管理Kubernetes部署指南
ArgoCD 是一款基于 Kubernetes 的声明式 GitOps 持续交付工具,通过自动同步 Git 存储库中的配置与 Kubernetes 集群状态,确保一致性与可靠性。它支持实时同步、声明式设置、自动修复和丰富的用户界面,极大简化了复杂应用的部署管理。结合 Helm Charts,ArgoCD 提供模块化、可重用的部署流程,显著减少人工开销和配置错误。对于云原生企业,ArgoCD 能优化部署策略,提升效率与安全性,是实现自动化与一致性的理想选择。
700 0
|
9月前
|
存储 Kubernetes 异构计算
Qwen3 大模型在阿里云容器服务上的极简部署教程
通义千问 Qwen3 是 Qwen 系列最新推出的首个混合推理模型,其在代码、数学、通用能力等基准测试中,与 DeepSeek-R1、o1、o3-mini、Grok-3 和 Gemini-2.5-Pro 等顶级模型相比,表现出极具竞争力的结果。
|
10月前
|
存储 Kubernetes 监控
K8s集群实战:使用kubeadm和kuboard部署Kubernetes集群
总之,使用kubeadm和kuboard部署K8s集群就像回归童年一样,简单又有趣。不要忘记,技术是为人服务的,用K8s集群操控云端资源,我们不过是想在复杂的世界找寻简单。尽管部署过程可能遇到困难,但朝着简化复杂的目标,我们就能找到意义和乐趣。希望你也能利用这些工具,找到你的乐趣,满足你的需求。
964 33
|
10月前
|
Kubernetes 开发者 Docker
集群部署:使用Rancher部署Kubernetes集群。
以上就是使用 Rancher 部署 Kubernetes 集群的流程。使用 Rancher 和 Kubernetes,开发者可以受益于灵活性和可扩展性,允许他们在多种环境中运行多种应用,同时利用自动化工具使工作负载更加高效。
605 19
|
10月前
|
存储 测试技术 对象存储
使用容器服务ACK快速部署QwQ-32B模型并实现推理智能路由
阿里云最新发布的QwQ-32B模型,通过强化学习大幅度提升了模型推理能力。QwQ-32B模型拥有320亿参数,其性能可以与DeepSeek-R1 671B媲美。
|
11月前
|
存储 Kubernetes 测试技术
企业级LLM推理部署新范式:基于ACK的DeepSeek蒸馏模型生产环境落地指南
企业级LLM推理部署新范式:基于ACK的DeepSeek蒸馏模型生产环境落地指南
632 12
|
10月前
|
人工智能 运维 Kubernetes
2025 超详细!Lens Kubernetes IDE 多平台下载安装与集群管理教程
Lens 是一款企业级 Kubernetes 可视化操作平台,2025版实现了三大技术革新:AI智能运维(异常检测准确率98.7%)、多云联邦管理(支持50+集群)和实时3D拓扑展示。本文介绍其安装环境、配置流程、核心功能及高阶技巧,帮助用户快速上手并解决常见问题。适用于 Windows、macOS 和 Ubuntu 系统,需满足最低配置要求并前置依赖组件如 kubectl 和 Helm。通过 Global Cluster Hub 实现多集群管理,AI辅助故障诊断提升运维效率,自定义监控看板和插件生态扩展提供更多功能。
|
11月前
|
存储 人工智能 弹性计算
NVIDIA NIM on ACK:优化生成式AI模型的部署与管理
本文结合NVIDIA NIM和阿里云容器服务,提出了基于ACK的完整服务化管理方案,用于优化生成式AI模型的部署和管理。

热门文章

最新文章

推荐镜像

更多