designetwork

ネットワークを軸としたIT技術メモ

DockerでHinemosをインストールする (初期構築)

f:id:daichi703n:20180415231822p:plain

NTTデータOSSとして開発している統合監視システムのHinemosをDockerで導入してみる。

こちらにオフィシャルのDocker Imageがあるが、バージョンが古く、メンテナンスもされていないようなので、自分でDockerfileから作成する。

https://hub.docker.com/r/hinemos/hinemos-5.0-jp/

なお、今回は初期のインストールとWebGUI確認までをスコープとするため、データ永続化、可用性等は考慮していない。引き続きHinemosの設定方法等を検証していく予定。

※まだ本内容では商用利用しないでください。

HinemosインストールDockerfile作成

Hinemosのインストールで必要となる作業はオフィシャルで説明されている通り。

github.com

こちらではサンプル構成を含めて説明されている。

Hinemos ver.6.0 入門編① Hinemos ver.6.0を使ってみよう | Hinemos | クラウド時代の統合運用管理

上記を踏まえて作成したDockerfileはこちら

github.com

How to Use

以下の手順で簡単に使用開始できます。

  • 前提条件
    • Dockerがインストールされていること
    • Docker Composeがインストールされていること(オプション)

docker run で起動する

docker run -d --privileged --name hinemos-manager -p 8080:8080 -p 8081:8081 -p 161:161/udp -p 162:162/udp -p 514:514 -p 10080:80 daichi703n/hinemos-manager /sbin/init

access to http://<DockerHost IP or FQDN>:10080

解放ポートは要件によって調整の余地あり。

docker-compose up で起動する

git clone https://github.com/daichi703n/docker-hinemos-manager
cd docker-hinemos-manager
docker-compose up -d

この場合、ImageのBuildから走りますのでご了承ください。

Hinemosにアクセスする

Hinemosを起動して、Webブラウザからアクセスすると、以下のようなログイン画面が表示される。(日本語ロケール未適用)

f:id:daichi703n:20180415233208p:plain

初期User ID/Passwordはhinemos/hinemos。 Manager URLはそのままでOK。

f:id:daichi703n:20180415233150p:plain

Hinemos WebGUIへのログインが成功すると、チュートリアル画面が表示される。

f:id:daichi703n:20180415233243p:plain

あとは案内されている通り、監視対象機器を追加して運用開始できる。(画像は機器未登録)

f:id:daichi703n:20180415233407p:plain

まとめ - DockerでHinemosをインストールする (初期構築)

Dockerで統合監視システムのHinemosをデプロイした。

基本的に手順はHinemosオフィシャルのVM環境を前提としたものであるため、Dockerでのデプロイ環境には最適化できていないが、簡単に初期構築ができるようになった。

引き続き検証しアップデートしていこうと思う。


(Update) [WIP] PostgreSQL DBデータ永続化

Please enable volume mount after below steps.

  1. docker-compose up with no volume mount.
  2. mkdir -p /srv/docker/hinemos
  3. docker cp <CONTAINER ID of hinemos>:/opt/hinemos/var/data /srv/docker/hinemos/data
  4. chown 1000:1000 -R /srv/docker/hinemos/data
    volumes:
    - /srv/docker/hinemos/data:/opt/hinemos/var/data

ToDo

  • 日本語ロケール対応
  • Hinemos Agent連携
  • 設定ファイルの外部定義化
  • etc.