k8s的精简版k3s安装
官网https://www.rancher.cn/k3s/k3s 文档https://docs.rancher.cn/k3s/安装curl -sfL https://get.k3s.io | sh -国内用户请用curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -安
官网
k3s 文档
安装
curl -sfL https://get.k3s.io | sh -
国内用户请用
curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -
如果你已经安装过docker,可以在docker中安装,如果不想用docker方式请略过
curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn INSTALL_K3S_EXEC="server --docker" sh -
安装配置
K3s Server 配置参考
https://docs.rancher.cn/docs/k3s/installation/install-options/server-config/_index
K3s Agent配置参考
https://docs.rancher.cn/docs/k3s/installation/install-options/agent-config/_index
部署 Kubernetes 仪表盘
GITHUB_URL=https://github.com/kubernetes/dashboard/releases
VERSION_KUBE_DASHBOARD=$(curl -w '%{url_effective}' -I -L -s -S ${GITHUB_URL}/latest -o /dev/null | sed -e 's|.*/||')
sudo k3s kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/${VERSION_KUBE_DASHBOARD}/aio/deploy/recommended.yaml
仪表盘 RBAC 配置
重要: 本指南中创建的 admin-user 将在仪表板中拥有管理权限。
创建以下资源清单文件:
dashboard.admin-user.yml
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kubernetes-dashboard
dashboard.admin-user-role.yml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kubernetes-dashboard
部署admin-user
配置:
sudo k3s kubectl create -f dashboard.admin-user.yml -f dashboard.admin-user-role.yml
获得 Bearer Token
sudo k3s kubectl -n kubernetes-dashboard describe secret admin-user-token | grep '^token'
本地访问仪表板
要访问仪表板,你必须创建一个安全通道到你的 K3s 集群。
sudo k3s kubectl proxy
现在可以通过以下网址访问仪表盘:
- http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/
- 使用
admin-user
Bearer Token
Sign In
高级:远程访问仪表板
请参阅仪表盘文档。使用端口
转发来访问集群中的应用程序。
端口转发
:https://kubernetes.io/docs/tasks/access-application-cluster/port-forward-access-application-cluster/
命令使用
安装完成后,直接使用 kubectl xxx
跟 k8s 命令一样
如果发现 kubectl xxx
命令不存在那么要做别名映射 或者 软连接
别名映射
alias kubectl='k3s kubectl'
软连接
ln -sf /usr/bin/kubectl /usr/local/bin/k3s
查看nodes
kubectl get nodes
K3S节点修改节点POD数量
vim /etc/systemd/system/k3s.service
假设要改变POD数量为 900
,那么kubelet-arg
参数为--kubelet-arg max-pods=900
修改ExecStart
后内容
ExecStart=/usr/local/bin/k3s \
server \
--kube-apiserver-arg max-pods=900
更新配置,和重启
#更新配置
systemctl daemon-reload
#重启
systemctl restart k3s
K3S修改端口范围
https://docs.rancher.cn/docs/k3s/installation/install-options/server-config/_index/#%E7%BD%91%E7%BB%9C
参数为 --service-node-port-range=30000-32767
,其中30000-32767
为默认端口范围
编辑文件vim /etc/systemd/system/k3s.service
ExecStart=/usr/local/bin/k3s \
server \
--kube-apiserver-arg service-node-port-range=1-65535
或者执行命令
sed -i 's#server.*#server \\ \n--kube-apiserver-arg service-node-port-range=80-65535 \n\n#g' /etc/systemd/system/k3s.service
#查看是否自动 添加
cat /etc/systemd/system/k3s.service
更新配置,和重启
#更新配置
systemctl daemon-reload
#重启
systemctl restart k3s
k3s私有镜像仓库
官方地址
https://docs.rancher.cn/docs/k3s/installation/private-registry/_index
vim /etc/rancher/k3s/registries.yaml
mirrors:
foxwho.com:
endpoint:
- "https://foxwho.com:5000"
"10.0.0.254:30500":
endpoint:
- "http://10.0.0.254:30500"
更新配置,和重启
#更新配置
systemctl daemon-reload
#重启
systemctl restart k3s
更改k3s 安装目录
/var/lib/kubelet
/var/lib/rancher
/run/k3s
安装k3s前 执行
mkdir -p /k8s/lib-kubelet && \
ln -s /k8s/lib-kubelet /var/lib/kubelet && \
mkdir -p /k8s/lib-rancher && \
ln -s /k8s/lib-rancher /var/lib/rancher && \
mkdir -p /k8s/k3s-run && \
ln -s /k8s/k3s-run /run/k3s
/k8s/lib-kubelet/ 为自行定义的目录
/k8s/lib-rancher/ 为自行定义的目录
/k8s/k3s-run/ 为自行定义的目录
重新安装k3s时 执行
systemctl stop k3s && \
rm -rf /k8s/lib-kubelet/* && \
rm -rf /k8s/lib-rancher/* && \
rm -rf /k8s/k3s-run/*
已安装的 k3s 迁移目录
先停止k3s,禁用自动启动
systemctl stop k3s
systemctl disable k3s
接着,重启服务器
reboot
服务器启动成功后,执行如下
mv /var/lib/kubelet /k8s/lib-kubelet && \
ln -s /k8s/lib-kubelet /var/lib/kubelet && \
mv /var/lib/rancher /k8s/lib-rancher && \
ln -s /k8s/lib-rancher /var/lib/rancher && \
mv /run/k3s /k8s/k3s-run && \
ln -s /k8s/k3s-run /run/k3s
最后启动k3s,并设置自动启动
systemctl start k3s
systemctl enable k3s
其他普通用户可以使用 k8s 命令 kubectl等
那么设置 如下后,就可以使用kubectl
了
sudo chmod 644 /etc/rancher/k3s/k3s.yaml
更多推荐
所有评论(0)