CloudMapper를 데몬으로 만들기

CloudMapper란?



aws의 네트워크 구성도를 작성해 주는 툴입니다.
python3에서 움직입니다.

설치 절차

CloudMapper를 사용하여 AWS 환경을 시각화합니다.

daemon 만들기



/etc/systemd/system/cloudmapper.service

[Unit]
Description=cloudmapper
After=network.target

[Service]
Type=simple
WorkingDirectory=/var/www/github.com/duo-labs/cloudmapper/
ExecStart=/usr/local/pyenv/shims/python -u cloudmapper.py webserver
Restart=always
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target

centos7
sudo systemctl enable cloudmapper.service
systemctl start cloudmapper

하마리



daemon 화의 경위



터미널에서 python ./cloudmapper.py webserver 라고 두드리면 localhohst:8000 에서 cloudmapper 가 일어나 브라우저에서 볼 수 있게 됩니다.
터미널을 종료하면 볼 수 없게 되어 버리므로 daemon으로 영속적으로 볼 수 있도록 합니다.

파이썬으로 데몬



node 의 forever 에 상당하는 것은 없고 어쩌면 , service 에 넣기로 했습니다.
(파이썬 피요 글래머입니다)
  • 첫 번째
  • ExecStart=/usr/bin/python -u {フルパス}/cloudmapper.py webserver
    pyenv에서 python을 설치했으므로/usr/bin/python은 기본적으로 포함 된 버전 (python2 계열)입니다.
    cloudmapper는 python3이 아니면 움직이지 않으므로 which python에서 찾았습니다.
  • 두 번째
  • ExecStart=/usr/local/pyenv/shims/python -u {フルパス}/cloudmapper.py webserver
    이것도 움직이지 않습니다.
    터미널에서 두드리면 cloudmapper.py의 show_help가 호출되고 usage: ~가 표시됩니다.
    현재 폴더가 {전체 경로}이면 움직이지 않는다는 것을 알기 위해 시간이 걸렸습니다.
    cloudmapper.py의 사양이라고 생각합니다 어쩌면
  • 3번째
  • ExecStart=cd {フルパス};/usr/local/pyenv/shims/python -u cloudmapper.py webserver
    현재 폴더를 이동하면 좋다는 것을 알았으므로 명령을 연결했습니다
    커맨드 에러가 나왔기 때문에, 곧 알았습니다.
  • 4발째(해결)
  • WorkingDirectory={フルパス}ExecStart=/usr/local/pyenv/shims/python -u cloudmapper.py webserver
    WorkingDirectory에서 현재 폴더를 지정하여 해결합니다.

    (소요시간: 3시간)

    좋은 웹페이지 즐겨찾기