Barka da rana, mazauna Habr!
A yau ina so in gaya muku yadda da gaske muke son saka idanu akan postgres da wasu ma'aurata a cikin rukunin OpenShift da yadda muka yi.
A kofar shiga suna da:
- Yanzun
- Hanya
- Prometheus
Don aiki tare da aikace-aikacen java, komai ya kasance mai sauƙi kuma a bayyane, ko kuma ya zama daidai:
1) Ƙara don ginawa.gradle
implementation "io.micrometer:micrometer-registry-prometheus"
2) Gudun prometheus tare da sanyi
- job_name: 'job-name'
metrics_path: '/actuator/prometheus'
scrape_interval: 5s
kubernetes_sd_configs:
- role: pod
namespaces:
names:
- 'name'
3) Ƙara nuni zuwa Grafana
Komai ya kasance mai sauƙi kuma mai sauƙi har sai lokacin ya zo don saka idanu kan sansanonin da ke kusa da su a cikin sunanmu (eh, wannan mummunan ne, babu wanda ke yin wannan, amma abubuwa daban-daban sun faru).
Yaya yake aiki?
Baya ga kwafsa tare da postgres da prometheus kanta, muna buƙatar ƙarin mahallin - mai fitarwa.
Mai fitarwa a cikin mahimmin ra'ayi shine wakili wanda ke tattara awo daga aikace-aikace ko ma sabar. Don mai aikawa na postgres, an rubuta shi a cikin Go, yana aiki akan ka'idar gudanar da rubutun SQL a cikin bayanan bayanan sannan kuma prometheus yana ɗaukar sakamakon da aka samu. Wannan kuma yana ba ku damar faɗaɗa ma'aunin da aka tattara ta ƙara naku.
Bari mu tura shi kamar haka (misali deployment.yaml, mara ɗauri):
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: postgres-exporter
labels:
app: {{ .Values.name }}
monitoring: prometheus
spec:
serviceName: {{ .Values.name }}
replicas: 1
revisionHistoryLimit: 5
template:
metadata:
labels:
app: postgres-exporter
monitoring: prometheus
spec:
containers:
- env:
- name: DATA_SOURCE_URI
value: postgresdb:5432/pstgr?sslmode=disable
- name: DATA_SOURCE_USER
value: postgres
- name: DATA_SOURCE_PASS
value: postgres
resources:
limits:
cpu: 100m
memory: 50Mi
requests:
cpu: 100m
memory: 50Mi
livenessProbe:
tcpSocket:
port: metrics
initialDelaySeconds: 30
periodSeconds: 30
readinessProbe:
tcpSocket:
port: metrics
initialDelaySeconds: 10
periodSeconds: 30
image: exporter
name: postgres-exporter
ports:
- containerPort: 9187
name: metrics
Hakanan yana buƙatar sabis da raɗaɗin hoto
Bayan tura sojoji, muna son kowa ya ga juna.
Ƙara wannan yanki zuwa tsarin Prometheus:
- job_name: 'postgres_exporter'
metrics_path: '/metrics'
scrape_interval: 5s
dns_sd_configs:
- names:
- 'postgres-exporter'
type: 'A'
port: 9187
Sa'an nan kuma duk abin ya yi aiki, abin da ya rage shi ne ƙara duk wannan kayan a cikin grafana kuma a ji dadin sakamakon.
Baya ga ikon ƙara tambayoyin ku, zaku iya canza saituna a cikin prometheus, tattara ƙarin ma'auni masu niyya.
An yi haka ta hanya ɗaya don:
- Kafka
- Elasticsearch
- mongo
PS Duk bayanan sunaye, tashar jiragen ruwa da sauran ana ɗaukar su daga iska kuma basu ƙunshi kowane bayani ba.
Hanyoyi masu amfani:
source: www.habr.com