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 |
댓글
이 글 공유하기
다른 글
-
Ansible Role 작성 방법
Ansible Role 작성 방법
2023.10.18 -
Ansible Tower (AWX) 설치 방법
Ansible Tower (AWX) 설치 방법
2023.10.17 -
Ansible Playbook
Ansible Playbook
2022.10.06 -
Ansible 사용 방법
Ansible 사용 방법
2022.09.26