k3s集群部署,结合rancher管理项目

本次环境基于:Ubuntu20+、系统架构cmdx86、docker进行。

k3s集群部署安装(离线)

  1. 首先到k3s_github官网下载以下两个文件(根据自己的系统架构选择对应版本,本次下载版本v1.24.15+k3s1)
    在这里插入图片描述

  2. 打开https://get.k3s.io/,将其内容复制另存为k3s-install.sh。 将k3s 、 k3s-airgap-images-amd64.tar 、k3s-install.sh这三个文件保存在你服务器的某个文件夹内。然后依次执行以下命令:

$ sudo chmod +x ./k3s
$ sudo cp ./k3s /usr/local/bin
$ sudo mkdir -p /var/lib/rancher/k3s/agent/images/
$ sudo cp ./k3s-airgap-images-amd64.tar /var/lib/rancher/k3s/agent/images/
$ sudo chmod +x ./k3s-install.sh
#在执行最后一句时,请追加hosts, vim /etc/hosts 将宿主机ip 别名为master
$ sudo INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_EXEC="--docker --node-name=master" ./k3s-install.sh -s - server
  1. 查看是否成功,获取主节点token
cat /var/lib/rancher/k3s/server/node-token
  1. 从节点部署。(修改hosts 别名为node-1,讲一下token更换为第三步获取的值)
INSTALL_K3S_SKIP_DOWNLOAD=true INSTALL_K3S_EXEC="--docker --node-name=node-1" K3S_URL=https://master:6443 \
K3S_TOKEN=K103f7c45e764bc12a43ec27f5c9d2009b839bdd7b70713e249a8bc0a4efa058a1d::server:ac118cdb96a3bf19f33ebe85e024a52b ./k3s-install.sh
  1. 将主节点的/etc/rancher/k3s/k3s.yaml 复制到从节点,从节点如果没有/etc/rancher/k3s目录,则手动创建。然后修改从节点的k3s.yaml内容中的:server:https://127.0.0.1:6443 -> server: https://master:6443
  2. 最后所有节点中修改 /etc/profile。
vim  /etc/profile

追加 KUBECONFIG=/etc/rancher/k3s/k3s.yaml 到最后一行,保存后执行加载 source /etc/profile

  1. 完成后可在主节点查看,返回以下内容则为成功。
kubectl get nodes
#返回信息

在这里插入图片描述

helm + cret-mananger部署

  1. 下载helm :https://get.helm.sh/helm-v3.7.2-linux-amd64.tar.gz (当前系统x86版本,可自行根据版本替换)
  2. 将下载后的包放到服务器任意一个目录,然后执行以下命令:
tar -xvf helm-v3.7.2-linux-amd64.tar.gz
cp -r linux-amd64/helm /usr/local/bin
  1. 验证是否安装成功:helm version ,返回成功回显:version.BuildInfo{Version:“v3.7.2”, GitCommit:“1d11fcb5d3f3bf00dbe6fe31b8412839a96b3dc4”, GitTreeState:“clean”, GoVersion:“go1.16.9”}
  2. 安装 cert-manager
cd /opt 
sudo wget https://github.com/cert-manager/cert-manager/releases/download/v1.12.2/cert-manager.yaml
##部署
kubectl apply -f cert-manager.yaml
##查看部署情况(ps:检查服务运行状态,若长时间有一个服务没有正常运行,
##则删除重来,删除命令:kubectl delete -f cert-manager.yaml, trafik一直Completed没关系)
kubectl get pods -A

在这里插入图片描述
5.设置cret-mananger(还是在 opt目录下)

cat <<EOF > letsencrypt-prod-issuer.yaml
apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
name: letsencrypt-prod
spec:
acme:
  # The ACME server URL
  server: https://acme-v02.api.letsencrypt.org/directory
  # 填写你的email
  email: user@example.com
  # Name of a secret used to store the ACME account private key
  privateKeySecretRef:
    name: letsencrypt-prod
  # Enable the HTTP-01 challenge provider
  solvers:
  # An empty 'selector' means that this solver matches all domains
  - selector: {}
    http01:
      ingress: {}
EOF

rancher部署

  1. 设置helm仓库
##国内仓库
helm repo add rancher-stable https://rancher-mirror.rancher.cn/server-charts/stable
  1. 安装rancher
helm install rancher rancher-stable/rancher \
--namespace cattle-system \
##指定域名 随便自定义一个域名 
--set hostname=rancher.my.cn\
##使用Let's Encrypt颁发的证书
--set ingress.tls.source=letsEncrypt \
##指定版本
--version 2.7.4 \
##指定邮箱
--set letsEncrypt.email=xxx@xx.xx

执行后出现以下信息代表成功
在这里插入图片描述
更多部署情况请参考,官网

  1. rancher安装好后,由于域名是由自己 自定义的所以本机需要访问域名,需要修改wind的host,将安装rancher的宿主机ip 别名为你自定义的域名。
    在这里插入图片描述

4.访问页面
在这里插入图片描述

  • 23
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值