Рубрики
Uncategorized

[Devsecops] # 3 PROMETHEUS, GRAFANA を 使使 し た サーバ 監視 基盤 の 構築 手順 手順 手順 手順

Premetheus, Grafana を 使使 し た サーバ 監視 基盤 の 構築 手順 目次サーバ ————————————… Теги с DevOps, безопасность.

目次 ————————————-

0. はじめ に.

1.architecture

2.PROMETHEUS 導入 手順

3.node_Exporiser 導入 手順.

4.Графана 導入 手順 ① (インストール & 初期 設定)

5.Графана 導入 手順 ② (ダッシュ ボード 初期 設定)

————————————

0. はじめ に.

監視 運 を う の 上 で を 描画 が て にくかっが たり たり 設定 設定 が だっ 設定 が 面倒 だっ だっ だっ ところ ところ だっ だっ だっ ところ に ところ ところ だっ だっ だっ ところ ところ ところ ところ に ところ に 手 が 届か 届か と ポイント が 幾つ か ある か の 思い が 幾つ か オススメ できるできる の が が が か か できる の の が が に オススメ できる の の が が に ある の の の が が が が の の の が が が が の の が が が が が の が が が が が の が が が が が が が が が が が が が が が が が が が が が が が が が が が が が が が が の が が の の です です 点 点 点 メリット メリット メリットメリット , また Prometheus は SoundCloud ( https://soundcloud.com ) 社 が リリース し て いる ツール であり, soundcloud の サービス に 馴染み が ある 方 いる いる か と 思い 思い ます.

  • 監視 対象 の サーバー から 情報 を 取得 & 保管
  • 保管 済み データ に対して 集計クエリ を 発 行 できる
  • しきい 値 を 超え た 場合 の アラート (メール, slack, がんばれ ば twilio で 電話)
  • 柔軟 な アラート 設定 (同じ エラー は まとめ て 通知 とか の 設定 が できる)
  • 構築 が 比較 的 容易

1.architecture

まず, 各 ツール の 役割 おり おり の よう に に おり おり ます ますよう.

①PromeTheus: サーバ 監視 基盤 ②grafana: Prometheus の データ を 可視 化 & アラート 検知/作成 する ③node_exporter: 被 監視 サーバ の リソース データ を prometheus へ push する

今回 の アーキテクチャ は は つ の 監視 インスタンス に つ つ 稼働 サーバ群 せる インスタンス に 導入 い サーバ群 サーバ群 せる せる 構成 とし て い サーバ群サーバ群.

2.PROMETHEUS 導入 手順

環境.

Amazon Linux 2 AMI (HVM), тип объема SSD PROMETHEUS 2.3.2

今回 は AWS に 作成 さ れ た た た インスタンス いき アドレス は は の 環境 に いき て は は の 環境 環境 に 合わせ て は それぞれ の 環境 環境 に 合わせ 変更変更

PROMETHEUS の 導入.

PROMETHEUS サーバ に SSH 接続 を し っ の 手順 で 導入 を っ っ っ て いきいき.

порт 開放.

プロメテウス サーバー は デフォルト だ と 9090 ポート で Слушайте する ので 開放 し ます. (解放 済み の 場合 は スキップ)

firewall-cmd --add-port=9090/tcp --zone=public --permanent
firewall-cmd --reload
firewall-cmd --list-ports --zone=public

PROMETHEUS SERVER の インストール インストール

wget https://github.com/prometheus/prometheus/releases/download/v*.*.*/prometheus-*.*.*.linux-amd64.tar.gz
tar zxvf prometheus-*.*.*.linux-amd64.tar.gz
mv prometheus-*.*.*.linux-amd64 promethus-server
cd promethus-server
cp prometheus.yml prometheus.yml.org
(ver.は任意)

解凍 後 の ディレクトリ に 入り prometheus.yml を 編集 する .- Цели: 以下 に 監視 対象 の サーバ IP: 9100 を 追加 し て いく いく

# my global config
global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).

# Alertmanager configuration
alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093

# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

# 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=` to any timeseries scraped from this config.
  - job_name: 'prometheus'

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets:
        - 'XXX.XXX.XXX.XXX:9100'

起動 スクリプト 作成 (任意)

/usr/lib/systemd/system/prometheus.service

[Unit]
Description=Prometheus - Monitoring system and time series database
Documentation=https://prometheus.io/docs/introduction/overview/
After=network-online.target
After=network-online.target

[Service]
Type=simple
ExecStart=/usr/local/src/prometheus/prometheus-server/prometheus \
  --config.file=/usr/local/src/prometheus/prometheus-server/prometheus.yml \

[Install]
WantedBy=multi-user.target

起動.

systemctl daemon-reload
自動起動設定
systemctl enable prometheus.service
起動
systemctl start prometheus.service

バイナリ を 直接 起動 する 場合 は 以下 以下

nohup ./node_exporter &

grep し て プロセス が スタート し て いる こと を 確認 でき たら たら ОК

確認.

http://<プロメテウス サーバー の IP アドレス>: 9090/График に 接続 する と 以下 の よう な ページ が 表示 さ れる と 思い 思い ます さ れ たら, インストール & 初期 設定 完 了 了 完

3.node_Exporiser 導入 手順.

被 監視 サーバ に の 手順 導入 を っ て の 手順いき.

порт 開放.

デフォルト だ と 9100 ポート で Слушайте する ので 開放 し ます ます

firewall-cmd --add-port=9100/tcp --zone=public --permanent
firewall-cmd --reload
-- 確認 --
firewall-cmd --list-ports --zone=public
9100/tcp

Узел экспортер の インストール

wget https://github.com/prometheus/node_exporter/releases/download/v0.16.0/node_exporter-*.**.*.linux-amd64.tar.gz
tar zxvf node_exporter-*.**.*.linux-amd64.tar.gz

起動 スクリプト 作成

[Unit]
Description=Node Exporter
Documentation=https://github.com/prometheus/node_exporter

[Service]
Type=simple
ExecStart=EnvironmentFile=/usr/local/src/prometheus/node_exporter/node_exporter $OPTIONS
Restart=always

[Install]
WantedBy=multi-user.target

起動.

/usr/lib/systemd/system/prometheus-node-exporter.service.

systemctl daemon-reload
-- 自動起動設定 --
systemctl enable prometheus.service
-- 起動 --
systemctl start prometheus.service

確認.

http://<監視 対象 サーバー の の アドレス>/metrics に 接続 する する 以下 の よう ステータス が 思い 思い 記載 思い 思い 思い 思い 思い 思い 思い 思い 思い 思い 思い 思い思い

ブラウザ で IP: 9100/METRIKS へ アクセス し て み て 以下 以下 の に スクレイプ が 表示 さ さ さ れ れ れい

4.Графана 導入 手順 ① (インストール & 初期 設定)

Grafana サーバ に ssh 接続 を し っ て て ます 導入 っ っ っ て いき ます ます ます っ っ っ ます ます ます ます ます ます ます ますいき.

インストール.

wget https://dl.grafana.com/oss/release/grafana-6.2.5.linux-amd64.tar.gz 
tar -zxvf grafana-6.2.5.linux-amd64.tar.gz 

起動.

systemctl start grafana-server

バイナリ を 直接 起動 する 場合 は 以下 以下

nohup ./grafana &

grep し て プロセス が スタート し て いる こと を 確認 でき たら たら ОК

アクセス.

Http で 3000 番 ポート に アクセス と ある ので, ブラウザ から やっ て み み ますみ.

初期 ユーザ, パスワード の admin/admin で ログイン し ます.

パスワード の 変更

真っ先 に やる こと は は 画面 左下 ワード の 変更 クリック し て て の アイコン クリック し て, предпочтения を 選び ます.

次 の 画面 で で, честное пароль を 選択. 新旧 パスワード を 入力 し て 変更 し ます.

データ ソース の 登録

次 に データ ソース を 登録 し て いき ます.

ДЕТА ИСТОЧНИКИ を クリック し ます.

名前 を 入力 し たら Добавить источник данных を クリック し Prometheus を 選択

PROMETHEUS を 選択 する.

ここ で http://localhost: 9090 の IP は Prometheus サーバ の IP へ 変更

「Детский источник работает」 の 表示 が 出 たら 設定 完 了 了

5.Графана 導入 手順 ② (ダッシュ ボード 初期 設定)

データ 連携 が 完了 の たら う う ダッシュ データ を 作成 を ない ボード の の 設計 を が オススメ 場合 は テンプレート テンプレート の が オススメ場合

まず, 目的 に 合わせ て て て の し し ますし.

「Grafana Labs」 の 「Downloads」 に マウス オーバ し, 「dishboards」 を クリック し ましょ う.

する と 記 の の よう に れ ボード の 候補 候補 が 表示 れ 飛ぶ と 候補 候補 が 表示 れ と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と と.

そして, それ を grafana の Импорт に ID を 入力 し Нагрузка する と ダッシュ ボード が 作成 さ れ ます.

作成 さ れ た ダッシュ ダッシュ に が し でき て て いれ ば 了 でき て て いれ いれ いれ 了 です了.

記記 の よう な サーバリソース こと 出力 さ れ れ て て て でき でき れでき

Оригинал: «https://dev.to/mizuki04/devsecops-3-prometheus-grafana-n2b»