确认验证
[root@master01 ~]# kubectl get nodes
#节点状态
[root@master01 ~]# kubectl get cs
#组件状态
[root@master01 ~]# kubectl get serviceaccount
#服务账户
[root@master01 ~]# kubectl cluster-info
#集群信息
[root@master01 ~]# kubectl get pod -n kube-system -o wide #所有服务状态
提示:更多Kubetcl使用参考:https://kubernetes.io/docs/reference/kubectl/kubectl/https://kubernetes.io/docs/reference/kubectl/overview/更多kubeadm使用参考:https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/
Metrics部署
Metrics介绍
Kubernetes的早期版本依靠Heapster来实现完整的性能数据采集和监控功能,Kubernetes从1.8版本开始,性能数据开始以Metrics API的方式提供标准化接口,并且从1.10版本开始将Heapster替换为Metrics Server。在Kubernetes新的监控体系中,Metrics Server用于提供核心指标(Core Metrics),包括Node、Pod的CPU和内存使用指标。
对其他自定义指标(Custom Metrics)的监控则由Prometheus等组件来完成。
开启聚合层
有关聚合层知识参考:https://blog.csdn.net/liukuan73/article/details/81352637
kubeadm方式部署默认已开启。
获取部署文件
[root@master01 ~]# mkdir metrics
[root@master01 ~]# cd metrics/
[root@master01 metrics]# wget https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.3.6/components.yaml
[root@master01 metrics]# vi components.yaml
……
apiVersion: apps/v1
kind: Deployment
……
spec:
replicas: 3
#根据集群规模调整副本数
……
spec:
hostNetwork: true
……
- name: metrics-server
image: k8s.gcr.io/metrics-server-amd64:v0.3.6
imagePullPolicy: IfNotPresent
args:
- --cert-dir=http://www.likecs.com/tmp
- --secure-port=4443
- --kubelet-insecure-tls
- --kubelet-preferred-address-types=InternalIP,Hostname,InternalDNS,ExternalDNS,ExternalIP #追加此args
……
正式部署
[root@master01 metrics]# kubectl apply -f components.yaml
[root@master01 metrics]# kubectl -n kube-system get pods -l k8s-app=metrics-server
NAME
READY STATUS RESTARTS AGE
metrics-server-7b97647899-8txt4 1/1
Running 0
53s
metrics-server-7b97647899-btdwp 1/1
Running 0
53s
metrics-server-7b97647899-kbr8b 1/1
Running 0
53s
查看资源监控
[root@k8smaster01 ~]# kubectl top nodes
[root@master01 metrics]# kubectl top pods --all-namespaces
提示:Metrics Server提供的数据也可以供HPA控制器使用,以实现基于CPU使用率或内存使用值的Pod自动扩缩容功能。部署参考:https://linux48.com/container/2019-11-13-metrics-server.html有关metrics更多部署参考:https://kubernetes.io/docs/tasks/debug-application-cluster/resource-metrics-pipeline/开启开启API Aggregation参考:https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/API Aggregation介绍参考:https://kubernetes.io/docs/tasks/access-kubernetes-api/configure-aggregation-layer/
Nginx ingress部署
参考附020.Nginx-ingress部署及使用
Dashboard部署
设置标签
[root@master01 ~]# kubectl label nodes master01
dashboard=yes
[root@master01 ~]# kubectl label nodes master02
dashboard=yes
[root@master01 ~]# kubectl label nodes master03 dashboard=yes
创建证书