Ինչպես տեղադրել Prometheus-ը և Node Exporter-ը AlmaLinux 9-ում
Այս էջում
- Հիմնական հասկացություններ, որոնք դուք պետք է իմանաք
- Նախադրյալներ
Պրոմեթևսի տեղադրում և կարգավորում
- Օգտագործողի և գրացուցակների կարգավորում
- Պրոմեթևսի նախապես կազմված փաթեթի ներբեռնում
- Պրոմեթևսի կազմաձևում
Թիրախային մոնիտորինգի վրա հանգույցի արտահանողի տեղադրում և կարգավորում
Պրոմեթևսը բաց կոդով մոնիտորինգի և ահազանգման հարթակ է:
Ի սկզբանե Prometheus-ը ստեղծվել է Soundcloud-ի կողմից 2012 թվականին: Այդ ժամանակից ի վեր որոշ հայտնի ընկերությունների կողմից ընդունված Prometheus նախագիծը դարձել է ավելի մեծ նախագիծ՝ շատ ակտիվ ծրագրավորողներով և համայնքով: Իսկ 2016 թվականին Պրոմեթևս նախագիծն ավարտվել է Cloud Native Computing հիմնադրամի (CNCF) ներքո։
Հիմնական հասկացություններ, որոնք դուք պետք է իմանաք
Հիմնականում Պրոմեթևսը տվյալներ և չափումներ է հավաքում HTTP վերջնակետերի միջոցով թիրախային սերվերներից, այնուհետև պահում է բոլոր տվյալները որպես ժամանակային շարք: Պրոմեթևսում ժամանակային շարքի տվյալները նույնականացվում են մետրիկ անվանմամբ և բանալին/արժեք զույգերով:
Պրոմեթևսն ապահովում է ճկունություն Prometheus Query Language (PromQL) միջոցով: Դուք կարող եք օգտագործել PromQL-ը Պրոմեթևսի ժամանակային շարքերի տվյալների բազայում հարցումներ անելու համար:
Թիրախային սերվերների վրա դուք պետք է տեղադրեք «արտահանող» հավելվածը, որը ցուցադրում է Պրոմեթևսի բոլոր տվյալները և չափումները: «Node Exporter»-ը սովորաբար օգտագործվող արտահանող է Linux մեքենաները վերահսկելու համար:
Հանգույց արտահանողը բացահայտում է ապարատային և միջուկի հետ կապված մատրիկան Linux մեքենաներից: Դա մեկ երկուական ֆայլ է, որը կբացահայտի տվյալների վերջի չափումները Պրոմեթևսի սերվերին:
Այս ուղեցույցը ձեզ ցույց կտա Prometheus-ի և Node Exporter-ի տեղադրումը AlmaLinux 9 սերվերների վրա:
Նախադրյալներ
Սկսելուց առաջ համոզվեք, որ ունեք հետևյալը.
- Երկու AlmaLinux 9 սերվեր - Այս օրինակը կօգտագործի առանձին սերվեր Prometheus-ի և Node Exporter-ի համար:
- Ոչ արմատային օգտվողը կարող է կատարել sudo՝ արմատային արտոնություններ ստանալու համար:
Պրոմեթևսի տեղադրում և կարգավորում
Պրոմեթևսը բաց կոդով և ժամանակակից համակարգի մոնիտորինգի և ահազանգման համակարգ է: Այն կարող է տեղադրվել ավանդական Unix/Linux սերվերների վրա նախապես կազմված փաթեթի միջոցով՝ օգտագործելով կոնտեյներային տեխնոլոգիաներ, ինչպիսիք են Docker-ը և Kubernetes-ը, կամ կազմաձևման կառավարման գործիքներ, ինչպիսիք են Ansible, Chef, Puppet և Saltstack:
Հետևյալ բաժինը ցույց է տալիս, թե ինչպես տեղադրել Prometheus-ը նախապես կառուցված երկուական ֆայլի միջոցով ALmaLinux 9 սերվերի վրա:
Լրացրեք այս քայլ առ քայլը՝ ձեր AlmaLinux սերվերում Prometheus-ի հաջող տեղադրման համար.
- Օգտագործողի և գրացուցակների կարգավորում
- Downloading Prometheus Binary Package
- Պրոմեթևս սերվերի կարգավորում
- Գործարկել Պրոմեթևսը հետին պլանում որպես համակարգված ծառայություն
Օգտագործողի և գրացուցակների կարգավորում
Նախքան Պրոմեթևսը տեղադրելը, դուք կստեղծեք նոր օգտվող և տեղեկատուներ ձեր համակարգում: Այս օգտվողը կօգտագործվի Prometheus-ը գործարկելու համար, իսկ որոշ դիրեկտորիաներ կօգտագործվեն Prometheus-ի կազմաձևման ֆայլերը և տվյալները պահելու համար:
Գործարկեք հետևյալ հրամանը՝ համակարգի նոր օգտվող prometheus ստեղծելու համար:
sudo adduser -M -r -s /sbin/nologin prometheus
Գործարկեք ստորև նշված հրամանը՝ ստեղծելու նոր գրացուցակ /etc/prometheus, որը կօգտագործվի Prometheus-ի կազմաձևման ֆայլերը պահելու համար և գրացուցակը /var/lib/prometheus, որը կօգտագործվի որպես Պրոմեթևսի տվյալների գրացուցակը:
sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus
Այժմ գործարկեք ստորև հրամանը՝ և՛ /etc/prometheus և՛ /var/lib/prometheus դիրեկտորիաների սեփականությունը փոխելու համար prometheus օգտվողին և խմբին: պրոմեթևս:
sudo chown prometheus:prometheus /etc/prometheus
sudo chown prometheus:prometheus /var/lib/prometheus
Պրոմեթևսի նախապես կազմված փաթեթի ներբեռնում
Այժմ դուք կտեղադրեք պրոմեթևսը ձեր սերվերի վրա: Այս ցուցադրությունում դուք կտեղադրեք Prometheus-ը նախապես կազմված երկուական փաթեթի միջոցով: Դուք կտեղադրեք Prometheus-ը AlmaLinux սերվերի վրա IP հասցեով192.168.10.20:
Գործարկեք ստորև բերված dnf հրամանը՝ ձեր համակարգում wget-ը տեղադրելու համար:
sudo dnf install wget -y
Տեղափոխեք ձեր աշխատանքային գրացուցակը /usr/src և ներբեռնեք Պրոմեթևսի նախապես կազմված երկուական ֆայլը wget-ի միջոցով:
cd /usr/src
wget https://github.com/prometheus/prometheus/releases/download/v2.44.0/prometheus-2.44.0.linux-amd64.tar.gz
Այժմ հանեք Prometheus երկուական ֆայլը prometheus-2.44.0.linux-amd64.tar.gz՝ օգտագործելով ստորև բերված tar հրամանը: Դուք պետք է ստանաք նոր գրացուցակ prometheus-2.44.0.linux-amd64, որը պարունակում է Prometheus երկուական ֆայլը և որոշ կանխադրված կոնֆիգուրացիաներ:
tar -xf prometheus-2.44.0.linux-amd64.tar.gz
Գործարկեք ստորև նշված հրամանը, որպեսզի պատճենեք լռելյայն Prometheus կազմաձևման ֆայլը prometheus.yml և որոշ կարևոր դիրեկտորիաներ /etc/prometheus/-ում:
sudo cp /usr/src/prometheus-*/prometheus.yml /etc/prometheus/
sudo cp -r /usr/src/prometheus-*/consoles /etc/prometheus
sudo cp -r /usr/src/prometheus-*/console_libraries /etc/prometheus
Դրանից հետո փոխեք /etc/prometheus/ գրացուցակի սեփականությունը promtheus օգտատիրոջը և prometheus խմբին՝ օգտագործելով հետևյալ հրամանը։
sudo chown -R prometheus:prometheus /etc/prometheus
Այնուհետև գործարկեք հետևյալ հրամանը՝ prometheus և promtool-ի երկուական ֆայլը /usr/bin/ գրացուցակում պատճենելու համար:
sudo cp /usr/src/prometheus-*/prometheus /usr/bin/
sudo cp /usr/src/prometheus-*/promtool /usr/bin/
Այնուհետև ստուգեք Prometheus-ը և Promtool-ը՝ օգտագործելով հետևյալ հրամանը.
which prometheus
prometheus --version
which promtool
promtool --version
Եթե տեղադրումը հաջող է, դուք պետք է տեսնեք prometheus և promtool հրամանի ամբողջական ուղին, որը գտնվում է /usr/bin/ գրացուցակում: Դուք նաև կտեսնեք Պրոմեթևսի տեղադրված տարբերակը։
Պրոմեթևսի կազմաձևում
Prometheus-ը ներբեռնելուց և տեղադրվելուց հետո դուք կսկսեք Prometheus-ի հիմնական կոնֆիգուրացիան:
Բացեք պրոմեթևսի կազմաձևման ֆայլը /etc/prometheus/prometheus.yml՝ օգտագործելով նանո խմբագրիչը:
nano /etc/prometheus/prometheus.yml
Scrape_configs պարամետրում ավելացրեք նոր աշխատանքի պրոմեթևսը՝ հենց Prometheus սերվերի թիրախով: Այս օրինակում Պրոմեթևսի սերվերն ունի 192.168.10.20 IP հասցե, և դա կփակի Պրոմեթևսի չափումները:
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: "prometheus"
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ["192.168.10.20:9090"]
Ավարտելուց հետո պահեք և փակեք ֆայլը:
Հաջորդը, ստեղծեք նոր systemd ծառայության ֆայլ պրոմեթևսի համար /etc/systemd/system/prometheus.service՝ օգտագործելով nano editor հրամանը:
sudo nano /etc/systemd/system/prometheus.service
Ավելացրեք հետևյալ կոնֆիգուրացիան՝ Prometheus-ը որպես համակարգային ծառայություն գործարկելու համար:
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target
[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/bin/prometheus \
--config.file /etc/prometheus/prometheus.yml \
--storage.tsdb.path /var/lib/prometheus/ \
--web.console.templates=/etc/prometheus/consoles \
--web.console.libraries=/etc/prometheus/console_libraries
[Install]
WantedBy=multi-user.target
Պահպանեք ֆայլը և ավարտեք խմբագրիչը:
Այժմ գործարկեք հետևյալ հրամանը՝ systemd կառավարիչը վերաբեռնելու և փոփոխությունները systemd-ում կիրառելու համար:
sudo systemctl daemon-reload
Այնուհետև սկսեք և միացրեք պրոմեթևսի ծառայությունը՝ օգտագործելով systemctl հրամանը ստորև:
sudo systemctl start prometheus
sudo systemctl enable prometheus
Ստուգեք Prometheus ծառայությունը՝ համոզվելու համար, որ ծառայությունն աշխատում է:
sudo systemctl status prometheus
Եթե ձեր տեղադրումը հաջող է, դուք պետք է տեսնեք, որ «Prometheus» ծառայության կարգավիճակը ակտիվ է (աշխատում է):
Վերջապես գործարկեք ձեր վեբ զննարկիչը և այցելեք սերվերի IP հասցեն, որին հաջորդում է 9090 նավահանգիստը (այսինքն՝ http://192.168.10:20:9090/): Եթե տեղադրումը հաջող է, դուք պետք է ստանաք Պրոմեթևսի գրաֆիկի էջը հետևյալ կերպ.
Կարող եք նաև ստուգել մոնիտորինգի վերջնակետի կարգավիճակը՝ սեղմելով Կարգավիճակ > Թիրախներ: Դուք պետք է տեսնեք job_name պրոմեթևսը UP վիճակով:
Թիրախային մոնիտորինգի վրա հանգույցի արտահանողի տեղադրում և կարգավորում
Node Exporter-ը Prometheus-ի հավելված է, որը բացահայտում է թիրախային մոնիտորինգի համակարգի չափումները: Այն թույլ է տալիս քերել համակարգի մի շարք չափումներ և կարող է ենթարկվել Պրոմեթևսի հետագա գործընթացին:
Այս բաժնում դուք կտեղադրեք Node Exporter 192.168.10.21 IP հասցեով AlmaLinux 9 սերվերի վրա: Դուք կտեղադրեք Node Exporter-ը Պրոմեթևսի կողմից տրամադրված նախապես կազմված երկուական փաթեթի միջոցով:
Node Exporter-ի ներբեռնում և տեղադրում
Node Exporter-ը տեղադրելու համար դուք պետք է դրա համար ստեղծեք հատուկ համակարգի օգտատեր և ներբեռնեք Node Exporter-ի երկուական փաթեթը ձեր համակարգում:
Նախ, գործարկեք հետևյալ հրամանը՝ համակարգի նոր օգտվող node_exporter ստեղծելու համար:
sudo adduser -M -r -s /sbin/nologin node_exporter
Տեղադրեք wget-ը՝ օգտագործելով ստորև բերված dnf հրամանը:
sudo dnf install wget -y
Այնուհետև անցեք /usr/src գրացուցակ և ներբեռնեք Node Exporter-ի նախապես կազմված երկուական ֆայլը wget-ի միջոցով:
cd /usr/src/
wget https://github.com/prometheus/node_exporter/releases/download/v1.6.0/node_exporter-1.6.0.linux-amd64.tar.gz
Ներբեռնումն ավարտվելուց հետո դուք պետք է տեսնեք node_exporter-1.6.0.linux-amd64.tar.gz ֆայլը: Արտահանեք այն՝ օգտագործելով ստորև նշված tar հրամանը:
tar -xf node_exporter-1.6.0.linux-amd64.tar.gz
Հաջորդը, ստորև նշված հրամանի միջոցով տեղափոխեք Node Exporter-ի երկուական ֆայլը /usr/bin գրացուցակ:
mv node_exporter-*/node_exporter /usr/bin
Այժմ ստուգեք Node Exporter-ը՝ օգտագործելով ստորև նշված հրամանը: Հաջողության դեպքում դուք պետք է ստանաք ամբողջական ուղու երկուական ուղին և Node Exporter-ի տարբերակը:
which node_exporter
node_exporter --version
Գործող հանգույցի արտահանողը ֆոնին որպես ծառայություն
Node Exporter-ի տեղադրումից հետո դուք կստեղծեք և գործարկեք Node Exporter-ը հետին պլանում՝ որպես համակարգված ծառայություն:
Դա անելու համար ստեղծեք նոր systemd ծառայության ֆայլ /etc/systemd/system/node_exporter.service՝ օգտագործելով ստորև բերված nano editor հրամանը: Այս օրինակում դուք կգործարկեք Node Exporter-ը որպես համակարգային ծառայություն:
sudo nano /etc/systemd/system/node_exporter.service
Տեղադրեք հետևյալ կոնֆիգուրացիան ֆայլի մեջ.
[Unit]
Description=Node Exporter
After=network.target
[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/bin/node_exporter
[Install]
WantedBy=multi-user.target
Պահպանեք և դուրս եկեք ֆայլից, երբ ավարտեք:
Այժմ գործարկեք systemctl հրամանը ստորև՝ systemd կառավարիչը վերաբեռնելու համար:
sudo systemctl daemon-reload
Այնուհետև սկսեք և միացրեք node_exporter ծառայությունը՝ օգտագործելով հետևյալ հրամանը.
sudo systemctl start node_exporter
sudo systemctl enable node_exporter
Երբ node_exporter-ը գործարկվի և միացվի, գործարկեք հետևյալ հրամանը՝ այն ստուգելու և համոզվելու, որ ծառայությունն աշխատում է:
sudo systemctl status node_exporter
Եթե աշխատում է, դուք պետք է տեսնեք node_exporter ծառայությունը ակտիվ (աշխատող) կարգավիճակով:
Ի վերջո, գործարկեք հետևյալ հրամանը՝ Node Exporter-ի նավահանգիստը ստուգելու համար: Լռելյայնորեն այն աշխատում է 9100 նավահանգստում:
ss -tulpn | grep node
Դուք պետք է տեսնեք, որ 9100 նավահանգիստն օգտագործվում է node_exporter ծառայության կողմից:
Կարող եք նաև հաստատել այն վեբ բրաուզերի միջոցով՝ այցելելով սերվերի IP հասցեն, որին հաջորդում է 9100 նավահանգիստը (այսինքն՝ http://192.168.10.21:9100/): Դուք պետք է տեսնեք սերվերի մոնիտորինգի վերջնական կետի տվյալները Node Exporter-ի միջոցով:
Prometheus սերվերին Node Exporter-ի ավելացում
Այս բաժնում դուք կավելացնեք Node Exporter-ը Պրոմեթևսի սերվերին: Դուք տեղադրել և ցուցադրել եք համակարգի չափումները 192.168.10.21 սերվերի վրա, այնուհետև այն կավելացնեք Պրոմեթևսի սերվերին, որն աշխատում է 192.168.10.20-ով:
Բացեք Պրոմեթևսի կոնֆիգուրացիան /etc/prometheus/prometheus.yml՝ օգտագործելով հետևյալ նանո խմբագրիչը:
sudo nano /etc/prometheus/prometheus.yml
scrape_config պարամետրով ավելացրեք նոր job_name node_exporter_metrics և մուտքագրեք Node Exporter-ի մանրամասն վերջնակետը: Հետևյալ օրինակը կլինի սերվերի մոնիտորինգը node1 IP հասցեով 192.168.10.21:
- job_name: 'node_exporter_metrics'
scrape_interval: 5s
static_configs:
- targets: ['192.168.10.21:9100']
Պահպանեք ֆայլը և ավարտից հետո դուրս եկեք խմբագրիչից:
Այժմ գործարկեք հետևյալ հրամանը՝ պրոմեթևս ծառայությունը վերագործարկելու և փոփոխությունները կիրառելու համար։
sudo systemctl restart prometheus
Այժմ բացեք Prometheus-ը ձեր վեբ բրաուզերից և սեղմեք Կարգավիճակ > Թիրախներ՝ համոզվելու, որ Node Exporter-ն ավելացված է: Եթե հաջողվի, դուք պետք է տեսնեք node_exporter_metrics աշխատանքը UP վիճակով:
Այնուհետև անցեք Գրաֆիկ ընտրացանկ և մուտքագրեք հարցումը, որն սկսվում է հանգույց_-ով, որպեսզի ստանաք Node Exporter-ի կողմից տրամադրված հարցումների ցանկը:
Մուտքագրեք հարցումը node_network_iface_id՝ սերվերի վրա ցանցային սարքերի ցանկը ստանալու համար 192.168.10.21:
Դուք կարող եք նաև ստուգել ՕՀ-ի տեղեկատվության մանրամասները node_os_info հարցման միջոցով:
Վերջապես, մուտքագրեք հարցումը node_load15 և սեղմեք Գծապատկեր ներդիրի վրա՝ վերջին 15 րոպեի ընթացքում համակարգի բեռնվածության կարգավիճակը ստանալու համար:
Եզրակացություն
Գերազանց աշխատանք! Դուք հաջողությամբ տեղադրել եք Prometheus-ը AlmaLinux 9 սերվերի վրա, ինչպես նաև վերահսկել եք AlmaLinux սերվերը Node Exporter-ի միջոցով:
Այժմ կարող եք վերահսկել մեկ այլ սերվեր կամ վերահսկել ձեր հավելվածը Prometheus արտահանողի միջոցով: Դուք կարող եք նաև ինտեգրել ձեր Prometheus-ը Grafana-ի հետ՝ ձեր մոնիտորինգի համակարգի վիզուալիզացիայի համար: