Munin을 Docker 컨테이너에 설치

Munin을 Docker 컨테이너에 설치



목적


  • munin 평가 (개인적)
  • MRTG, Zabbix 사용한 적
  • sensu도 흥미 롭지만 그렇게 큰 것은 지금은 가정하지 않으므로 나중에


  • 대상


  • 모니터링 도구에 관심이 있습니다
  • 모니터링 도구를 좋아합니다
  • 그래프를 보는 것을 좋아합니다

  • 시스템



  • 호스트
  • 우분투 14.04
  • docker 1.12
  • isolated-network
  • ubuntu:latest
  • munin: 2.0.25
  • apache: 2.4.18



  • centos7 컨테이너로 하려고 생각하고 있었습니다만 컨테이너내에서의 systemd 동작이 귀찮을 것 같기 때문에 일단 스루로. .
  • htps : // 기주 b. 코 m / 도 c 케 r / 도 c 케 r / 이스에 s / 6980
  • htps : // 기주 b. 코 m/도 c케 r/도 c케 r/이스에 s/7459


  • 참조


  • htps : // 에 lp. 어쩌면. 이 m/lts/세르ゔぇr구이데/무닌. HTML
  • htps : // 에 lp. 어쩌면. 이 m/lts/세르ゔぇr구이데/htppd. HTML
  • htps //w w. 세 rゔぇr-rld. 인후 / 엔 / 뭐야? 오 = 우분 _ 16.04 & p = 무닌
  • htps //w w. 세 rゔぇr-rld. 인후 / 엔 / 뭐야? O = Ubuntu_16.04 & p = ht tpd & f = 1

  • 건설



    1. 컨테이너 건조


    root# docker pull ubuntu:latest
    
    root# docker run \
    -itd --name munin-server01 \
    -p 0.0.0.0:8080:80 \
    -p 0.0.0.0:4948:4948 \
    --network=isolated_nw \
    -t ubuntu:latest /bin/bash
    
    
    root# docker attach munin-server01
    
    [root@5e4d20afb75f /]# dpkg-reconfigure tzdata
    [root@5e4d20afb75f /]# apt-get -y update ; apt-get -y upgrade
    
    [root@5e4d20afb75f /]# cat /etc/lsb-release
    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=16.04
    DISTRIB_CODENAME=xenial
    DISTRIB_DESCRIPTION="Ubuntu 16.04.1 LTS"
    

    2. munin 설치 (감시 서버 on 컨테이너)


    [root@5e4d20afb75f /]# apt-get -y install apache2
    [root@5e4d20afb75f /]# apt-get -y install munin vim
    
    [root@5e4d20afb75f /]# vi /etc/munin/munin.conf
    
    add lines
    
    ### docker host
    [fs1]
        address 192.168.100.5
        use_node_name yes
    
    [root@5e4d20afb75f /]# vi /etc/apache2/conf-enabled/security.conf
    
    ServerTokens Prod
    
    [root@5e4d20afb75f /]# vi /etc/apache2/apache2.conf
    
    ServerName www.munin-server.com
    
    [root@5e4d20afb75f /]# vi /etc/apache2/conf-enabled/munin.conf
    
    ### add LAN Segments
    Require ip 192.168.100.0/24
    
    [root@5e4d20afb75f /]# service cron start
    [root@5e4d20afb75f /]# /etc/init.d/munin start 
    [root@5e4d20afb75f /]# service apache2 start
    

    3. munin-node 설치(Docker Host on ubuntu)


    # apt-get install munin-node
    
  • munin 서버의 IP 확인
  • # docker network inspect isolated_nw | jq .[].Containers
    (snip)
        "IPv4Address": "172.19.0.3/16",
    
    # vi /etc/munin/munin-node.conf
    
    (edit)
    
    host_name fs1
    allow ^172\.19\.0\.3$
    
    # service munin-node restart
    

    4. 웹 브라우저에서 액세스


  • 5 분 이상 기다리십시오 (/etc/cron.d/munin)

  • LAN 측의 8080에 매핑 되었기 때문에 Docker 호스트 IP의 8080에 브라우저로 액세스
  • 예: http://192.168.100.5:8080/무닌

  • 아래의 표시가 나오면 성공



  • 5. 끝



    additional memo


  • add snmp plugin
  • # munin-node-configure --shell --snmp 192.168.100.203 \
    --snmpversion 2c --snmpcommunity public
    
    ln -s '/usr/share/munin/plugins/snmp__if_' '/etc/munin/plugins/snmp_192.168.100.203_if_1'
    ln -s '/usr/share/munin/plugins/snmp__if_' '/etc/munin/plugins/snmp_192.168.100.203_if_10119'
    ln -s '/usr/share/munin/plugins/snmp__if_' '/etc/munin/plugins/snmp_192.168.100.203_if_10124'
    ln -s '/usr/share/munin/plugins/snmp__if_err_' '/etc/munin/plugins/snmp_192.168.100.203_if_err_1'
    ln -s '/usr/share/munin/plugins/snmp__if_err_' '/etc/munin/plugins/snmp_192.168.100.203_if_err_10119'
    ln -s '/usr/share/munin/plugins/snmp__if_err_' '/etc/munin/plugins/snmp_192.168.100.203_if_err_10124'
    ln -s '/usr/share/munin/plugins/snmp__if_multi' '/etc/munin/plugins/snmp_192.168.100.203_if_multi'
    ln -s '/usr/share/munin/plugins/snmp__uptime' '/etc/munin/plugins/snmp_192.168.100.203_uptime'
    
    # munin-node-configure --shell --snmp 192.168.100.203 \
    --snmpversion 2c --snmpcommunity public | sh
    

    좋은 웹페이지 즐겨찾기