このチュートリアルでは、Prometheus と Grafana について説明します。 CentOS/RHEL に両方をインストールする方法を学び、Prometheus と Grafana を使用して Linux サーバーを監視する方法を理解します。
導入
Grafana は、主要な時系列であり、視覚化と監視のためのオープンソース プラットフォームです。これにより、メトリクスがどこに保存されているかに関係なく、クエリ、視覚化、アラートの設定、メトリクスの理解が可能になります。 Grafana で素晴らしいダッシュボードを作成して、メトリクスを視覚化して監視できます。
Prometheus は 、マシン中心で非常に動的なサービス指向アーキテクチャのためのオープンソースの時系列監視システムです。文字通りすべてを監視できます。 Grafana はデータ ソースの 1 つとして Prometheus も提供しているため、Grafana と非常にスムーズに統合されます。
初心者の場合は、Prometheus と Grafana の紹介の記事をチェックすることをお勧めします。
CentOSにインストールする方法を紹介します。少なくとも 2GB の RAM が必要です。 DigitalOcean からクラウド サーバーを入手して試してみることができます。
プロメテウスのインストール
ステップ 1: Prometheus をダウンロードする
最新の Prometheus Linux パッケージを公式ページからダウンロードします。
最新リリースを入手するには、 公式リリース ページ を確認してください。
[centos@ ~]$ wget https://github.com/prometheus/prometheus/releases/download/v2.18.1/prometheus-2.18.1.linux-amd64.tar.gz
--2020-05-20 10:06:22--
https://github.com/prometheus/prometheus/releases/download/v2.18.1/prometheus-2.18.1.linux-amd64.tar.gz
Resolving github.com (github.com)... 13.234.176.102
Connecting to github.com (github.com)|13.234.176.102|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/6838921/2f454700-90ae-11ea-89e1-3aeb351fdfa5?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20200520%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200520T140622Z&X-Amz-Expires=300&X-Amz-Signature=53d5c6a02e8eeee82f380c4d1edf62a7adfb2b38f2b173059852040b14ddb19c&X-Amz-SignedHeaders=host&actor_id=0&repo_id=6838921&response-content-disposition=attachment%3B%20filename%3Dprometheus-2.18.1.linux-amd64.tar.gz&response-content-type=application%2Foctet-stream [following]
--2020-05-20 10:06:22--
https://github-production-release-asset-2e65be.s3.amazonaws.com/6838921/2f454700-90ae-11ea-89e1-3aeb351fdfa5?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20200520%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200520T140622Z&X-Amz-Expires=300&X-Amz-Signature=53d5c6a02e8eeee82f380c4d1edf62a7adfb2b38f2b173059852040b14ddb19c&X-Amz-SignedHeaders=host&actor_id=0&repo_id=6838921&response-content-disposition=attachment%3B%20filename%3Dprometheus-2.18.1.linux-amd64.tar.gz&response-content-type=application%2Foctet-stream
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.24.236
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.24.236|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 63373350 (60M) [application/octet-stream]
Saving to: ‘prometheus-2.18.1.linux-amd64.tar.gz’
100%[============================================================================================================>] 63,373,350 2.09MB/s in 50s
2020-05-20 10:07:13 (1.21 MB/s) - ‘prometheus-2.18.1.linux-amd64.tar.gz’ saved [63373350/63373350]
ダウンロードしたパッケージを解凍します。
[centos@ ~]$ tar -xzf prometheus-2.18.1.linux-amd64.tar.gz
[centos@ ~]$ ls
Desktop
Documents Downloads Music
Pictures
prometheus-2.18.1.linux-amd64
prometheus-2.18.1.linux-amd64.tar.gz
Public Templates Videos
ステップ 2: Prometheus を構成する
以下のコマンドを使用して、新しいユーザー Prometheus を作成します。
[centos@ ~]$ sudo useradd -s /sbin/false prometheus
すべての Prometheus ファイルの所有権を Prometheus ユーザーに与えます。前述のパスにあるすべてのファイルを実行可能にします。
[centos@ ~]$ sudo chmod 755 prometheus-2.18.1.linux-amd64 -R
[centos@ ~]$ sudo chown prometheus:prometheus prometheus-2.18.1.linux-amd64 -R
ここで、Prometheus を systemd 内のサービスとして構成します。ファイル
prometheus.service
を作成し、以下の行をファイルに記述して保存します。
[centos@ ~]$ sudo gedit /etc/systemd/system/prometheus.service
[Unit]
Description=Prometheus Server
Wants=network-online.target
After=network-online.target
[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart= /home/centos/prometheus-2.18.1.linux-amd64/prometheus \
--config.file= /home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml \
--storage.tsdb.path=/home/centos/prometheus-2.18.1.linux-amd64/ \
--web.console.templates= /home/centos/prometheus-2.18.1.linux-amd64/consoles \
--web.console.libraries= /home/centos/prometheus-2.18.1.linux-amd64/console_libraries
[Install]
WantedBy=multi-user.target
ステップ 3: Prometheus を起動する
systemctl
を使用して、systemd システムをリロードし、Prometheus サービスを開始します。すべての手順を正しく実行すると、ステータスにサービスが実行中であることが表示されます。
[centos@ prometheus]$ sudo systemctl daemon-reload
[centos@ prometheus]$ sudo systemctl start prometheus.service
[centos@ prometheus]$ sudo systemctl enable prometheus.service
[centos@ prometheus]$ sudo systemctl status prometheus.service -l
● prometheus.service - Prometheus Server
Loaded: loaded (/etc/systemd/system/prometheus.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2020-05-20 14:18:47 EDT; 5s ago
Main PID: 23924 (prometheus)
CGroup: /system.slice/prometheus.service
└─23924 /home/centos/prometheus-2.18.1.linux-amd64/prometheus --config.file=/home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml --storage.tsdb.path=/home/centos/prometheus-2.18.1.linux-amd64/ --web.console.templates=/home/centos/prometheus-2.18.1.linux-amd64/consoles --web.console.libraries=/home/centos/prometheus-2.18.1.linux-amd64/console_libraries
May 20 14:18:47 .linuxvmimages.com prometheus[23924]: level=info ts=2020-05-20T18:18:47.885Z caller=web.go:523 component=web msg="Start listening for connections" address=0.0.0.0:9090
May 20 14:18:47 .linuxvmimages.com prometheus[23924]: level=info ts=2020-05-20T18:18:47.888Z caller=head.go:624 component=tsdb msg="WAL segment loaded" segment=0 maxSegment=2
May 20 14:18:47 .linuxvmimages.com prometheus[23924]: level=info ts=2020-05-20T18:18:47.889Z caller=head.go:624 component=tsdb msg="WAL segment loaded" segment=1 maxSegment=2
May 20 14:18:47 .linuxvmimages.com prometheus[23924]: level=info ts=2020-05-20T18:18:47.889Z caller=head.go:624 component=tsdb msg="WAL segment loaded" segment=2 maxSegment=2
May 20 14:18:47 .linuxvmimages.com prometheus[23924]: level=info ts=2020-05-20T18:18:47.889Z caller=head.go:627 component=tsdb msg="WAL replay completed" duration=4.498147ms
May 20 14:18:47 .linuxvmimages.com prometheus[23924]: level=info ts=2020-05-20T18:18:47.909Z caller=main.go:694 fs_type=XFS_SUPER_MAGIC
May 20 14:18:47 .linuxvmimages.com prometheus[23924]: level=info ts=2020-05-20T18:18:47.909Z caller=main.go:695 msg="TSDB started"
May 20 14:18:47 .linuxvmimages.com prometheus[23924]: level=info ts=2020-05-20T18:18:47.909Z caller=main.go:799 msg="Loading configuration file" filename=/home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml
May 20 14:18:47 .linuxvmimages.com prometheus[23924]: level=info ts=2020-05-20T18:18:47.936Z caller=main.go:827 msg="Completed loading of configuration file" filename=/home/centos/prometheus-2.18.1.linux-amd64/prometheus.yml
May 20 14:18:47 .linuxvmimages.com prometheus[23924]: level=info ts=2020-05-20T18:18:47.936Z caller=main.go:646 msg="Server is ready to receive web requests."
ステップ 4: Prometheus Web UI にアクセスする
ブラウザを開き、ポート 9090 でサーバーの IP にアクセスし、Prometheus の Web インターフェイスにアクセスします。
[ステータス] >> [ターゲット]
に移動して、Prometheus が現在実行されている内容と場所を確認します。
Grafana のインストール
ステップ 1: Grafana リポジトリを追加する
デフォルトでは、Grafana リポジトリは CentOS リポジトリに存在しないため、追加する必要があります。
/etc/yum.repos.d/
内にファイル
grafana.repo
を作成し、以下の行を追加します。
[centos@ ~]$ sudo gedit /etc/yum.repos.d/grafana.repo
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
ステップ 2: Grafana をインストールする
CentOS を更新し、Grafana パッケージをインストールします。
[centos@ ~]$ sudo yum update -y
[centos@ ~]$ sudo yum install grafana
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.piconets.webwerks.in
* extras: mirrors.piconets.webwerks.in
* updates: mirrors.piconets.webwerks.in
Resolving Dependencies
--> Running transaction check
---> Package grafana.x86_64 0:7.0.0-1 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
======================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================
Installing:
grafana x86_64 7.0.0-1 grafana 46 M
Transaction Summary
======================================================================================================================================================
Install 1 Package
Total download size: 46 M
Installed size: 141 M
Is this ok [y/d/N]: y
Downloading packages:
No Presto metadata available for grafana
warning: /var/cache/yum/x86_64/7/grafana/packages/grafana-7.0.0-2.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID 24098cb6: NOKEY MB 00:00:00 ETA
Public key for grafana-7.0.0-2.x86_64.rpm is not installed
grafana-7.0.0-2.x86_64.rpm | 46 MB
00:00:07
Retrieving key from https://packages.grafana.com/gpg.key
Importing GPG key 0x24098CB6:
Userid : "Grafana <info@grafana.com>"
Fingerprint: 4e40 ddf6 d76e 284a 4a67 80e4 8c8c 34c5 2409 8cb6
From : https://packages.grafana.com/gpg.key
Is this ok [y/N]: y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : grafana-7.0.0-1.x86_64 1/1
### NOT starting on installation, please execute the following statements to configure grafana to start automatically using systemd
sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable grafana-server.service
### You can start grafana-server by executing
sudo /bin/systemctl start grafana-server.service
POSTTRANS: Running script
Verifying : grafana-7.0.0-1.x86_64
1/1
Installed:
grafana.x86_64 0:7.0.0-1
Complete!
ステップ 3: Grafana を開始する
grafana サーバーを起動し、実行中かどうかステータスを確認します。
[centos@ ~]$ sudo systemctl start grafana-server
[centos@ ~]$ sudo systemctl status grafana-server
● grafana-server.service - Grafana instance
Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; disabled; vendor preset: disabled)
Active: active (running) since Wed 2020-05-20 07:04:32 EDT; 6s ago
Docs: http://docs.grafana.org
Main PID: 7672 (grafana-server)
Tasks: 9
CGroup: /system.slice/grafana-server.service
└─7672 /usr/sbin/grafana-server --config=/etc/grafana/grafana.ini --pidfile=/var/run/grafana/grafana-server.pid --packaging=rpm cfg:defa...
May 20 07:04:32 .linuxvmimages.com grafana-server[7672]: t=2020-05-20T07:04:32-0400 lvl=info msg="Executing migration" logger=migrator...token"
May 20 07:04:32 .linuxvmimages.com grafana-server[7672]: t=2020-05-20T07:04:32-0400 lvl=info msg="Executing migration" logger=migrator...token"
May 20 07:04:32 .linuxvmimages.com grafana-server[7672]: t=2020-05-20T07:04:32-0400 lvl=info msg="Executing migration" logger=migrator...table"
May 20 07:04:32 .linuxvmimages.com grafana-server[7672]: t=2020-05-20T07:04:32-0400 lvl=info msg="Executing migration" logger=migrator...e_key"
May 20 07:04:32 .linuxvmimages.com grafana-server[7672]: t=2020-05-20T07:04:32-0400 lvl=info msg="Created default admin" logger=sqlsto...=admin
May 20 07:04:32 .linuxvmimages.com grafana-server[7672]: t=2020-05-20T07:04:32-0400 lvl=info msg="Starting plugin search" logger=plugins
May 20 07:04:32 .linuxvmimages.com grafana-server[7672]: t=2020-05-20T07:04:32-0400 lvl=info msg="Registering plugin" logger=plugins n...Input"
May 20 07:04:32 .linuxvmimages.com grafana-server[7672]: t=2020-05-20T07:04:32-0400 lvl=info msg="External plugins directory created" ...lugins
May 20 07:04:32 .linuxvmimages.com systemd[1]: Started Grafana instance.
May 20 07:04:32 .linuxvmimages.com grafana-server[7672]: t=2020-05-20T07:04:32-0400 lvl=info msg="HTTP Server Listen" logger=http.serv...ocket=
Hint: Some lines were ellipsized, use -l to show in full.
ステップ 4: Grafana Web UI にアクセスする
サービスが起動して実行されたら、ポート 3000 でサーバーの IP にアクセスし、Grafana の Web インターフェイスにアクセスします。初めて、面倒なユーザー名とパスワードとして
admin
を使用する必要があります。次に、独自のパスワードを設定するように求められます。
グラファナの家はこんな感じです。
ノードエクスポーターのインストール
node_exporter は 、監視対象の Linux サーバーにインストールする必要がある公式パッケージです。複数のハードウェアと OS のメトリクスを公開しており、これらのメトリクスは Prometheus によって取得され、最終的には Grafana で視覚化されます。
ステップ 1: ノード エクスポーターをダウンロードする
wget を使用して、ノード エクスポーター パッケージをサーバーにダウンロードします。
最新バージョンを入手するには リリースページ をチェックしてください
[centos@ ~]$ wget https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.1/node_exporter-1.0.0-rc.1.linux-amd64.tar.gz
--2020-05-20 15:56:13--
https://github.com/prometheus/node_exporter/releases/download/v1.0.0-rc.1/node_exporter-1.0.0-rc.1.linux-amd64.tar.gz
Resolving github.com (github.com)... 13.234.176.102
Connecting to github.com (github.com)|13.234.176.102|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/9524057/b34b8180-960e-11ea-8df0-39a17445b82f?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20200520%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200520T195614Z&X-Amz-Expires=300&X-Amz-Signature=7f4d746946569dbe71bba5785fb4947348e5e0de1c2e8516b2390a2df2eda801&X-Amz-SignedHeaders=host&actor_id=0&repo_id=9524057&response-content-disposition=attachment%3B%20filename%3Dnode_exporter-1.0.0-rc.1.linux-amd64.tar.gz&response-content-type=application%2Foctet-stream [following]
--2020-05-20 15:56:14--
https://github-production-release-asset-2e65be.s3.amazonaws.com/9524057/b34b8180-960e-11ea-8df0-39a17445b82f?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20200520%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200520T195614Z&X-Amz-Expires=300&X-Amz-Signature=7f4d746946569dbe71bba5785fb4947348e5e0de1c2e8516b2390a2df2eda801&X-Amz-SignedHeaders=host&actor_id=0&repo_id=9524057&response-content-disposition=attachment%3B%20filename%3Dnode_exporter-1.0.0-rc.1.linux-amd64.tar.gz&response-content-type=application%2Foctet-stream
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.95.83
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.95.83|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 8734373 (8.3M) [application/octet-stream]
Saving to: ‘node_exporter-1.0.0-rc.1.linux-amd64.tar.gz’
100%[============================================================================================================>] 8,734,373 755KB/s in 11s
2020-05-20 15:56:26 (769 KB/s) - ‘node_exporter-1.0.0-rc.1.linux-amd64.tar.gz’ saved [8734373/8734373]
ダウンロードしたファイルを解凍します。
[centos@ ~]$ tar -xzf node_exporter-1.0.0-rc.1.linux-amd64.tar.gz
ステップ 2: ノード エクスポーターを構成する
Node Exporter を systemd 内のサービスとして構成します。ファイル
node_exporter.service
を作成し、以下の行をファイルに記述して保存します。
[centos@ ~]$ sudo gedit /etc/systemd/system/node_exporter.service
[Unit]
Description=node_exporter
Wants=network-online.target
After=network-online.target
[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/home/centos/node_exporter-1.0.0-rc.1.linux-amd64/node_exporter
[Install]
WantedBy=multi-user.target
ステップ 3: ノード エクスポーターを開始する
[centos@ ~]$ sudo systemctl daemon-reload
[centos@ ~]$ sudo systemctl start node_exporter
[centos@ ~]$ sudo systemctl status node_exporter
● node_exporter.service - node_exporter
Loaded: loaded (/etc/systemd/system/node_exporter.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2020-05-27 03:42:54 EDT; 2s ago
Main PID: 9658 (node_exporter)
Tasks: 3
CGroup: /system.slice/node_exporter.service
└─9658 /home/centos/node_exporter-1.0.0-rc.1.linux-amd64/node_exporter
May 27 03:42:54 .linuxvmimages.com node_exporter[9658]: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=t...l_zone
May 27 03:42:54 .linuxvmimages.com node_exporter[9658]: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=time
May 27 03:42:54 .linuxvmimages.com node_exporter[9658]: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=timex
May 27 03:42:54 .linuxvmimages.com node_exporter[9658]: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=udp_queues
May 27 03:42:54 .linuxvmimages.com node_exporter[9658]: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=uname
May 27 03:42:54 .linuxvmimages.com node_exporter[9658]: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=vmstat
May 27 03:42:54 .linuxvmimages.com node_exporter[9658]: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=xfs
May 27 03:42:54 .linuxvmimages.com node_exporter[9658]: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:112 collector=zfs
May 27 03:42:54 .linuxvmimages.com node_exporter[9658]: level=info ts=2020-05-27T07:42:54.870Z caller=node_exporter.go:191 msg="Listen...=:9100
May 27 03:42:54 .linuxvmimages.com node_exporter[9658]: level=info ts=2020-05-27T07:42:54.870Z caller=tls_config.go:170 msg="TLS is di...=false
Prometheus へのサーバーの追加
ステップ 1: prometheus.yml を編集する
prometheus.yml ファイルに新しいジョブを追加する必要があります。ターミナルで新しいタブを開き、以下のようにファイルを編集します。
[centos@ ~]$ sudo gedit prometheus.yml
- job_name: 'node_exporter'
static_configs:
- targets: ['localhost:9100']
注: 上記では、Prometheus サーバー自体を監視したいので、ターゲットでローカルホストを構成しました。これを実際の Linux サーバーの IP に変更できます。ポート 9100 は、node_exporter のデフォルトのポートです。
ステップ 2: Prometheus を停止して起動する
[centos@]$ sudo systemctl stop prometheus.service
[centos@]$ sudo systemctl start prometheus.service
ステップ 3: ターゲットを確認する
https://localhost:9090/targets に移動します。実行中のターゲットが見つかります。その 1 つはノード エクスポーターです。
Prometheus を Grafana に統合する
これで、Grafana と Prometheus がインストールされました。サーバーの監視に使用しましょう。
- Grafana ホームに移動し、左側の設定記号をクリックします。次に「データソース」をクリックします。
- [データ ソースの追加] をクリックし、[Prometheus] を選択します。
- URL をポート 9090 の Prometheus サーバーの IP として設定します。この例では、同じサーバー上で Prometheus と Grafana を実行しているため、http://localhost:9090 になります。
- 「保存してテスト」をクリックします。データ ソースが追加されたことを示す成功メッセージが表示されます。
素晴らしい!
Grafana は Prometheus に正常に接続されました。ダッシュボードを作成します。簡単にするために、Linux サーバーのメトリックを監視するために Grafana の公式 Web サイトにある既存の ノード エクスポーター ダッシュボード を使用します。
- Grafana ホーム ダッシュボードに移動し、+ 記号をクリックして、インポートをクリックします。
- [Import via grafana.com] で、ダッシュボード ID 1860 を入力し、[Load] をクリックします。
- 次に、Prometheus データ ソースを選択し、[インポート] をクリックします。
- 完全なノード エクスポーター ダッシュボードがインポートされます。システム負荷、使用されている RAM、CPU ビジーなどのすべてのメトリクスが Grafana で正常に監視されていることがわかります。
- 下にスクロールすると、Grafana が多くのメトリクスを視覚化できることがわかります。
- さらに詳しい情報を取得したい場合は、特定のメトリクスの視覚化をクリックして詳細を確認できます。ここでは、過去 30 分間のパケット視覚化によるネットワーク トラフィックをチェックしています。
結論
これにより、サーバー メトリクス用に Grafana と Prometheus を設定する方法が理解できれば幸いです。サーバーを監視する方法は他にもあります。クラウドベースのサーバー監視や自己ホスト型の軽量ソフトウェアを試すことができます。
Grafana の学習に興味がある場合は、この Udemy ハンズオン コース をチェックすることをお勧めします。






![2021 年に Raspberry Pi Web サーバーをセットアップする方法 [ガイド]](https://i0.wp.com/pcmanabu.com/wp-content/uploads/2019/10/web-server-02-309x198.png?w=1200&resize=1200,0&ssl=1)





