k8s安装部署监控
镜像地址修改:修改前:- image: registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.9.2修改后:image: docker.io/bitnami/kube-state-metrics:latest。
监控部署
kube-state-metric部署
wget https://github.com/kubernetes/kube-state-metrics/archive/refs/tags/v2.9.2.tar.gz -k
cd /root/k8s-install/kube-state-metric/kube-state-metrics-2.9.2/examples/standard
执行apply之前,最好修改镜像源地址
镜像地址修改:
修改前:- image: registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.9.2
修改后:image: docker.io/bitnami/kube-state-metrics:latest
[root@k8s-master standard]# ls -lhtr
total 20K
-rw-rw-r--. 1 root root 447 May 31 2023 service.yaml
-rw-rw-r--. 1 root root 270 May 31 2023 service-account.yaml
-rw-rw-r--. 1 root root 2.0K May 31 2023 cluster-role.yaml
-rw-rw-r--. 1 root root 418 May 31 2023 cluster-role-binding.yaml
-rw-rw-r--. 1 root root 1.5K Apr 15 08:26 deployment.yaml
[root@k8s-master standard]# kubectl apply -f ./
[root@k8s-master standard]# cat deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app.kubernetes.io/component: exporter
app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/version: 2.9.2
name: kube-state-metrics
namespace: kube-system
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: kube-state-metrics
template:
metadata:
labels:
app.kubernetes.io/component: exporter
app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/version: 2.9.2
spec:
automountServiceAccountToken: true
containers:
- image: docker.io/bitnami/kube-state-metrics:latest
livenessProbe:
httpGet:
path: /healthz
port: 8080
initialDelaySeconds: 5
timeoutSeconds: 5
name: kube-state-metrics
ports:
- containerPort: 8080
name: http-metrics
- containerPort: 8081
name: telemetry
readinessProbe:
httpGet:
path: /
port: 8081
initialDelaySeconds: 5
timeoutSeconds: 5
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: true
runAsNonRoot: true
runAsUser: 65534
seccompProfile:
type: RuntimeDefault
nodeSelector:
kubernetes.io/os: linux
serviceAccountName: kube-state-metrics
metric-server安装部署:
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
Prometheus安装部署
安装指导:
https://github.com/techiescamp/kubernetes-prometheus?tab=readme-ov-file
[root@k8s-master kubernetes-prometheus-master]# cat prometheus-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: prometheus-deployment
namespace: monitoring
labels:
app: prometheus-server
spec:
replicas: 1
selector:
matchLabels:
app: prometheus-server
template:
metadata:
labels:
app: prometheus-server
spec:
containers:
- name: prometheus
image: prom/prometheus
args:
- "--config.file=/etc/prometheus/prometheus.yml"
- "--storage.tsdb.path=/prometheus/"
ports:
- containerPort: 9090
volumeMounts:
- name: prometheus-config-volume
mountPath: /etc/prometheus/
- name: prometheus-storage-volume
mountPath: /prometheus/
-- 配置Prometheus到指定节点
nodeName: k8s-node2
volumes:
- name: prometheus-config-volume
configMap:
defaultMode: 420
name: prometheus-server-conf
--配置Prometheus使用本地磁盘存放监控数据
- name: prometheus-storage-volume
hostPath:
path: /root/prometheus
type: ""
nodeexporter安装
指导
https://github.com/bibinwilson/kubernetes-node-exporter/blob/main/README.md
更多推荐
所有评论(0)