首页 > 其他分享 >通过rancher部署k8s集群

通过rancher部署k8s集群

时间:2024-07-26 10:09:04浏览次数:14  
标签:Kubernetes Rancher 集群 rancher k8s 安装 节点

一、Rancher介绍

Rancher 是为使用容器的公司打造的容器管理平台。Rancher 简化了使用 Kubernetes 的流程,开发者可以随处运行 Kubernetes(Run Kubernetes Everywhere),满足 IT 需求规范,赋能 DevOps 团队。

Rancher 可以创建来自 Kubernetes 托管服务提供商的集群,自动创建节点并安装 Kubernetes 集群,或者导入任何已经存在的 Kubernetes 集群。

关于Rancher的详细产品简介请访问:产品简介 | Rancher文档

二、准备环境

角色 IP 说明 系统
master 192.168.15.133 master节点 CentOS 7.9
node1 192.168.15.134 node节点 CentOS 7.9
rancher 192.168.15.136 rancher server CentOS 7.9

在3个系统上进行如下操作:

# 关闭防火墙
systemctl stop firewalld
# 禁用防火墙
systemctl disable firewalld

# 关闭selinux
setenforce 0  # 临时
sed -i 's/enforcing/disabled/' /etc/selinux/config  # 永久

# 关闭swap
swapoff -a  # 临时
sed -ri 's/.*swap.*/#&/' /etc/fstab    # 永久  关闭后需要重启服务器

# 根据规划设置主机名
hostnamectl set-hostname <hostname>

# 在master添加hosts
cat >> /etc/hosts << EOF
192.168.15.133 master
192.168.15.134 node1
192.168.15.136 rancher
EOF

# 将桥接的IPv4流量传递到iptables的链
vim /etc/sysctl.conf

cat > /etc/sysctl.conf << EFO
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EFO
sysctl --system # 生效
# 时间同步
yum install ntpdate -y
ntpdate time.windows.com

三、安装Rancher

1.安装docker

https://www.runoob.com/docker/docker-tutorial.html

2.安装Rancher

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

3.浏览器访问rancher

https://192.168.15.136

image

四、部署集群

1.创建集群

点击添加集群;

image

2.选择自定义

image

3.输入集群名称、选择版本号、网络等信息

填写完成点击下一步;

image

4.选择安装对应的组件

master主节点安装Etcd、Control、Worker,子节点安装Worker;

image

复制命令到对应服务器;

master主节点:

image

node1节点:

image

5.等待刷新主机页面查看注册情况

image

image

五、在K8S节点管理集群

1.配置阿里云YUM软件源

cat > /etc/yum.repos.d/kubernetes.repo << EOF
[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

2.安装kubectl

查看yum仓库中,软件包有哪些版本
使用–showduplicates参数,查看kubelet有哪些版本

yum --showduplicates list kubelet

安装于K8S版本一直或相近的kubectl

yum install -y kubectl-1.19.15-0

3.创建kube目录

mkdir /root/.kube

4.获取配置文件

image

image

5.创建/root/.kube/config文件

vi /root/.kube/config
# 将rancher上下载的配置文件复制到config

6.测试kubectl命令

kubectl get nodes

image

image

六、部署应用

1.添加项目

image

image

2.添加命名空间

image

image

3.部署应用

image

image

4.成功部署

Tomcat部署成功:

image

标签:Kubernetes,Rancher,集群,rancher,k8s,安装,节点
From: https://www.cnblogs.com/you-fish/p/18324746

相关文章

  • k8s证书续期10年
    现象通过kubeadm安装kubernetes集群时会存在一个证书问题:由kubeadm生成的客户端证书在1年后到期。随着kubernetes集群的使用,某一天证书过期了,此时kubernetes集群将无法正常使用,比如:kubectl命令执行会产生错误(Youmustbeloggedintotheserver(unauthorized))、......
  • 关于k8s中的pv和pvc无法绑定
    在一次申明pv和pvc时,发现两者怎么都无法绑定,以下是两个文件申明pvapiVersion:v1kind:PersistentVolumemetadata:name:my-pvspec:capacity:storage:5GiaccessModes:-ReadWriteManypersistentVolumeReclaimPolicy:RecyclestorageClassName:nfs......
  • 05、K8s安全
    3.1API资源对象NetworkPolicyNetworkPolicy用来控制Pod与Pod之间的网络通信,它也支持针对Namespace进行限制。基于白名单模式,符合规则的对象通过,不符合的拒绝应用场景:PodA不能访问PodB开发环境所有Pod不能访问测试命名空间提供对外访问时,限制外部IP官方NetworkPolic......
  • Velero backup and restore k8s cluster
    Velero部署及使用示例Velero是用于备份和恢复Kubernetes集群资源和PV的开源项目。基于VeleroCRD创建备份(Backup)和恢复作业(Restore)可以备份或恢复集群中的几乎所有对象,也可以按类型、名称空间或标签过滤对象支持基于文件系统备份(FileSystemBackup,简称FSB)备份Pod卷中的数......
  • 在K8S中,创建pod的过程是什么?
    在Kubernetes(K8S)中,创建一个Pod是一个涉及多个步骤的过程。Pod是Kubernetes中的基本部署单元,它封装了一个或多个容器(通常是Docker容器),这些容器共享存储、网络和生命周期。以下是创建Pod的详细过程:定义Pod资源:首先,需要定义一个Pod资源,通常通过编写一个YAML或JSON格式的配置文件......
  • 在K8S中,api-service 和 kube-schedule 高可用原理是什么?
    在Kubernetes(简称K8s)中,api-service和kube-scheduler的高可用原理是确保这些关键组件在部分节点或实例出现故障时,集群的整体功能和稳定性不受影响。下面分别详细解释这两个组件的高可用原理:1.APIServer高可用原理APIServer作为Kubernetes集群的API网关,负责接收来自用户和其他......
  • 在K8S中,节点故障pod驱逐pod过程,时间怎么定义的?
    在Kubernetes(K8S)中,节点故障导致Pod驱逐的过程是一个涉及多个组件和参数协同工作的复杂流程。这个过程的时间定义主要通过一系列参数来配置和确定。以下是该过程的详细解释以及时间定义的说明:一、节点故障检测节点控制器(NodeController)检查间隔:node-monitor-period:这是节点控......
  • 在K8S中,滚动更新的过程是什么?
    在Kubernetes(K8S)中,滚动更新是一种更新应用程序的方式,它允许逐步替换旧版本的Pods以使用新版本的Pods,从而减少停机时间,并确保服务的连续性。以下是滚动更新的详细过程:定义Deployment资源:首先,需要定义一个Deployment资源,它描述了Pods的期望状态和更新策略。Deployment负责管理P......
  • 在K8S中,k8s删除pod的过程是什么?
    在Kubernetes(K8s)中,删除Pod的过程是一个涉及多个步骤和组件协作的流程。以下是K8s删除Pod的详细过程:一、连接到Kubernetes集群首先,用户或系统需要连接到Kubernetes集群。这通常通过kubectl命令行工具或其他KubernetesAPI客户端实现。kubectl是Kubernetes的官方命令行工具,用于与K......
  • 【云原生之kubernetes实战】在k8s环境下部署go-file文件分享工具
    【云原生之kubernetes实战】在k8s环境下部署go-file文件分享工具一、go-file介绍1.1go-file简介1.2go-file特点1.3go-file使用场景二、本次实践介绍2.1本次实践简介2.2本次环境规划2.3本次实践存储介绍2.4k8s存储介绍三、检查k8s环境3.1检......