てんこ

ブログ名は愛猫(てん)の愛称です。中身は個人のIT系学習記録です。

AnsibleでHinemosをインストールしてみた。

本日は、久しぶりに監視ツールを触りたいな、と思って、先日OSC北海道で紹介されていたHinemosをAnsibleでインストールしてみました。

Ansible関連の実践記事一覧はこちら


目的

  • Hinemosをインストールするため
  • 家庭内LANの監視をしつつ、Hinemosの使用感をつかむため

Hinemos自体の説明は、公式サイトをご覧ください。

環境

  • OS: CentOS Linux release 7.8.2003 (Core) (7.7のイメージから上げてます)
  • Hinemos: 6.2.2

構築手順

参考にしたWebページ

Hinemos公式ページのガイドから、以下URLの手順を参考にさせていただきました。

Hinemos ver.6.1 入門編① Hinemos ver.6.1を使ってみよう | Hinemos

作成したPlaybook

作成したPlaybookがこちら。 become用のパスワードはhost_varsに入れています。

本当はもうちょっとバージョンとかURLとかを変数に放り込んだほうがいいような

---
- hosts: hinemos
  gather_facts: true
  become: yes

  vars:
    user_name: ansible
    git_url: https://github.com/hinemos/hinemos/releases/download/
    MAJOR_VERSION: "6"
    MINOR_VERSION: "2"
    REVISION: "2"
    BUILD: "1"
    OS_TYPE: "el7"

  tasks:
    - name: Yum update
      yum:
        name: "*"
        state: latest
      register: result

    - name: Install packages
      yum:
        state: latest
        name:
          - unzip
          - vim-common
          - java
          - net-snmp
          - net-snmp-utils

    - name: Disable SELinux
      selinux:
        state: disabled

    - name: Change Firewalld Setting(TCP8080/UDP162)
      firewalld:
        port: "{{ item }}"
        permanent: yes
        state: enabled
      with_items:
        - "8080/tcp"
        - "162/udp"
        - "80/tcp"

    - name: Reboot
      reboot:
      when: result.changed

# ----------------------

    - name: Get Hinemos RPM File
      get_url:
        url: "{{ item }}"
        dest: /home/{{ user_name }}/
      with_items: 
        - "{{ git_url }}/v{{ MAJOR_VERSION }}.{{ MINOR_VERSION }}.{{ REVISION }}/hinemos-{{ MAJOR_VERSION }}.{{ MINOR_VERSION }}-manager-{{ MAJOR_VERSION }}.{{ MINOR_VERSION }}.{{ REVISION }}-{{ BUILD }}.{{ OS_TYPE }}.x86_64.rpm"
        - "{{ git_url }}/v{{ MAJOR_VERSION }}.{{ MINOR_VERSION }}.{{ REVISION }}/hinemos-{{ MAJOR_VERSION }}.{{ MINOR_VERSION }}-web-{{ MAJOR_VERSION }}.{{ MINOR_VERSION }}.{{ REVISION }}-{{ BUILD }}.{{ OS_TYPE }}.x86_64.rpm"


    - name: Install Hinemos Manager
      yum:
        name: /home/{{ user_name }}/hinemos-{{ MAJOR_VERSION }}.{{ MINOR_VERSION }}-manager-{{ MAJOR_VERSION }}.{{ MINOR_VERSION }}.{{ REVISION }}-{{ BUILD }}.{{ OS_TYPE }}.x86_64.rpm
        state: present

    - name: Start Hinemos Manager Service
      service:
        name: hinemos_manager
        state: started
        enabled: yes

    - name: Hinemos Manager Listen Check(tcp8080)
      wait_for:
        port: 8080
        delay: 10

# ----------------------

    - name: Install Hinemos Web ClientManager
      yum:
        name: /home/{{ user_name }}/hinemos-{{ MAJOR_VERSION }}.{{ MINOR_VERSION }}-web-{{ MAJOR_VERSION }}.{{ MINOR_VERSION }}.{{ REVISION }}-{{ BUILD }}.{{ OS_TYPE }}.x86_64.rpm
        state: present

    - name: Start Hinemos Web Client Service
      service:
        name: hinemos_web
        state: started
        enabled: yes

    - name: Hinemos Manager Listen Check(tcp80)
      wait_for:
        port: 80
        delay: 10

# ----------------------

# SNMP Client Setting

    - name: SNMP Service Enable
      service:
        name: snmpd
        state: started
        enabled: yes

インストール結果、接続確認

以下のように、インストールは無事完了。

f:id:tatematsu_san:20200718151532p:plain

ブラウザを使って接続確認してみたところ、問題なく管理画面にアクセスできました。

f:id:tatematsu_san:20200718151611p:plain

まとめ

まずはインストールまでですが、Ansibleを使って問題なくHinemosのインストールを実施することができました。

Hinemos初めて使うので、これからいろいろといじってみます。楽しみ!

実際に使う中でもうちょっと修正が必要になるかもしれませんので、その際にはまた修正します。