Ansible: localhost에서 원격 호스트로 파일, 디렉토리 또는 스크립트를 복사하는 방법은 무엇입니까?

게시 됨: 2019-02-24

Ansible을 사용하여 로컬 호스트에서 원격 호스트로 파일을 복사하는 방법

IT 관리 부서의 일원으로서 사람들은 lots of scripts 와 명령줄 도구를 처리합니다. 수천 개의 원격 호스트에 파일이나 스크립트를 복사해야 하는 일상적인 상황에 직면하게 될 것입니다.

IT 부서 직원은 thousands of hosts 각각에 로그인하고 수동으로 스크립트를 실행하지 않습니다. 이것이 바로 Ansible이 등장한 이유입니다. Ansible은 무료로 제공되는 매우 강력한 IT 관리 솔루션입니다.

이 튜토리얼에서는 Ansible을 사용하여 원격 호스트에 파일을 복사하는 단계를 살펴보겠습니다.

우리는 무엇을 할 것인가?

crunchify.txt 파일을 /opt/ashah/ 위치에서 원격 호스트 192.66.129.83 의 대상 디렉토리 /opt/ashah/ 로 복사합니다.

1 단계

Linux Ubuntu 또는 macOS에 Ansible을 설치합니다. 튜토리얼을 따라 자세한 단계를 살펴보세요.

2 단계

이 자습서의 몇 가지 기본 사항과 파일 위치를 이해해 보겠습니다.

  • 구성 파일 위치: /etc/ansible/ansible.cfg
  • 스크립트 파일: /opt/ashah/crunchify.yml
  • 호스트 파일: /opt/ashah/hosts
  • 복사할 파일: /opt/ashah/crunchify.txt(테스트 파일)

3단계

crunchify.yml 파일 내용.

4단계

hosts 파일 콘텐츠. IP 주소를 원격 호스트로 변경해야 합니다.

5단계

아래 내용으로 crunchify.txt 파일을 생성합니다.

6단계

다음 명령을 실행하여 파일을 원격 호스트에 복사합니다.

  • Command : 가능한 플레이북 -b -vvv -u root crunchify.yml -kkkk -extra-vars "crunchify-group" -i 호스트

모든 매개변수를 이해합시다.

  • -b : become로 작업을 실행합니다(-become와 동일).
  • -vvv : 상세 모드(더 많은 경우 -vvv, 연결 디버깅을 활성화하려면 -vvvv).
  • -u : 이 사용자로 연결합니다(기본값=없음).
  • -kkkk : 연결 비밀번호를 묻습니다.
  • –extra-vars : 파일 이름 앞에 @가 붙는 경우 추가 변수를 key=value 또는 YAML/JSON으로 설정합니다.
  • -i : 인벤토리 호스트 경로 또는 쉼표로 구분된 호스트 목록을 지정합니다.

그게 다야 파일을 성공적으로 복사했습니다.

파일이 새 원격 호스트로 복사되었는지 확인하는 방법은 무엇입니까?

원격 호스트에 로그인하고 /opt/ashah 위치를 확인하면 crunchify.txt 파일이 표시됩니다.

디렉토리 내용을 다른 디렉토리에 복사하는 방법은 무엇입니까?

crunchify.yml 파일의 srcdesc 값을 변경하기만 하면 됩니다. 다음은 업데이트된 crunchify.yml 파일입니다.

/opt/ashah/ 폴더 아래의 모든 파일이 이제 원격 호스트에 복사됩니다.

Ansible을 사용하여 원격 위치에 파일을 복사하는 데 질문이 있으면 알려주십시오.