ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 오픈소스로 구성하는 인프라 시스템 - Ralph3 DCIM & CMDB 설치
    오픈소스 2017. 12. 4. 22:35

    여러분의 사무실이나 IDC의 자산관리는 어떤 방법으로 관리를 하고 계신가요?


    아마 대부분은 엑셀을 이용하여 자산관리와 IP 리스트 관리, 랙 상면 구성도를 관리하고 계실꺼라 생각이 됩니다.

    물론 엑셀로도 충분히 관리가 가능은 하겠지만, asset이 한 번 변경되면 수정해야 되는 부분들이 3~4배는 생기게 됩니다.


    게다가 최근에는 가상화를 위한 hypervisor와 가상서버 구축도 늘고 있어, 관리하기 위한 자산은 몇배로 늘고 있습니다.

    그래서 엑셀로 관리를 하다보면 자칫 놓치게 되는 부분들이 생겨나고, 이후에 전수검사를 하게되는 상황이 발생하고는 합니다. (실제로 저는 이직을 하면 한번은 자산 전수 검사를 하고 있습니다. 흑...)


    이렇게 엑셀로 관리하다보면, 이런 데이터를 DB에 저장하고 웹어서 확인, 저장, 수정이 가능한 솔루션을 찾거나 개발하고 계실꺼라 생각이 됩니다.


    이런 솔루션을 DCIM(Data Center Infrastructure Management) 또는 CMDB(Configration Management Database) 라고 하며, 그중에서 ralph3이라는 오픈소스 솔루션을 설치해 보도록 하겠습니다.


    http://ralph.allegro.tech/

    위 URL로 접속하면 설치와 사용에 관한 문서와 Demo 사이트, github를 접속할 수 있습니다.


    설치는 두가지 방법을 제공합니다. ubuntu 14.04의 패키지 설치와 Docker 이미지를 이용한 설치를 제공합니다.

    저는 ubuntu14.04 패키지를 이용하는 방법으로 설치를 진행 하였습니다. 주의점은 ubuntu는 반드시 14.04 버전으로 설치를 하셔야 합니다. 만약 최신버전의 ubuntu를 설치 하였을 경우 기본 제공하는 python3.4 지원을 하지 않아서 설치가 정상적으로 진행되지 않습니다. (python3.4를 따로 설치하면 될지도 모릅니다....ㅎㅎㅎ)


    ubuntu14.04는 아래 사이트에서 다운로드 받으시면 됩니다.

    http://releases.ubuntu.com/14.04/


    ubuntu 설치가 완료되면 ralph 패키지 리스트를 설치합니다.

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61

    sudo sh -c "echo 'deb https://dl.bintray.com/vi4m/ralph wheezy main' > /etc/apt/sources.list.d/vi4m_ralph.list"


    다음으로는 패키지 업데이트를 받고 ralph-core, redis-server, mysql-server를 설치합니다.

    sudo apt-get update

    sudo apt-get install ralph-core redis-server mysql-server


    패키지 설치가 완료되면 ralph에서 사용하는 DB와 DB User를 생성합니다.

    CREATE database ralph default character set 'utf8';

    CREATE USER 'ralph'@'localhost' IDENTIFIED BY 'ralph';

    GRANT ALL PRIVILEGES ON ralph.* TO 'ralph'@'localhost';

    FLUSH PRIVILEGES;


    그리고 설치를 진행하는 OS User profile에 환경변수를 등록합니다.

    cat <<EOF >> ~/.profile

    export DATABASE_NAME=ralph

    export DATABASE_USER=ralph

    export DATABASE_PASSWORD=ralph

    export DATABASE_HOST=127.0.0.1

    export PATH=/opt/ralph/ralph-core/bin/:\$PATH

    EOF


    환경변수 적용은 아래 명령을 실행 합니다.

    source ~/.profile


    그리고 디버깅을 위해 소스 패키지에서 디버깅 모드를 활성화 합니다.

    sudo sed -i '/^DEBUG/s/False/True/' /opt/ralph/ralph-core/lib/python3.4/site-packages/ralph/settings/prod.py


    모든 준비가 완료되면 아래 ralph 명령어를 이용하여 설치를 진행합니다.

    ralph migrate

    ralph sitetree_resync_apps

    ralph createsuperuser


    설치가 정상적으로 완료되면 아래 명령어를 이용해 서버를 실행합니다.

    nohup ralph runserver 0.0.0.0:8000 &


    그리고 설치한 서버의 8000 포트로 접속을 하면 아래와 같은 화면을 만날 수 있습니다.


    관리자 계정을 생성하고 로그인을 하면 아래와 같은 메인화면을 만날 수 있습니다.


    CMDB는 주로 시스템 관리자나 자산관리자가 이용하는 솔루션이기는 하지만, ldap이나 Active Directory를 운영하고 있다면 ralph3에 연동하여 좀 더 편리한 계정 및 권한 관리를 할 수 있습니다.


    다음 시간에는 Active Directory를 연결해 계정과 그룹에 권한을 부여하는 방법을 알아보도록 하겠습니다.


Designed by Tistory.