# 如何移除节点
# 在master上运行
#封锁node,排干node上的pod
kubectl drain <node名称> --delete-local-data --force --ignore-daemonsets
# 等待状态变成SchedulingDisabled
kubectl get nodes
# 删除节点
kubectl delete node <node名称>
# 在节点上运行
# 脱离master
kubeadm reset
# DNS存在问题
(不推荐使用calico,我踩坑了还没解决,换了weaver才解决)
源:
https://segmentfault.com/a/1190000015639327
# 创建证书
# 举个例子
kubectl create secret tls <tls-secret的名称> --cert=<公钥pem文件> --key=<私钥key文件>
# nginx 配置
有两种配置,需要看nginx-ingress是哪个版本(一个是nginx.org/.... ,一个是nginx.ingress.kubernetes.io/...)
https://github.com/nginxinc/kubernetes-ingress/blob/master/docs/nginx-ingress-controllers.md
来源:
https://github.com/nginxinc/kubernetes-ingress/blob/master/docs/configmap-and-annotations.md
# 安装dashboard
来源:
https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/
下载https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yaml
自己改一下 修改kubernete-dashboard的service
增加
type:NodePort
nodePort: 8001
然后apply -f 运行一下 就能直接在外部访问。
访问的适合需要token
kubectl -n kube-system describe $(kubectl -n kube-system get secret -n kube-system -o name | grep namespace) | grep token
源: https://blog.csdn.net/weixin_34072458/article/details/89559852
# 通过阿里云仓库拉取镜像
源:https://www.jianshu.com/p/fd13c2762d81
kubectl create secret docker-registry regsecret --docker-server=registry.cn-shanghai.aliyuncs.com --docker-username=name@1916434534983968 --docker-password=XXXXXXXX
yml文件加入密钥参数
containers:
- name: channel
image: registry.cn-shanghai.aliyuncs.com/yin32167/channel:dev-1.0
ports:
- containerPort: 8114
imagePullSecrets:
- name: regsecret
# 如何设置传输文件大小
annotation中使用
nginx.org/client-max-body-size: 100m
而不是
nginx.ingress.kubernetes.io/proxy-body-size: 100m
需要看使用的nginx-ingress版本
# 如何重启deployment
给容器加一个时间戳即可
kubectl patch deployment <deployment-name> \
-p '{"spec":{"template":{"spec":{"containers":[{"name":"<container-name>","env":[{"name":"RESTART_","value":"'$(date +%s)'"}]}]}}}}'
← 安装与搭建集群