แƒžแƒแƒกแƒขแƒ’แƒ แƒ”แƒกแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ Openshift-แƒจแƒ˜

แƒ™แƒแƒ แƒ’แƒ˜ แƒ“แƒฆแƒ”, แƒฐแƒแƒ‘แƒ แƒ˜แƒก แƒ›แƒชแƒฎแƒแƒ•แƒ แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ!

แƒ“แƒฆแƒ”แƒก แƒ›แƒ˜แƒœแƒ“แƒ แƒ’แƒ˜แƒ—แƒฎแƒ แƒแƒ—, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ’แƒ•แƒ˜แƒœแƒ“แƒแƒ“แƒ แƒžแƒแƒกแƒขแƒ’แƒ แƒ”แƒกแƒ˜แƒก แƒ“แƒ แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒกแƒฎแƒ•แƒ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒขแƒแƒ แƒ˜แƒœแƒ’แƒ˜ OpenShift แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒจแƒ˜แƒ’แƒœแƒ˜แƒ— แƒ“แƒ แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ•แƒแƒ™แƒ”แƒ—แƒ”แƒ— แƒ”แƒก.

แƒจแƒ”แƒกแƒแƒกแƒ•แƒšแƒ”แƒšแƒจแƒ˜ แƒฐแƒฅแƒแƒœแƒ“แƒแƒ—:

  • Openshift
  • แƒกแƒแƒญแƒ”แƒกแƒ—แƒแƒœ
  • แƒžแƒ แƒแƒ›แƒ”แƒ—แƒ”


java แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒแƒกแƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒ“แƒ แƒ’แƒแƒ›แƒญแƒ•แƒ˜แƒ แƒ•แƒแƒšแƒ” แƒ˜แƒงแƒ, แƒฃแƒคแƒ แƒ แƒกแƒฌแƒแƒ แƒแƒ“:

1) แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ build.gradle

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

2) แƒ’แƒแƒฃแƒจแƒ•แƒ˜แƒ— แƒžแƒ แƒแƒ›แƒ”แƒ—แƒ” แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒ—

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

3) แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ Grafana-แƒจแƒ˜

แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒ“แƒ แƒžแƒ แƒแƒ–แƒแƒฃแƒšแƒ˜ แƒ˜แƒงแƒ แƒ›แƒแƒœแƒแƒ›, แƒกแƒแƒœแƒแƒ› แƒแƒ  แƒ›แƒแƒ•แƒ˜แƒ“แƒ แƒ›แƒแƒ›แƒ”แƒœแƒขแƒ˜, แƒ แƒแƒ› แƒ“แƒแƒ•แƒแƒ™แƒ•แƒ˜แƒ แƒ“แƒ”แƒ— แƒ‘แƒแƒ–แƒ”แƒ‘แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒฎแƒšแƒแƒก แƒแƒ แƒ˜แƒก แƒฉแƒ•แƒ”แƒœแƒก แƒกแƒแƒฎแƒ”แƒšแƒ—แƒ แƒกแƒ˜แƒ•แƒ แƒชแƒ”แƒจแƒ˜ (แƒ“แƒ˜แƒแƒฎ, แƒ”แƒก แƒชแƒฃแƒ“แƒ˜แƒ, แƒแƒ›แƒแƒก แƒแƒ แƒแƒ•แƒ˜แƒœ แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ แƒแƒ› แƒฎแƒ“แƒ”แƒ‘แƒ).

แฒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก?

แƒžแƒแƒกแƒขแƒ’แƒ แƒ”แƒกแƒ—แƒแƒœ แƒ“แƒ แƒ—แƒแƒ•แƒแƒ“ แƒžแƒ แƒแƒ›แƒ”แƒ—แƒ”แƒกแƒ—แƒแƒœ แƒ”แƒ แƒ—แƒแƒ“ แƒฉแƒ•แƒ”แƒœ แƒ’แƒ•แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ”แƒ แƒ—แƒ˜ แƒกแƒฃแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ˜ - แƒ”แƒฅแƒกแƒžแƒแƒ แƒขแƒ˜แƒแƒ แƒ˜.

แƒ”แƒฅแƒกแƒžแƒแƒ แƒขแƒ˜แƒแƒ แƒ˜ แƒแƒ‘แƒกแƒขแƒ แƒแƒฅแƒขแƒฃแƒšแƒ˜ แƒ™แƒแƒœแƒชแƒ”แƒคแƒชแƒ˜แƒ˜แƒ— แƒแƒ แƒ˜แƒก แƒแƒ’แƒ”แƒœแƒขแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ’แƒ แƒแƒ•แƒ”แƒ‘แƒก แƒ›แƒ”แƒขแƒ แƒ˜แƒ™แƒแƒก แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ˜แƒ“แƒแƒœ แƒแƒœ แƒ—แƒฃแƒœแƒ“แƒแƒช แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒ“แƒแƒœ. แƒžแƒแƒกแƒขแƒ’แƒ แƒ”แƒก แƒ”แƒฅแƒกแƒžแƒแƒ แƒขแƒ˜แƒแƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก Go-แƒจแƒ˜ แƒฌแƒ”แƒ แƒ˜แƒ, แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก SQL แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ‘แƒแƒ–แƒแƒจแƒ˜ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒ˜แƒœแƒชแƒ˜แƒžแƒ˜แƒ— แƒ“แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒžแƒ แƒแƒ›แƒ”แƒ—แƒ” แƒ˜แƒฆแƒ”แƒ‘แƒก แƒ›แƒ˜แƒฆแƒ”แƒ‘แƒฃแƒš แƒจแƒ”แƒ“แƒ”แƒ’แƒ”แƒ‘แƒก. แƒ”แƒก แƒแƒกแƒ”แƒ•แƒ” แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ’แƒแƒแƒคแƒแƒ แƒ—แƒแƒ•แƒแƒ— แƒจแƒ”แƒ’แƒ แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒ”แƒขแƒ แƒ˜แƒ™แƒ แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—.

แƒ›แƒแƒ“แƒ˜แƒ— แƒ’แƒแƒœแƒ•แƒแƒ—แƒแƒ•แƒกแƒแƒ— แƒ˜แƒก แƒแƒกแƒ” (แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“ deployment.yaml, แƒแƒ แƒแƒกแƒแƒ•แƒแƒšแƒ“แƒ”แƒ‘แƒฃแƒšแƒ):


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

แƒแƒกแƒ”แƒ•แƒ” แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒ“แƒ แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒก แƒ“แƒ แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒœแƒแƒ™แƒแƒ“แƒก

แƒ’แƒแƒœแƒšแƒแƒ’แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒฉแƒ•แƒ”แƒœ แƒซแƒแƒšแƒ˜แƒแƒœ แƒ’แƒ•แƒ˜แƒœแƒ“แƒ, แƒ แƒแƒ› แƒงแƒ•แƒ”แƒšแƒแƒ› แƒ”แƒ แƒ—แƒ›แƒแƒœแƒ”แƒ—แƒ˜ แƒœแƒแƒฎแƒแƒก.

แƒ“แƒแƒแƒ›แƒแƒขแƒ”แƒ— แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒœแƒแƒฌแƒ˜แƒšแƒ˜ แƒžแƒ แƒแƒ›แƒ”แƒ—แƒ”แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒแƒจแƒ˜:

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

แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ™แƒ˜ แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ›แƒ แƒ˜แƒ›แƒฃแƒจแƒแƒ•แƒ, แƒ แƒฉแƒ”แƒ‘แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒแƒ› แƒงแƒ•แƒ”แƒšแƒแƒคแƒ แƒ˜แƒก แƒ’แƒ แƒแƒคแƒแƒœแƒแƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ แƒ“แƒ แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜แƒ— แƒกแƒ˜แƒแƒ›แƒแƒ•แƒœแƒ”แƒ‘แƒ.

แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ“แƒ, แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒชแƒ•แƒแƒšแƒแƒ— แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜ แƒžแƒ แƒแƒ›แƒ”แƒ—แƒ”แƒจแƒ˜, แƒจแƒ”แƒแƒ’แƒ แƒแƒ•แƒแƒ— แƒ›แƒ”แƒขแƒ˜ แƒ›แƒ˜แƒ–แƒœแƒแƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒ›แƒ”แƒขแƒ แƒ˜แƒ™แƒ.

แƒ”แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ“แƒ แƒแƒœแƒแƒšแƒแƒ’แƒ˜แƒฃแƒ แƒแƒ“:

  • แƒ™แƒแƒคแƒ™แƒ
  • แƒ”แƒšแƒแƒกแƒขแƒ˜แƒฃแƒ แƒ˜ แƒซแƒ”แƒ‘แƒœแƒ
  • Mongo

PS แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜แƒก, แƒžแƒแƒ แƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ“แƒแƒœแƒแƒ แƒฉแƒ”แƒœแƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒแƒ แƒ˜แƒก แƒแƒฆแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒฐแƒแƒ”แƒ แƒ˜แƒ“แƒแƒœ แƒ“แƒ แƒแƒ  แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก.

แƒกแƒแƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒ แƒ‘แƒ›แƒฃแƒšแƒ”แƒ‘แƒ˜:
แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ”แƒฅแƒกแƒžแƒแƒ แƒขแƒ˜แƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ