偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

K8S 部署 Prometheus 高可用集群(最新無坑版)

運維
在K8S上部署prometheus一般有兩種常用的方式,一種是Operator安裝,一種是helm安裝。我下面就介紹一下使用operator方式安裝prometheus。

Prometheus 是一個開源的監(jiān)控和警報工具,特別適合云原生環(huán)境,下面是Prometheus的架構圖。

Prometheus有非常多的優(yōu)點:靈活的數(shù)據(jù)模型、簡單易用、高效的查詢語言、拉取模型、高可擴展性、開源社區(qū)支持,告警系統(tǒng)。這些優(yōu)點使得 Prometheus 成為現(xiàn)代 IT 基礎設施監(jiān)控的熱門選擇。

如果要全面了解Prometheus,需要先部署一個測試環(huán)境。

在K8S上部署prometheus一般有兩種常用的方式,一種是Operator安裝,一種是helm安裝。

監(jiān)控K8S效果展示:

我下面就介紹一下使用operator方式安裝prometheus。

在安裝之前需要查看一下兼容性,根據(jù)自己的K8S版本選擇對應的prometheus版本。

下載地址:https://github.com/prometheus-operator/kube-prometheus。

圖片

一、安裝prometheus

1. 下載軟件包

wget https://github.com/prometheus-operator/kube-prometheus/archive/refs/tags/v0.16.0.tar.gz

如果網(wǎng)絡不好,可以在github上下載后再上傳到服務器。

2. 修改配置

(1) 上傳軟件包后解壓

# 解壓
tar -xvf kube-prometheus-0.16.0.tar.gz

# 重命名
mv kube-prometheus-0.16.0  kube-prometheus

(2) 執(zhí)行基本配置安裝

進入到解壓后目錄,可以看到有個manifests目錄這里面是我們所需的yaml,并且先運行manifests目錄下setup中的yaml文件。

[root@k8s-master data]# cd kube-prometheus

# 進入manifests目錄
[root@k8s-master kube-prometheus]# cd manifests/

# 執(zhí)行setup文件夾,將會為prometheus創(chuàng)建名稱空間和一些基礎清單
[root@k8s-master manifests]# kubectl create -f setup/

(3) 修改暴露端口

主要修改prometheus,grafana和alertmanager的Service類型為NodePort,默認是ClusterIP。

【溫馨提示】端口范圍:30000-32767,也可以不指定具體端口,會隨機生成一個。

 修改prometheus暴露端口為30090:

vim prometheus-service.yaml

spec:
  type: NodePort
  ports:
  - name: web
    port: 9090
    targetPort: web
    nodePort: 30090

修改granfana暴露端口為30000:

vim grafana-service.yaml

spec:
  type: NodePort
  ports:
  - name: http
    port: 3000
    targetPort: http
    nodePort: 30000

修改altermanager暴露端口為30093:

vim alertmanager-service.yaml 

spec:
  type: NodePort
  ports:
  - name: web
    port: 9093
    targetPort: web
    nodePort: 30093

3. 安裝prometheus

(1) 執(zhí)行安裝

cd /data/kube-prometheus/manifests/
kubectl apply -f .

(2) 刪除不必要的網(wǎng)絡策略

注意:新版添加了NetworkPolicy,可能會導致grafana、prometheus以及alertmanger等服務無法訪問,所以需要刪除掉:

kubectl delete networkpolicy --all -n monitoring

(3) 查看安裝情況

kubectl get pod -n monitoring

發(fā)現(xiàn)grafana,state-metrics和adapter這三個pod鏡像拉取失敗,這種一般通過添加鏡像加速器來解決。

4. 解決鏡像問題

(1) Adapter鏡像問題

在鏡像前面添加m.daocloud.io:

[root@k8s-master manifests]# grep image prometheusAdapter-deployment.yaml
        image: m.daocloud.io/registry.k8s.io/prometheus-adapter/prometheus-adapter:v0.12.0

# 重新加載
[root@k8s-master manifests]# kubectl replace -f  prometheusAdapter-deployment.yaml

(2) grafana鏡像問題

在鏡像前面添加docker.m.daocloud.io

[root@k8s-master manifests]# grep image grafana-deployment.yaml
        image: docker.m.daocloud.io/grafana/grafana:12.1.0

# 重新加載
[root@k8s-master manifests]# kubectl replace -f grafana-deployment.yaml

(3) kubeStateMetrics鏡像問題

在鏡像前面添加m.daocloud.io。

image: m.daocloud.io/registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.16.0
        image: quay.io/brancz/kube-rbac-proxy:v0.19.1
        image: quay.io/brancz/kube-rbac-proxy:v0.19.1

# 重新加載
kubectl replace -f kubeStateMetrics-deployment.yaml

查看deployment,Service和pod的情況:

kubectl get deploy,svc,po -n monitoring

二、使用promtheus和grafana

1. 登錄界面

(1) grafana登錄界面

默認登錄密碼為admin/admin,首次登錄需要修改密碼!

10.0.0.210:30000

(2) prometheus登錄界面

10.0.0.210:30090

(3) altermanager登錄界面

10.0.0.210:30093

2. 導入監(jiān)控模版

登錄grafana后,自動會連接到prometheus中。

導入監(jiān)控模板,可以從grafana官網(wǎng)查找:

3. 常用的監(jiān)控模板

(1) Dashboard ID:15661

可以查看集群的整體資源狀態(tài)

(2) Dashboard ID:9730

主要展示Deployment,Pod等重要資源對象的可用情況和使用率

至此,Prometheus監(jiān)控搭建好,后續(xù)再分享Alertmanager相關的告警知識。

責任編輯:趙寧寧 來源: 運維李哥不背鍋
相關推薦

2019-09-09 09:53:52

K8s集群架構

2024-05-21 13:03:45

2021-01-11 16:10:28

K8Sapollo代碼

2021-11-04 07:49:58

K8SStatefulSetMySQL

2023-08-29 10:27:32

2023-11-07 07:30:18

Hadoop高可用

2023-09-06 08:12:04

k8s云原生

2023-09-03 23:58:23

k8s集群容量

2023-03-05 21:50:46

K8s集群容量

2013-07-11 13:39:23

Hadoop

2021-04-22 09:46:35

K8SCluster Aut集群

2022-04-22 13:32:01

K8s容器引擎架構

2023-05-04 15:49:59

KafkaK8sKubernetes

2023-09-07 08:58:36

K8s多集群

2021-03-24 06:26:00

kubeadmK8Scontainerd

2021-11-08 07:48:48

K8SKubernetes 集群

2024-05-27 00:00:10

KubernetesK8s云原生

2022-12-28 10:52:34

Etcd備份

2022-01-02 08:42:50

架構部署容器

2023-02-27 07:40:00

點贊
收藏

51CTO技術棧公眾號