본문 바로가기

728x90

ansible

[draft] Ansible Pull 모드를 사용하여 NGINX를 설치하는 방법 Ansible Pull 모드를 사용하여 NGINX를 설치하는 방법Ansible Pull 모드는 중앙 관리 서버에서 명령을 푸시하는 대신 각 클라이언트가 자신의 구성 정보를 풀(pull)하여 적용하는 방식입니다.Git 저장소 준비Ansible pull 모드는 Git에서 플레이북을 가져오므로 Git 서버 또는 GitHub, GitLab 등의 저장소에 플레이북을 올립니다. 로컬에서 Git 저장소를 생성합니다.mkdir -p ~/ansible-pull && cd ~/ansible-pullgit init플레이북 작성nginx-playbook.yml을 작성하여 NGINX를 설치하는 작업을 정의합니다.vim nginx-playbook.yml- hosts: localhost become: yes tasks: .. 더보기
[draft] 우분투에 Ansible을 설치하는 방법 우분투 24.04에 Ansible을 설치하는 방법테스트 환경$ lsb_release -dDescription: Ubuntu 24.04.1 LTS시스템 패키지 업데이트sudo apt updateAnsible 패키지 설치Ubuntu 24.04에서는 최신 버전의 Ansible이 기본적으로 제공되지 않을 수 있습니다.Ansible의 공식 PPA(Personal Package Archive)를 추가하고 설치하는 것이 좋습니다.sudo apt install software-properties-commonsudo add-apt-repository --yes --update ppa:ansible/ansible더보기---cat /etc/apt/sources.list.d/ansible-ubuntu-ansible-noble.. 더보기
Ansible Facts Ansible Facts Facts는 Ansible이 목표 호스트에서 수집하는 정보입니다. 플레이북 편집 vim gather_facts_playbook.yml --- - name: Gather Facts hosts: all gather_facts: true # 기본값이지만 명확성을 위해 여기에 지정합니다. tasks: - name: Display gathered facts debug: var: ansible_facts 이 플레이북은 모든 호스트에서 Facts를 수집하고, 수집된 Facts를 출력하는 역할을 합니다. ansible_facts 변수에는 각 호스트에서 수집된 모든 Facts가 포함되어 있습니다. Facts는 기본적으로 Ansible에 의해 수집되므로 별도로 설정하지 않아도 됩니다. gather.. 더보기
Ansible playbook에서 block, rescue, loop, always를 사용하는 방법(ansible-playbook) Ansible playbook에서 block, rescue, loop, always를 사용하는 방법(ansible-playbook) 블록(Block)은 작업의 논리적 그룹을 만듭니다. 블록은 또한 많은 프로그래밍 언어의 예외 처리와 유사하게 작업 오류를 처리하는 방법을 제공합니다. Ansible에서 block, rescue, loop, always를 사용하는 방법은 주로 예외 처리와 루프에서 유용합니다 Ansible 플레이북 작성 block, rescue, loop, always 사용 예시 vim example.yml --- - name: 플레이북 예시 hosts: all gather_facts: false become: true tasks: - name: Outer Block block: - name:.. 더보기
Ansible playbook에서 loop와 when을 사용하는 방법(ansible-playbook) Ansible playbook에서 loop와 when을 사용하는 방법(ansible-playbook) loop와 conditional을 사용하는 예제 Ansible playbook 편집 vim example2.yml --- - name: Chrony 설치 및 설정 gather_facts: true hosts: all become: true vars: users: - ansible_user1 - ansible_user2 - ansible_user3 tasks: - name: 사용자 만들기 user: name: "{{ item }}" state: present with_items: "{{ users }}" # users 리스트에 대해 반복 - name: Chrony 설치 package: name: chron.. 더보기
Ansible playbook에서 register와 debug 모듈을 사용하는 방법(ansible-playbook) Ansible playbook에서 register와 debug 모듈을 사용하는 방법(ansible-playbook) Ansible playbook에서 register와 debug 모듈을 사용하면 작업의 결과를 변수에 저장하고, 변수의 내용을 출력할 수 있습니다. register 모듈은 작업의 결과를 변수에 저장하는 데 사용됩니다. register 모듈을 사용하려면 작업의 매개변수로 변수 이름을 지정해야 합니다. debug 모듈은 변수의 내용을 출력하는 데 사용됩니다. debug 모듈을 사용하려면 var 매개변수에 변수 이름을 지정해야 합니다. register와 debug 모듈을 사용하는 예제 Ansible playbook 편집 vim example1.yml --- - name: 예제 플레이북 hosts:.. 더보기
Ansible playbook에서 현재 날짜 및 시간을 얻는 방법(ansible-playbook) Ansible playbook에서 현재 날짜 및 시간을 얻는 방법(ansible-playbook) ansible_date_time fact vim current_date_time1.yml --- - name: 사용자 정의 변수에 현재 날짜 및 시간 저장 hosts: all gather_facts: true tasks: # ansible_date_time 표시 - name: Debug ansible_date_time debug: var: ansible_date_time # 변수에 ansible_date_time 사용 - name: 사용자 정의 변수에 현재 날짜 및 시간 저장 set_fact: current_date_time: "{{ ansible_date_time.date }}_{{ ansible_date.. 더보기
ansible-playbook 명령어 ansible-playbook 명령어 ansible-playbook 명령어는 Ansible로 작성된 플레이북을 실행하는데 사용되는 명령어입니다. 플레이북은 시스템 설정, 소프트웨어 설치, 배포, 설정 등을 자동화하기 위한 Ansible의 설정 파일입니다. ansible ad-hoc 명령어(shell module) ansible 명령어의 주요 옵션과 사용 방법 1. 기본 구문 ansible [options] [-m ] 2. 주요 옵션 : 대상 호스트 또는 그룹을 지정합니다. 와일드카드(*), 호스트명, 그룹명, 그룹 패턴 등으로 지정할 수 있습니다. -m, --module-name: 실행할 모듈을 지정합니다. -a, --args: 모듈에 전달할 인수를 지정합니다. -i, --inventory: 사용할 인벤.. 더보기

728x90