손쉬운 앤서블

이 글은 Ansible의 정의, 작동 방식 및 해결하는 문제, Ansible을 사용하여 3개의 Ubuntu 서버(curl, http, nginx, apache)에 이러한 애플리케이션을 설치하는 간단한 자습서를 안내합니다.

앤서블



Ansible은 Python으로 작성된 오픈 소스 자동화 구성 관리 및 애플리케이션 배포 도구입니다. 애플리케이션 배포를 자동화하고 IT 인프라를 관리하여 관리 오버헤드를 줄이는 데 도움이 됩니다.



UNIX 계열 시스템에서 실행되며 UNIX 계열 시스템과 Windows 시스템을 모두 프로비저닝하고 구성할 수 있습니다. Ansible은 다른 자동화 소프트웨어와 달리 에이전트가 대상 시스템에서 실행될 필요가 없습니다. SSH 연결 및 파이썬 인터프리터를 활용하여 대상 시스템에서 주어진 작업을 수행합니다.

Ansible은 클라우드 서버에 설치하여 중앙 위치에서 다른 클라우드 서버를 관리하거나 개인 시스템에서 사용하도록 구성하여 클라우드 또는 온프레미스 시스템을 관리할 수도 있습니다.

작동 원리



Ansible은 자동화에 관한 모든 것입니다. 모든 작업을 달성하려면 지시문이 필요하며 버전 제어를 쉽고 간단하게 수행할 수 있습니다.

Ansible은 control nodeshost nodes로 구성됩니다. Ansible은 control nodes에 설치되고 host nodescontrol nodes에 의해 관리됩니다. 에이전트를 사용하지 않고 배포가 매우 쉽습니다. 무엇보다 간단한 언어(Ansible Playbooks 형식의 YAML)를 사용합니다.

해결하는 문제





official documentation에 따르면 Ansible은 반복적인 작업을 끝내고 DevOps 팀이 보다 전략적인 작업을 수행할 수 있도록 하는 간단한 IT 자동화를 제공합니다.

다음은 Ansible에 대한 간단한 자습서이며 이 자습서의 목표는 이러한 애플리케이션을 3개의 Ubuntu 서버curl, nginx, apache에 설치하는 것입니다. 이것을 확인하십시오 repo .


  • 첫 번째 단계는 EC2 인스턴스(ubuntu)를 시작하고 이름을 Ansible-master로 지정하는 것입니다.
  • 명령을 실행하여 저장소 캐시를 업데이트합니다.

  • sudo apt update && sudo apt upgrade
    


  • 다음 명령을 실행하여 최신 버전의 Ansible을 Ansible-master에 설치합니다.

  • sudo apt install  ansible -y ansible –version
    


    SSH 키 쌍 생성



    Ansible을 통해 비밀번호를 사용하여 원격 호스트에 연결할 수 있습니다. 쉽고 안전한 로그인을 위해 키 기반 인증을 설정하는 것이 좋습니다.

    SSH를 통해 서버에 연결하고 이 명령을 실행하여 ansible-master에서 키 쌍을 생성합니다.

    ssh [email protected] 
    cd ~/.ssh 
    ssh-keygen -t rsa -b 2048
    

    ls 명령을 실행하여 .ssh 폴더에 생성된 두 개의 키를 확인합니다. 공개 키에는 .pub 확장자가 포함되어 있지만 개인 키에는 없습니다.

    ls
    


    퍼블릭 키를 복사하여 콘솔의 새로 가져오기 키 쌍에 붙여넣습니다.

    cat xx.pub 
    ansible key
    
    




    3개의 새 서버를 시작하고 새로 생성된 키 쌍을 사용합니다. ansible key


    연결 테스트(암호를 묻지 않고 명령을 실행하여 서버에 로그인).

    ssh  [email protected]
    


    만들기inventory file(서버에 할당된 IP 주소 포함).



    플레이북을 만듭니다.


    ansible.cfg 파일을 생성합니다.



    Ansible을 사용하여 원격 시스템에 연결하는 데 필요한 최소한의 구성을 완료했습니다. (ansible-master)에서 다음 명령을 실행하여 Ansible ping 모듈을 사용하여 호스트를 ping합니다.

    ansible all --key-file  ~/.ssh/id_rsa -i inventory -m ping
    




    플레이북을 실행하는 명령입니다.

    ansible-playbook -i inventory playbook.yml
    




    요약



    Ansible은 IT 인프라 전반에 걸쳐 모든 것을 자동화하고 단순해 보이게 만듭니다. 우리는 Ubuntu에 Ansible을 설치하는 방법을 배웠고 SSH 키 기반 인증을 사용하여 원격 서버에 연결하는 방법, 간단한 Ansible 명령을 실행하여 서버에 연결하는 방법도 살펴보았습니다. Ansible Documentation에 호스팅된 설명서에서 Ansible에 대해 자세히 알아볼 수 있습니다.

    좋은 웹페이지 즐겨찾기