La socodka boostada gudaha Openshift

Maalin wanaagsan, dadka deggan Habr!

Maanta waxaan rabaa inaan kuu sheego sida aan runtii rabnay inaan ula socono boostada iyo dhowr hay'adood oo kale oo ku jira kutlada OpenShift iyo sida aan u sameynay.

Albaabka laga soo galo waxay lahaayeen:

  • Shaqo furan
  • Helm
  • Prometheus


Si loogu shaqeeyo codsiga java, wax walbaa waxay ahaayeen wax fudud oo hufan, ama si aad u saxsan:

1) Ku darida dhisidda.gradle

 implementation "io.micrometer:micrometer-registry-prometheus"

2) Ku orda prometheus qaabeynta

 - job_name: 'job-name'
    metrics_path: '/actuator/prometheus'
    scrape_interval: 5s
    kubernetes_sd_configs:
    - role: pod
      namespaces:
        names: 
          - 'name'

3) Ku darista bandhig Grafana

Wax walba waxay ahaayeen kuwo fudud oo caqli-gal ah ilaa laga gaadhay in lala socdo saldhigyada ku yaal meel u dhow magaceena (haa, tani waa xun, qofna ma sameeyo tan, laakiin waxyaabo kala duwan ayaa dhacaya).

Sidee u shaqeysaa?

Marka lagu daro boodhka leh postgres iyo prometheus laftiisa, waxaan u baahanahay hal qayb oo kale - dhoofiye.

Dhoofiyeha ku jira fikradda aan la taaban karin waa wakiil ka soo aruuriya cabbirada arji ama xitaa server-ka. Wixii dhoofinta postgres, waxay ku qoran tahay Go, waxay ka shaqeysaa mabda'a ah in lagu socodsiiyo qoraallada SQL gudaha kaydka xogta kadibna prometheus waxay qaadataa natiijooyinka la helay. Tani waxay sidoo kale kuu ogolaaneysaa inaad ballaariso cabbirada la soo ururiyey adigoo ku daraya adiga.

Aan u dhigno sidan (tusaale deployment.yaml, aan ku xidhnayn):


---
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

Waxa kale oo ay u baahday adeeg iyo muuqaal muuqaal ah

Ka dib marka la diro, waxaan runtii rabnaa in qof walba uu is arko.

Ku dar qaybta soo socota Prometheus config:

  - job_name: 'postgres_exporter'
    metrics_path: '/metrics'
    scrape_interval: 5s
    dns_sd_configs:
    - names:
      - 'postgres-exporter'
      type: 'A'
      port: 9187

Kadibna wax waliba way shaqeeyeen, dhammaan waxa hadhay waa in lagu daro dhammaan walxahan grafana oo ku raaxayso natiijada.

Marka lagu daro awoodda aad ku dari karto su'aalahaaga, waxaad bedeli kartaa goobaha ku jira prometheus, adoo ururinaya qiyaaso badan oo la beegsanayo.

Tan waxaa loo sameeyay si la mid ah:

  • Kafka
  • Elasticsearch
  • Mongo

PS Dhammaan xogta ku saabsan magacyada, dekedaha iyo inta kale waxaa laga soo qaatay hawada oo kuma jiraan wax macluumaad ah.

Xiriiro waxtar leh:
Liiska dhoofiyeyaasha kala duwan

Source: www.habr.com

Add a comment