K3S+Rancher

2024-01-16 11:28
文章标签 rancher k3s

本文主要是介绍K3S+Rancher,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.查看系统版本,架构等情况便于后续采用对应的安装包以及命令

查看系统版本

uname -a

查看系统命令集

uname -m

这是我系统配置情况

服务器清单
名称IP配置系统
主-服务192.168.23.1714Cpu8GUbuntu 20.04.6
副主-服务192.168.23.1034Cpu8GUbuntu 20.04.6
代理-服务192.168.23.2484Cpu8GUbuntu 20.04.6
外置均衡代理192.168.23.2054Cpu8GUbuntu 20.04.6

2.配置服务器

2.1服务器源配置

修改/etc/apt/sources.list文件

2.2服务器host配置

修改host文件,写主机映射的域名,每个服务器都要进行设定

vi /etc/hosts
#主服务器
192.168.23.171 k3s-master-server
#副主服务
192.168.23.103 k3s-server
#代理
192.168.23.248 k3s-agent

2.3服务器时间配置

2.4处理磁盘挂载

2.4.1磁盘挂载

参考文章

这里注意要关闭 swap,在 /etc/fstab文件中的swap前添加#号

2.4.2创建与k3s和rancher相关的目录,独立存储

mkdir /data
mkdir /data/k3s
mkdir /data/k3s/k3s
mkdir /data/k3s/kubelet 
mkdir /data/k3s/rancher

2.4.3建立软链接

ln -s /data/k3s/k3s /run/k3s
ln -s /data/k3s/kubelet /var/lib/kubelet
ln -s /data/k3s/rancher /var/lib/rancher

2.安装nginx配置,tcp转接,实现负载均衡

外置均衡代理服务器主要安装nginx,用于TCP转接实现负载均衡处理。并用于部分静态文件存储配置nginx.conf文件如下:psstjz.com

 stream {upstream k3s_servers  {server 192.168.23.248:6443;server 192.168.23.103:6443;server 192.168.23.171:6443;}server {listen 6443;proxy_pass k3s_servers;}
}

3.添加镜像仓库

4.离线安装k3s

4.1拷贝离线文件

拷贝离线k3s执行文件、k3s-airgap-images-amd64.tar到数据存储目录

创建镜像文件对应目录,并拷贝离线文件

mkdir -p /var/lib/rancher/k3s/agent/images/
cp ./k3s-airgap-images-amd64.tar /var/lib/rancher/k3s/agent/images/

拷贝k3s执行文件,并且赋权

chmod 755 k3s
cp k3s /usr/local/bin/

4.2外部安装数据库(可选)

   本次安装外部安装mysql数据库,并且创建k3s数据库

4.3k3s安装

有需要可以将sh脚本下载成文件(注意同样要修改权限)

4.3.1主-服务安装

安装过程中如果提示缺啥就装啥,每个k3s服务器都装

curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_VERSION=v1.26.9+k3s1 INSTALL_K3S_MIRROR=cn INSTALL_K3S_SKIP_DOWNLOAD=true sh -s - server --datastore-endpoint="mysql://用户名:密码@tcp(ip地址:端口)/k3s"

4.3.2查询token
 

cat /var/lib/rancher/k3s/server/token

复制主机token信息

4.3.3副主-服务安装

curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn INSTALL_K3S_SKIP_DOWNLOAD=true  INSTALL_K3S_VERSION=v1.26.9+k3s1  sh  -s - server --datastore-endpoint="mysql://账号:密码@tcp(ip地址:端口)/k3s" --token "主服务token"

4.3.4代理安装

curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn INSTALL_K3S_SKIP_DOWNLOAD=true   K3S_URL=https://域名(host中编写的主机服务域名):6443 INSTALL_K3S_VERSION=v1.26.9+k3s1 K3S_TOKEN="主服务token" sh -

4.3.5设置镜像资源

vi /etc/rancher/k3s/registries.yaml

内容如下:

mirrors:镜像库域名或者ip:endpoint:- "https://镜像库域名或者ip"
configs:镜像库域名或者ip:auth:username: 镜像仓库的用户名password: 镜像仓库的密码tls:insecure_skip_verify: true #跳过安全认证

4.3.6设置集群配置文件

两个主服务中复制配置文件到root中,并且修改中间的127.0.0.1为nginx中配置的负载均衡域名

kubectl --kubeconfig ~/.kube/config get pods --all-namespaces 

4.3.7重启服务

重新加载配置文件

systemctl daemon-reload

重新启动主-服务

systemctl restart k3s

重启副主-服务

systemctl restart k3s-agent

5.离线安装rancher

5.1准备离线文件

 根据版本不同下载不同文件rancher-2.7.9.tgz,cert-manager-v1.13.2.tgz

提前通过镜像库下载镜像文件

k3s crictl pull 镜像库域名/rancher/rancher:v2.7.9

 5.2安装cer-manager仓库

5.2.1创建命名空间

kubectl create namespace cert-manager

5.2.2创建资源定义

kubectl apply -f cert-manager/cert-manager-crd.yaml

 5.2.3安装cert-manager

helm install cert-manager ./cert-manager-<VERSION>.tgz \--namespace cert-manager \--set image.repository=镜像库域名地址/quay.io/jetstack/cert-manager-controller \--set webhook.image.repository=镜像库域名地址/quay.io/jetstack/cert-manager-webhook \--set cainjector.image.repository=镜像库域名地址/quay.io/jetstack/cert-manager-cainjector \--set startupapicheck.image.repository=镜像库域名地址/quay.io/jetstack/cert-manager-ctl

 5.3安装rancher

5.3.1创建命名空间

kubectl create namespace cattle-system

5.3.2安装rancher 

helm install rancher ./rancher-2.7.9.tgz --namespace cattle-system --set hostname=负载均衡地址 --set rancherImage=镜像库域名地址/rancher/rancher --set systemDefaultRegistry=镜像库域名地址/rancher --set useBundledSystemChart=true

 5.3.3获取初次登录密码

kubectl get secret --namespace cattle-system bootstrap-secret -o go-template='{{.data.bootstrapPassword|base64decode}}{{"\n"}}'

6.其他内容

6.1关闭多路径

systemctl stop multipathd.service
vi /etc/multipath.conf
blacklist {
devnode "^sd[a-z0-9]+"
}
systemctl restart multipathd.service

6.2 缺少restorecon命令支持

执行如下命令安装

apt-get install policycoreutils

6.3安装longhorn时个节点安装nfsutil

sudo apt install nfs-common

6.4一些常用命令

查看所有pod

kubectl --kubeconfig ~/.kube/config get pods --all-namespaces 

 查看当个pod状态

kubectl describe pod pod名称 -n 命名空间  

 查看单pod日志

kubectl  logs -f -n  命名空间  pod名称 --since=1h

删除pod

 kubectl delete pod pod名称  -n 命名空间

 删除命名空间

kubectl delete namespace 命名空间

查看k3s日志

tail -200f /var/log/syslog | grep k3s

卸载主服务k3s

/usr/local/bin/k3s-uninstall.sh

卸载代理服务k3s

/usr/local/bin/k3s-agent-uninstall.sh

出现mysql数据查询缓慢,调整最大连接数,更换引擎

这篇关于K3S+Rancher的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/612425

相关文章

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧! 什么是华为云Flexus X实例 华为云Flexus X实例云服务是新一代开箱即用、体

rancher搭建k8s及jenkins自动化部署

1、准备环境 角色IP用途k8s-rancher-master192.168.3.63master节点k8s-rancher-node01192.168.3.64node节点k8s-rancher-node02192.168.3.66node节点k8s-rancher-server192.168.2.33rancher-server节点 注: 服务器名需要配置不同,相同服务器名不能加入nod

k3s安装部署说明

前言: 为什么不是k8s,k8s机子要求资源太高了,先来个简单的k3s 1:环境 ubuntu18 2安装docker ubuntu18.0.4 如下 1:禁用防火墙及SELinux(可能需要禁止) systemctl stop firewalld && systemctl disable firewalld 2: 开启路由转发 sudo vim /etc/sysctl.conf 打开 ne

容器编排工具的选择:Kubernetes(K8s)与 K3s 的权衡与实践|Kubernetes|K3s|容器编排|资源受限环境

目录 1. 什么是 Kubernetes(K8s)? 2. 什么是 K3s? 3. K8s 与 K3s 的核心区别 3.1 架构上的区别 3.2 功能上的差异 3.3 性能与资源使用 4. K8s 与 K3s 的适用场景分析 4.1 资源受限环境 4.2 大规模集群 4.3 开发与测试环境 5. 如何在本地环境中使用 K3s 进行学习和测试 5.1 K3s 的安装与基本操作

【rancher镜像】修改rancher官方镜像仓库为私有仓库

背景 在使用rancher构建k8s时,由于中国区网络问题经常没法访问docker的官方仓库镜像docker.io,而rancher在构建k8s时,会默认从docker.io去下载镜像,由于网络原因,构建就会存在问题,镜像无法下载,rancher的组件没法初始化 现象 比如以下,rancher无法从官方仓库下载到rancher/shell:v0.1.21,rancher/mirrored

OpenShift 与 Rancher

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页,持续学习,不断总结,共同进步,活到老学到老 导航剑指大厂系列:全面总结 运维核心技术:系统基础、数据库、网路技术、系统安全、自动化运维、容器技术、监控工具、脚本编程、云服务等。 常用运维工具系列:常

使用极狐GitLab进行K3S集群的维护与控制

极狐GitLab 是 GitLab 在中国的发行版,专门面向中国程序员和企业提供企业级一体化 DevOps 平台,用来帮助用户实现需求管理、源代码托管、CI/CD、安全合规,而且所有的操作都是在一个平台上进行,省事省心省钱。可以一键安装极狐GitLab,详情可以参考极狐GitLab 下载安装官网。 K3S 是一个轻量级的 Kubernetes 发行版,安装运行所需的资源比完整的 Kuber

rancher快照备份至S3

巧用rancher的S3快照备份功能,快速实现集群复制、集群转移、完全崩溃后的极限修复 1.进入集群管理,在对应的集群菜单后,点击编辑配置 2.选择ETCD,启用,Backup Snapshots to S3选项 并填入你的minio 3 配置成功后 手动创建备份或者等到下一个自动备份周期,即可在快照管理页面看到local下方多了S3存储的快照信息 巧用1 集群复制 类复制步骤:

K3S部署

k3s官网 一个server端、一个Agent端, Kubernetes control plane 组件的操作都封装在单个二进制文件和进程中 requirements 最低1U 512MB K3s 的性能取决于数据库的性能。为确保最佳速度,我们建议尽可能使用 SSD K3s 服务器需要端口 6443 才能被所有节点访问2379,2380。 脚本方式安装 curl -sfL htt

【云原生】Kubernetes----Rancher助力Kubernetes监控

目录 引言 一、为什么需要监控K8s集群? 二、Rancher监控K8s集群的优势 三、Rancher和k8s的区别 四、Rancher 安装及配置 (一)安装rancher 1.下载镜像 2.运行容器 3.登录Rancher平台 4.添加集群 5.查看集群 6.Rancher 部署监控系统 7.使用Rancher仪表盘管理 k8s 集群 7.1 创建名称空间 7.2