Rocky Linux 8에 Ansible을 설치하는 방법


이 페이지에서

  1. 전제 조건
  2. 1단계. 시스템 업데이트
  3. 2단계. EPEL 저장소 구성
  4. 3단계. Ansible 설치
  5. 4단계. Ansible 설치 확인\n
    1. Ansible용 대상 서버 구성
    2. SSH 키 생성
    3. 인벤토리 파일 만들기
    4. 원격 서버 핑\n

    Ansible은 소프트웨어 프로비저닝, 구성 관리 및 애플리케이션 배포를 자동화하는 오픈 소스 소프트웨어입니다. 이 도구는 여러 Linux 또는 UNIX 유사 시스템에 대한 클라우드 프로비저닝, OS 배포 등을 자동화하도록 설계되었습니다. Ansible 자동화 도구를 사용하면 데이터 센터의 서비스와 다른 기술로 개발된 제품을 자동화할 수 있습니다.

    Ansibles의 주요 목표는 과도한 사용자 지정 스크립팅이나 수동적인 단조로운 작업 없이 복잡한 엔터프라이즈 환경을 관리할 수 있을 만큼 IT 자동화를 간단하게 만드는 것입니다. Python 자체 이외의 추가 종속성을 요구하지 않음으로써 사용자는 오늘날 대부분의 주요 Linux 배포판에서 기본적으로 활성화되는 SSH 연결을 통해 시스템을 추가로 자동화할 수 있습니다.

    Ansible은 SSH를 통해 노드에 연결하고 원격 시스템에 대한 정보를 수집하여 작동합니다. 그런 다음 배포 서비스 또는 기타 구성 관리 목표를 위해 플레이북에서 작업을 실행합니다. 플레이북은 클라우드 서버 인스턴스, 가상 머신, 컨테이너 등의 생성과 같은 시스템 프로비저닝 프로세스를 얼마든지 자동화할 수 있습니다. Ansible은 본질적으로 다양하고 종종 다음을 기반으로 사용자 정의가 필요한 서버 간 애플리케이션 배포와 같은 반복 작업을 자동화하는 데 유용합니다. 로컬 인프라 및 사용자 입력. Kubernetes를 실행하는 클러스터는 Ansibles 컨테이너 오케스트레이션 지원을 통해 쉽게 관리할 수 있습니다. 개인 레지스트리에서 이미지를 가져오고 클러스터 전체에서 포드 구성을 동시에 업데이트하는 것과 같은 작업을 수행합니다.

    새 Linux 패키지 설치를 몇 번이나 시도했지만 실패했습니까? Ansible 패키지를 Linux 시스템에 설치하고 싶었지만 방법을 모르셨습니까? 예라고 대답했다면 이 블로그 게시물은 귀하를 위한 것입니다. 이 튜토리얼은 Rocky Linux 8 시스템에서 Ansible을 다운로드, 컴파일 및 설치하는 방법을 보여줍니다.

    전제 조건

    • Rocky Linux 8 운영 체제를 실행하는 서버\n
    • 루트 권한\n

    1단계. 시스템 업데이트

    먼저 모든 최신 패키지가 설치되도록 시스템을 업데이트해야 합니다. 터미널을 열고 다음 명령을 입력합니다.

    sudo dnf update -y

    2단계. EPEL 저장소 구성

    EPEL(Extra Packages for Enterprise Linux) 리포지토리는 Red Hat 릴리스 패키지를 보완하는 고품질 추가 패키지 세트를 생성, 유지 및 관리하는 Fedora Special Interest Group입니다. 리포지토리의 초점 영역 중 일부는 게임 및 교육용 응용 프로그램, 프로그래밍 언어 및 도구, 가상화 및 시스템 관리입니다.

    Ansible은 Python에 의존하며 EPEL 저장소 없이는 설치할 수 없습니다. 따라서 dnf를 통해 ansible을 설치하려면 먼저 EPEL 저장소를 구성해야 합니다.

    sudo dnf install epel-release -y

    EPEL 저장소를 구성한 후 새 저장소에서 Ansible을 설치할 수 있도록 DNF 패키지 관리자를 업데이트해야 합니다.

    sudo dnf makecache

    리포지토리가 제대로 구성되었는지 확인하려면 다음 명령을 실행합니다.

    다음과 같은 결과가 표시됩니다.

    3단계. Ansible 설치

    이제 EPEL 저장소가 구성되었으므로 이를 사용하여 DNF 패키지 관리자와 함께 Ansible을 설치할 수 있습니다.

    sudo dnf -y install ansible

    DNF 명령은 모든 필수 패키지 다운로드를 시작하고 최신 버전의 Ansible을 시스템에 설치해야 합니다. 설치 중에 GPG 키를 수락하라는 메시지가 표시될 수 있습니다. 계속하려면 Y와 Enter를 누르십시오.

    Ansible이 설치되면 다음 명령을 실행하여 설치된 Ansible 버전을 확인할 수 있습니다.

    ansible --version

    Ansible은 버전 번호와 릴리스 날짜를 표시해야 합니다. 이렇게 하면 Ansible이 제대로 설치되었는지 확인할 수 있습니다.

    4단계. Ansible 설치 확인

    설치가 성공했는지 확인합니다. 이 단계에서는 Ansible을 사용하여 원격 서버를 관리하거나 관리합니다.

    Ansible용 대상 서버 구성

    Ansible은 SSH를 사용하여 대상 서버에 연결하고 구성합니다. SSH는 SSH를 통해 원격 시스템에서 명령을 실행하기 위해 원격 Linux 시스템에 안전하게 연결하는 데 사용되는 널리 사용되는 네트워크 프로토콜입니다.

    Ansible은 22포트를 사용하므로 SSH 연결을 허용하려면 방화벽에서 22포트를 열어야 합니다.

    이 예에서는 IP 주소가 137.184.66.179인 Ubuntu 20.04 서버 하나를 사용합니다.

    Ansible로 관리하려는 서버의 IP 주소를 사용할 수 있습니다. 위의 IP 주소를 대상 서버로 바꾸십시오. 시스템의 DNS 이름 또는 DNS 별칭을 사용할 수도 있습니다.

    다음 명령을 실행하여 SSH 서버를 설치하고 대상 서버에서 포트 22를 엽니다.

    sudo apt install openssh-server
    sudo systemctl start ssh
    sudo systemctl enable ssh
    sudo ufw allow 22

    SSH 키 생성

    이 단계에서는 로컬 시스템에서 SSH 키를 생성한 다음 원격 시스템에 SSH 키를 푸시해야 합니다.

    SSH 키는 SSH로 SSH 연결을 설정할 수 있도록 하는 단순한 키 쌍입니다. 다음 명령을 실행하여 로컬 시스템에서 SSH 키를 생성합니다. Enter 키를 여러 번 눌러 기본값을 적용합니다. 다음과 같은 결과가 표시됩니다.

    ssh-keygen

    SSH 키가 생성된 후 새로 생성된 SSH 키를 대상 시스템에 푸시해야 합니다. 호스트 시스템에서 다음 명령을 실행하여 키를 푸시합니다.

    ssh-copy-id 

    루트를 대상 시스템의 sudo 사용자로 바꾸는 것을 잊지 마십시오. 137.184.66.179를 대상 머신의 IP 주소로 바꿉니다.

    이제 원격 시스템에서 아래 명령을 실행하여 암호를 다시 입력할 필요 없이 sudo 접두사를 사용하여 SSH 명령을 실행합니다.

    echo "$(whoami) ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/$(whoami)

    인벤토리 파일 생성

    Ansible은 호스트 인벤토리를 /etc/ansible 디렉토리 내의 파일에 보관하며 이름은 hosts입니다. 호스트 파일을 사용하여 원격 서버를 관리하기 위한 호스트 인벤토리를 생성할 수 있습니다.

    기능, 위치 또는 기타 기준에 따라 호스트 그룹을 만들 수도 있습니다. 예를 들어 웹 서버라는 호스트 그룹을 만들고 Apache 또는 Nginx를 실행하는 모든 서버를 이 그룹 내에 배치할 수 있습니다. 이는 보다 유연한 방식으로 호스트를 제어하고 관리하는 방법을 제공합니다.

    먼저 즐겨 사용하는 텍스트 편집기로 호스트 파일을 엽니다.

    sudo nano /etc/ansible/hosts

    인벤토리 파일의 내용은 다음과 같아야 합니다.

    이 인벤토리에 추가 호스트를 추가하려면 호스트의 호스트 이름 또는 IP 주소로 새 줄을 추가하기만 하면 됩니다. 이 예에서는 webservers 그룹 아래의 호스트 파일에 IP 주소가 137.184.66.179인 서버를 하나 더 추가합니다.

    ctrl+o를 눌러 파일을 저장하고 ctrl+x를 눌러 파일을 종료합니다.

    원격 서버 핑

    인벤토리 파일이 생성되면 Ansible에 새 원격 서버가 있음을 알려야 합니다. -m ping 인수와 함께 ansible 명령을 사용하여 이를 수행할 수 있습니다.

    ansible -m ping all

    오류가 없으면 원격 서버가 인벤토리 파일에 성공적으로 추가되었으며 Ansible 설치가 성공한 것입니다.

    결론

    이 튜토리얼에서는 Rocky Linux 8.4 시스템에 Ansible을 설치하고 SSH를 통해 원격 서버에 연결하는 방법을 배웠습니다. 그런 다음 인벤토리 파일을 생성할 수 있는 호스트 그룹을 만드는 방법을 배웠습니다. 마지막으로 ansible 명령을 사용하여 원격 서버를 핑할 수 있었습니다.

    이제 우리는 Ansible의 기본 사항 중 일부를 다루었습니다. 이 튜토리얼이 유용하기를 바랍니다. Ubuntu 22.04 LTS에서 Ansible을 설치하고 구성하는 방법에 관심이 있을 수 있습니다.