1.健康检查方式 1
判断容器是不是正常的,在没有健康检查的时候,k8s 只有在容器的入口程序被杀掉了 他才会进行 pod 的重启,其他的情况他都不会在意。
健康检查的配置:健康检查的探针,用来判断容器是不是存活的 ,这里是执行一条 shell 命令来判断这个容器是不是正常的,判断 java 进程是不是存在。这个 shell 执行的结果是 0 或非 0,为 0 的时候就是健康的,非 0 就是不健康的。健康检查非 0 的时候他是进行 pod 的重启。
这个探针就是发现程序有问题然后重启的
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
image: '*****'
imagePullPolicy: IfNotPresent
livenessProbe:
exec:
command:
- /bin/sh
- '-c'
- ps
- '-ef|grep'
- simu_ueps|grep
- '-v'
- grep
failureThreshold: 3
initialDelaySeconds: 60
periodSeconds: 20
successThreshold: 1
timeoutSeconds: 10
|
方式一:
从集群中每个节点获取 pod CIDR 地址。
1
|
kubectl get nodes -o jsonpath='{.items[*].spec.podCIDR}'
|
方式二:
kube-proxy 所使用的 pod 网络 CIDR。
1
|
kubectl cluster-info dump | grep -m 1 cluster-cidr
|
方式三:
--cluster-cidr
/ --pod-network-cidr
反馈给 kube-controller-manager 的配置。
1
|
ps -ef | grep "cluster-cidr"
|
方式四:
在文件 /etc/kubernetes/manifests/kube-controller-manager.yaml
中的
1
2
3
4
|
# sudo grep cidr /etc/kubernetes/manifests/kube-*
/etc/kubernetes/manifests/kube-controller-manager.yaml: - --allocate-node-cidrs=true
/etc/kubernetes/manifests/kube-controller-manager.yaml: - --cluster-cidr=192.168.0.0/16
/etc/kubernetes/manifests/kube-controller-manager.yaml: - --node-cidr-mask-size=24
|
方式五:
用 kubeadm 方式获取
1
|
kubeadm config view | grep Subnet
|