새소식

⇥ DevOps Tech 🙋🏻‍♀️/✏️ Ansible

Ansible 입문

  • -
반응형

Ansible 이란 ?

Infrastructure as Code (IaC)
인프라로 코드를 관리하는 툴

- 시스템, 하드웨어 또는 인터페이스의 구성정보를 파일 (스크립트) 를 통해 관리하는 '프로비저닝'
- IT 인프라 스트럭쳐, 베어메탈 서버등의 물리장비 및 가상 머신과 관련된 구성 리소스를 관리
- '버전 관리' 를 통한 리소스 관리

(베어메탈서버 : 하드웨어에 어떠한 소프트웨어도 설치되지 않은 서버)

 

구성 관리 도구

- 다른 IaC 도구에 비교해 가볍고 빠르다.
- 특정 문제가 발생했을 때 복구 및 대응하는 작업, 스크립트 화 하여 작업하는데 특화되어 있다.
- Terraform 은 인프라의 신규 구축에 많이 사용, Ansible 은 이미 구축된 서비스를 관리하는데 주로 사용된다.
- 다른 IaC 도구와 다르게 에이전트가 필요하지 않으며 (Agentless), 별도의 DSL 언어가 아닌 Yaml 로 스크립트를 작성한다.
- 여러개의 서버를 효율적으로 관리할 수 있게 해주는 환경 구성 자동화 도구
- Push 기반의 서비스 (Python 의 SSH 프로토콜 사용 -> Python 설치는 필요)

 

활용 정보

- 설치 : apt-get, yum, homebrew 
- 파일 및 스크립트 배포 : copy
- 다운로드 : get_url, git
- 실행 : shell, task

등 기존에 관리자가 수동으로 진행하던 일을 자동화, 효율적으로 관리할 수 있게 해준다.

 

실행 결과

- ok : 성공
- failed : 실패
- changed : 변경
- unreachable : 명령이 도달하지 못함

 

설치 

리눅스

yum install ansible

 

brew install ansible
% ansible --version
ansible [core 2.13.4]
  config file = None
  configured module search path = ['/Users/leejungwook/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/Cellar/ansible/6.4.0/libexec/lib/python3.10/site-packages/ansible
  ansible collection location = /Users/leejungwook/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/local/bin/ansible
  python version = 3.10.6 (main, Aug 30 2022, 05:12:36) [Clang 13.1.6 (clang-1316.0.21.2.5)]
  jinja version = 3.1.2
  libyaml = True
반응형

'⇥ DevOps Tech 🙋🏻‍♀️ > ✏️ Ansible' 카테고리의 다른 글

Ansible Role 을 이용한 노드 설치 자동화  (59) 2023.10.20
Ansible Role 작성 방법  (0) 2023.10.18
Ansible Tower (AWX) 설치 방법  (0) 2023.10.17
Ansible Playbook  (0) 2022.10.06
Ansible 사용 방법  (4) 2022.09.26
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.