# 单云部署k3s
安装k3s
由于默认k3s安装会安装traefik
,而我用惯了ingress-nginx
所以就移除了traefik
的安装
# k3s v1.25+ 之后 flag –no-deploy 弃用,更改为 –disable,但安装前需要确认 rancher 支持的 k3s 版本范围,目前 v1.25+ 不在 rancher 支持范围内,需要使用环境变量 INSTALL_K3S_VERSION 指定安装版本
export INSTALL_K3S_EXEC="server --disable traefik"
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -
sudo cp /etc/rancher/k3s/k3s.yaml $HOME/.kube/config
基于helm安装ingress-nginx
安装helm
wget https://get.helm.sh/helm-v3.14.3-linux-amd64.tar.gz && tar -zxvf helm-v3.14.3-linux-amd64.tar.gz -C /tmp && mv /tmp/linux-amd64/helm /usr/local/bin/ && chmod +x /usr/local/bin/helm
添加ingress-nginx
官方仓库
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm repo update
获取 ingress-nginx
helm pull ingress-nginx/ingress-nginx
tar -zxvf ingress-nginx-4.10.0.tgz && rm ingress-nginx-4.10.0.tgz # 注意您下的版本进行解压
cd ingress-nginx
修改国内镜像地址
修改controller
的镜像地址
无hostNetwork
修改
default:
.....
externalTrafficPolicy: "Local"
多云部署k3s
部署server
修改对应的外部ip
$SERVER_IP -> 101.43.95.147
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_EXEC="server --disable traefik" INSTALL_K3S_MIRROR=cn K3S_TOKEN=token_1 sh -s - --node-external-ip="$SERVER_IP" --flannel-backend=wireguard-native --flannel-external-ip
部署agent
修改对应的外部ip
$AGENT_IP -> 117.72.40.1
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | K3S_URL=https://101.43.95.147:6443 INSTALL_K3S_MIRROR=cn K3S_TOKEN=token_1 sh -s - --node-external-ip="$AGENT_IP"
安装ingres-nginx
安装方式与k8s保持一致
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm repo update
helm pull ingress-nginx/ingress-nginx
tar -zxvf ingress-nginx-4.10.0.tgz && rm ingress-nginx-4.10.0.tgz # 注意您下的版本进行解压
cd ingress-nginx
vim values.yaml
修改国内镜像地址
修改hostNetwork
修改dnsPolicy
helm install -n ingress-nginx ingress-nginx/ingress-nginx .