【云原生】Rancher中导入新搭建的Kubernetes集群

本文介绍如何部署Kubernetes集群并将其导入Rancher进行管理。包括K8s安装步骤、网络配置及Rancher集成教程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

基于Rancher2.6.3 + Kubernetes搭建集群环境。


一、前期准备

1、机器配置

  • Rancher(配置:4核8G):安装Docker、Rancher
  • Master(配置:4核8G):安装Docker、安装Kubernetes(作为Master)
  • Node(配置:2核4G):安装Docker、安装Kubernetes(作为node)

Docker安装及Rancher安装参考文档

二、Kubernetes安装

注意:两台机器的内网ip需要互通才可以搭建成功,不可以使用公网ip,否则node无法加入master

1.设置host

# 第一台执行脚本
hostnamectl set-hostname master

# 第二台执行脚本
hostnamectl set-hostname node1

2.设置主机映射(两台机器)

vim /etc/hosts

<替换成你的内网ip> master
<替换成你的内网ip> node1

3.两台服务器需要关闭防火墙(两台机器)

#所有节点确保防火墙关闭
systemctl stop firewalld
systemctl disable firewalld

4.添加K8s的安装源(两台机器)

# 进到目录 /etc/yum.repos.d/
cd /etc/yum.repos.d/

# 添加安装源
cat <<EOF > kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

5.安装yum仓库依赖(两台机器)

yum -y install yum-utils

6.安装kubelet(两台机器)

yum install -y kubelet-1.22.4 kubectl-1.22.4 kubeadm-1.22.4

7.启动docker、但是不要启动kubelet(两台机器)

# 启动docker
systemctl start docker

# 开机启动kubelet
systemctl enable kubelet

# 开机启动docker
systemctl enable docker

8.设置Docker的镜像节点(两台机器)

# 设置docker的镜像源
cat <<EOF > daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "registry-mirrors": ["https://ud6340vz.mirror.aliyuncs.com"]
}
EOF

# 移动到/etc/docker/下,若没有则先创建目录
mv daemon.json /etc/docker/

# 重新加载文件
systemctl daemon-reload

# 重启docker
systemctl restart docker

9.初始化Kuelet(主节点)

kubeadm init --kubernetes-version=v1.22.12 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12 --apiserver-advertise-address=<主节点内网ip> --image-repository=registry.aliyuncs.com/google_containers

出现这个页面则代表初始化成功
在这里插入图片描述

10.暴露主节点配置(主节点)

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
export KUBECONFIG=/etc/kubernetes/admin.conf

11.启动主节点(主节点)

 systemctl start kubelet

11.将主节点初始换返回的命令在子节点中执行(子节点)

注意:主节点启动后,需要开放6443端口

kubeadm join 192.168.0.241:6443 --token gphrdt.wq9rxqple1bm86nw --discovery-token-ca-cert-hash sha256:db34ff6d7ff1c3efb3ed1dbfdcce68311c8cce832ba2f680717aee9f8cb3bcb2

12.通过网络插件配置主节点和工作节点网络(主节点)

注意:需要等待大概2-3分钟才会生效

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

13.主节点查看信息(主节点)

kubectl get nodes

若创建成功则状态为就绪
在这里插入图片描述

三、Rancher中导入集群

1.选择:导入已有集群

在这里插入图片描述

2.选择:导入已有集群

在这里插入图片描述

3.集群名称可以:按照自己的填写,点击创建

在这里插入图片描述

4.将K8s节点加入到Rancher中

点击创建在master主节点中执行命令,将K8s集群添加到Rancher中(我们这里没有设置相关凭证,所以我们这边使用第二条语句来绕过凭证)
在这里插入图片描述

5.进入集群管理页面查看本次的导入的集群

在这里插入图片描述

6.查看集群中对应的节点个数及角色

在这里插入图片描述


总结

以上就是Demo版本的K8s安装,及通过Rancher导入K8s集群。

<think>好的,我现在需要解决用户关于如何通过Rancher导入现有Kubernetes集群的问题。首先,我需要确认用户的需求是导入已有的K8S集群Rancher中进行管理。根据用户提供的引用资料,特别是引用[2]中的命令,用户可能已经有一定的Rancher安装基础,但需要具体的导入步骤。 接下来,我需要回忆Rancher的基本工作流程。Rancher管理集群通常有两种方式:一是通过Rancher部署全集群,二是导入已有的集群。这里用户关注的是后者。导入现有集群通常涉及到在Rancher界面生成注册命令,然后在目标集群上应用这个命令,从而建立连接。 然后,我需要检查用户提供的引用内容。引用[1]提到使用Rancher CLI部署集群,但用户的问题是关于导入现有集群,所以可能需要更多的UI操作步骤。引用[2]中的Docker命令是用来运行Rancher服务器的,这可能是前提条件,即用户已经安装了Rancher,现在需要导入集群。 接下来,我需要确保步骤的准确性。首先,用户需要登录Rancher的UI,进入集群管理页面,选择导入现有集群,然后生成对应的YAML文件或命令。然后在目标集群上执行这个命令,部署Rancher agent,这样Rancher就能接管集群了。这个过程可能涉及到kubectl apply命令的应用,以及可能的网络配置,确保目标集群能够访问Rancher服务器。 然后,我需要考虑潜在的问题和注意事项。例如,网络连通性:目标集群必须能够访问Rancher服务器的API端点;权限问题:执行命令的用户需要有足够的权限在目标集群上部署资源;版本兼容性:RancherKubernetes的版本是否兼容。此外,用户可能需要了解导入后的集群如何在Rancher中进行管理和监控。 还要考虑用户可能的后续问题,比如如何验证集群是否成功导入,如何处理导入过程中的常见错误,或者如何配置高级设置如访问控制、监控和日志集成等。 最后,根据用户提供的引用,特别是引用[2]中的Docker命令,可能需要提醒用户确保Rancher服务器已经正确安装并运行,且端口配置正确(如-p 1443:443),以便外部访问。同时,引用[1]提到的Rancher CLI可能不是必须的,但可以作为补充工具使用。 总结步骤应该是清晰的,分步指导用户完成导入过程,同时注意可能遇到的坑,比如网络配置和权限问题。此外,生成的相关问题需要围绕导入后的管理、验证和优化展开,帮助用户进一步了解Rancher的功能。</think>### 通过Rancher导入现有Kubernetes集群的步骤 以下是使用Rancher导入已有Kubernetes集群的详细流程: --- #### **1. 前提条件** - 已安装并运行Rancher Server(参考引用[2]中的命令): ```bash docker run -d --privileged --restart=unless-stopped -p 81:80 -p 1443:443 rancher/rancher:stable ``` - 现有Kubernetes集群的`kubeconfig`文件需具有管理员权限。 - Rancher Server与目标集群网络互通(确保目标集群能访问Rancher的API)。 --- #### **2. 在Rancher中生成注册命令** 1. 登录Rancher UI(默认地址:`https://<服务器IP>:1443`)。 2. 进入**集群管理**页面,点击**导入现有集群**。 3. 输入集群名称(如`my-existing-cluster`),点击**创建**。 4. Rancher会生成一个包含`kubectl`命令的注册脚本,示例如下: ```bash kubectl apply -f https://<RANCHER_SERVER>/v3/import/<CLUSTER_TOKEN>.yaml ``` --- #### **3. 在目标集群执行注册命令** 1. 在目标Kubernetes集群的**控制节点**上,使用`kubeconfig`执行上述命令: ```bash kubectl apply -f https://<RANCHER_SERVER>/v3/import/<CLUSTER_TOKEN>.yaml ``` 2. 等待部署完成(约1-2分钟),检查是否成功: ```bash kubectl -n cattle-system get pods # 应看到rancher-agent容器运行 ``` --- #### **4. 验证导入状态** - 返回Rancher UI,集群状态会从**Pending**变为**Active**。 - 在集群详情页可查看节点、工作负载、存储等资源[^2]。 --- #### **注意事项** - **网络问题**:若目标集群无法访问Rancher Server,需检查防火墙或反向代理配置。 - **证书问题**:若Rancher使用自签名证书,需在目标集群的节点上信任该证书。 - **版本兼容性**:Rancher需支持目标集群Kubernetes版本(参考[官方兼容性矩阵](https://rancher.com/support-matrix/))。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值