Azure

Azure Container Instances でPrometheus の Docker Image を展開して簡易監視環境を作る。

はじめに

くどうです。

今回はAzure Container Instances を利用してPrometheus 環境を構築する方法を説明していきます。
Container Instance 上で展開するメリットは一時的に展開して監視を行う場合です。
Containerを展開するのみなので、VMを立ち上げるより安易です。
あと、IaaSではないのでメンテナンスのさほどかからないですが費用面ではたぶん割高になると思います。
・・・Serverlessっぽくもありますね(白目

リクエスト
・DockerHubのアカウント
・Docker Imageを編集できる環境(ローカル、VMなど)

構成図は以下です。

・DockerHub
・Azure Container Instances
・VM(監視対象)

注意事項はセキュリティです。
上記の手法ではIP:9100とIP:9090はフルオープンです。

監視対象

監視対象となるVM(ex:ubuntu)を立ち上げます。
node-exporterをインストールします。

受信ポートに9100をanyで開けます。

グローバルIPを確認しておきます。
準備完了です。

Prometheus Container Imageを作成

Prometheus のContainer imageを作成します。

Prometheus のDocker ImageをBuildしようとすると下記のエラーが発生しました。

そこで、一度RunしてConfigを編集してCommitしてImageを作成しています。

編集ファイル
/etc/prometheus/prometheus.yml

targetsに監視対象(グルーバルIP:9100)を追記します。

対象をConfigに書き込んだらImageを取得しまします。

DockerHubにUploadします。
(事前に $sudo docker login が必要)

以上で準備完了です。
次は、Container Instanceを展開します。

Container imageをAzure Container Instancesに展開

ポータルから展開します。
DockerHubのレポジトリを指定します。

ポートは9090を指定します。

以上で完了です。
しばらくするとアクセス出来るようになります。

IPアドレス:9090にアクセスします。

しばらくするとグラフが確認できると思います。

まとめ

Container InstancesはDockerで利用できるものなら基本利用できるかと思います。
簡易環境の構築などにも利用できるのではないでしょうか。

再度書きますが注意事項はセキュリティです。
上記の手法ではIP:9100とIP:9090はフルオープンです。

Related post

  1. Azure

    CacooでAzureのステンシル、テンプレートが使えるようになった。

    はじめにヌーラボさんのCacooですがAzureのステンシル、テン…

  2. Azure

    リリース前にリソースはLockしようぜ。間違って削除したらおバカです。

    はじめにくどうです。例えば、Azureで仮想マシンを使って…

  3. Azure

    PowerMockupのAzure Icon Setを更新(ver2.5)

    更新アップデートしてたのでPowerMockupのシェイプも更新…

  4. Azure

    AzureにKubernetesを展開する5つの方法

    はじめにくどうです。今回は、AzureにKubernete…

  5. Azure

    Active DirectoryをASMからARMに移行する方法を考える。

    はじめにくどうです。何かと仮想マシンでActive Dir…

  1. Azure

    Azure Active Directory にユーザーを一括登録する。ただし、…
  2. 未分類

    CentOSにHinemosをインストールする方法(3) エージェント編
  3. 未分類

    National Information Security Center
  4. Azure

    Serverless Framework が Azure Functionsをサ…
  5. AWS

    Storage Gateway を Windows Server バックアップの…
PAGE TOP