白日放歌须纵酒,青春作伴好还乡。这篇文章主要讲述云服务器部署k3s相关的知识,希望能为你提供帮助。
云服务器部署??k3s?
??并使用??docker?
?作为默认容器
准备工作,??master?
??和??agent?
?节点都需要
准备k3s的相关文件,这里我都放在百度网盘了,也可以去Github下载最新文件
下载地址:https://pan.baidu.com/s/1r-XAAE9Or3_kep2Mue5I8g
提取码:4xyk
上传文件到服务器
安装?
?docker?
??(??master?
??和??agent?
?节点都需要)??参考:https://www.chenmx.net/?p=31?
?设置?
?hostname?
??(??master?
??和??agent?
?节点都需要)# 根据规划设置主机名hostname:名称,方便记忆
hostnamectl set-hostname hostname
# 在master节点添加hosts
cat > > /etc/hosts < < EOF
82.156.215.56 k3s-master #k8smaster-> 上文中的hostname
124.71.156.166 k3s-node #同理
49.232.0.68 k3s-node1 #同理
EOF
建立虚拟网卡(?
?master?
??和??agent?
?节点都需要)cat > /etc/sysconfig/network-scripts/ifcfg-eth0:1 < < EOF
BOOTPROTO=static
DEVICE=eth0:1
IPADDR=82.156.215.56 #你的公网IP
PREFIX=32
TYPE=Ethernet
USERCTL=no
ONBOOT=yes
EOF
#重启网卡
systemctl restart network
查看全部IP
ip addr
重启生效(?
?master?
??和??agent?
?节点都需要)??reboot?
?给予相应的权限(?
?master?
??和??agent?
?节点都需要)chmod 755 k3s
chmod 755 install.sh
chmod 755 k3s-airgap-images-amd64.tar
创建链接(?
?master?
??和??agent?
?节点都需要)cp k3s /usr/local/bin/k3s
将所需镜像文件拷贝(?
?master?
??和??agent?
?节点都需要)mkdir -p /var/lib/rancher/k3s/agent/images/
cp k3s-airgap-images-amd64.tar /var/lib/rancher/k3s/agent/images/
docker导入镜像(?
?master?
??和??agent?
?节点都需要)docker load -i k3s-airgap-images-amd64.tar
离线安装?
?k3s?
??并指定??docker?
??为默认容器(??master?
?节点执行)INSTALL_K3S_SKIP_DOWNLOAD=true ./install.sh - --docker --node-external-ip=< PUBLIC_IP> --node-ip=< PUBLIC_IP> --kube-apiserver-arg="advertise-address=< PUBLIC_IP> " --kube-apiserver-arg="external-hostname=< PUBLIC_IP> " --tls-san=< PUBLIC_IP>
#< PUBLIC_IP> 为你的公网ip
#集群内网互通的直接执行
INSTALL_K3S_SKIP_DOWNLOAD=true ./install.sh - --docker
更改配置文件(?
?master?
?节点执行)vim /etc/rancher/k3s/k3s.yaml
#修改server的地址为公网ip
server: https://public_ip:6443
#获取节点信息
kubectl get nodes
kubectl edit nodes node_name
#在public-ip下增加一行,申明使用公网ip,后续添加agent节点,需要给agent节点申明公网ip
flannel.alpha.coreos.com/public-ip: 10.0.8.15
flannel.alpha.coreos.com/public-ip-overwrite: public_ip##增加这行
#集群内网互通的不需要这一步
验证是否成功
#查看节点信息
kubectl get node -o wide
#查看所有pod信息
kubectl get pods -all-namespaces -o wide
查看集群?
?token?
???cat /var/lib/rancher/k3s/server/node-token?
?重启?
?k3s?
?systemctl daemon-reload
systemctl restart k3s
添加agent节点
INSTALL_K3S_SKIP_DOWNLOAD=true K3S_URL="https://master_ip:6443" K3S_TOKEN="K1048516504rr613d52wdad6ae6673bd41f1d0b329dd77fea141c274ae8b030278b::server:f6c4af149cd5ce538fbf598236bcdca8" ./install.sh - --docker --node-external-ip=public_ip --node-ip=public_ip --tls-san=public_ip
#public_ip为agent节点的公网ip
#master_ip为master节点的公网ip
#K3S_TOKEN 加入集群的token
验证agent是否加入成功(?
?master?
?节点执行)kubectl get nodes -o wide
#成功后执行更改配置文件那步,agent节点申明使用公网ip
在集群中安装?
?kubesphere?
?踩坑:这一步在配置完?
?master?
??节点配置完毕就安装,不能等??agent?
??节点加入后安装,否可能会出现??kubesphere?
? 安装到任意一节点,导致登陆报错失败。??官方文档??docker pull kubesphere/ks-installer:v3.1.0
docker pull csiplugin/snapshot-controller:v2.0.1
docker pull kubesphere/notification-manager-operator:v1.0.0
docker pull kubesphere/notification-manager:v1.0.0
?kubesphere?
?##下载失败就多试几次
wget https://github.com/kubesphere/ks-installer/releases/download/v3.1.0/kubesphere-installer.yaml
wget https://github.com/kubesphere/ks-installer/releases/download/v3.1.0/cluster-configuration.yaml
kubectl apply -f kubesphere-installer.yaml
kubectl apply -f cluster-configuration.yaml
#查看日志
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath={.items[0].metadata.name}) -f
??
浏览器访问 http://master_public_ip:30880
初始用户名:admin
密码:P@88w0rd
#master节点配置文件
/etc/systemd/system/k3s.service
#agent节点配置文件
/etc/systemd/system/k3s-agent.service
#kubectl 命令自动补全
yum install bash-completion
source /usr/share/bash-completion/bash_completion
source < (kubectl completion bash)
#查看集群默认DNS
cat /etc/resolv.conf
我安装过程查看了很多文章,很多都说需要升级CentOS7的内核,但是我升级内核后发现k3s会安装失败,所以我都是用默认的内核。如果有知道的大佬告诉我哈~~
欢迎大家来我的个人小站逛逛:https://www.chenmx.net
Q.E.D.
【云服务器部署k3s】
推荐阅读
- 好记性不如烂笔头:centos 7 分区,挂载,
- CDH快速安装2-web安装
- 阿里云镜像切换阿里巴巴开源镜像站镜像——Debian镜像
- java的jdk1.8快速安装
- Jenins插件SSH plugin用法
- 使用ansible一键安装 k8s
- CentOS7.6升级内核
- 阿里云镜像切换阿里巴巴开源镜像站镜像——Deepin镜像
- 阿里云镜像切换阿里巴巴开源镜像站镜像——Fedora镜像