본문 바로가기

ansible6

[Jenkins] Jenkins + Ansible 연동하기 Jenkins 이전 글우리는 이전 포스팅들에서 Ansible이 무엇인지, 왜 사용하는지, Ansible의 Playbook을 알아보며 학습했다.이제는 학습한 Ansible과 Jenkins를 연동해보자.  Jenkins + Ansible 연동Jenkins와 Ansible을 연동하기 위해서는 우선 Jenkins에 Ansible Server에 접근할 수 있도록 설정을 해주어야 한다.설정은 아래 사진과 같다. Jenkins 관리 -> System -> Publish Over SSH(플러그인 설치) -> 구성  이전 포스팅에서도 설명해왔지만, 추가로 설명하자면 name: 접속할 서버의 이름Hostname: IP Address필자는 도커로 Ansible를 설치했기에 아래 명령어로 docker 컨테이너의 IP Addr.. 2024. 7. 31.
[Jenkins] Ansible Playbook 사용 이전 글이전 포스팅에서 우리는 Ansible의 기본 명령어인 -m 옵션을 활용해서 여러 모듈을 사용했다.하지만, 실제로는 -m 옵션을 주기보다는 Ansible Playbook를 사용한다.이번 포스팅에서는 Ansible Playbook이 무엇이고 어떻게 활용하는지에 관해 알아본다.   Ansible PlaybookAnsible Playbook은 사용자가 원하는 파일을 미리 작성해 놓은 파일을 말한다.즉, 우리가 앞서 모듈을 통해 한 줄씩 실행했던 것을 모아서 미리 파일을 만들어놓는 것이다. ex) 설치, 파일 전송, 서비스 재시작...ex) 다수의 서버에 반복 작업을 처리하는 경우 우리는 Ansible에서 제공하는 playbook을 통해 여러 작업이 가능하다.  Ansible Playbook 예제 프로그램.. 2024. 7. 30.
[Jenkins] Ansible 기본 명령어 이전 글우리는 이전 포스트에서 Ansible를 리눅스 서버에 설치해보았고 정상 동작함을 확인했다.Ansible에서 /etc/ansible/hosts 경로에 여러 호스트를 등록할 수 있었고,해당 호스트들에게 아직은 설명이 없지만 -m 옵션과 함께 ping 확인 진행했다. 이번 포스팅에선 Ansible의 기본 명령어에 관해 알아본다. Ansible의 기본 명령어 실행 옵션-i (--inventory-file) -> 적용 될 호스트들에 관한 파일 정보-m (--module-name) -> 모듈 선택-k (--ask-pass) -> 관리자 암호 요청-K (--ask-become-pass) -> 관리자 권한 상승--list-hosts -> 적용되는 호스트 목록-i 옵션은 /etc/ansible/hosts의 경로.. 2024. 7. 30.
[Jenkins] Docker 컨테이너로 Ansible 실행하기 Ansible 설치먼저 Ansible를 설치할 도커 리눅스 환경을 구성해야 한다.해당 리눅스 환경 구성과 관련해서는 다음 포스팅을 참고하면 된다 -> SSH, Docker 도커 이미지 구성  (후술할 내용은 나의 리눅스 컨테이너 환경에 맞춰 진행한 것으로 파이썬 버전, OS에 따라 알맞게 설치를 진행해야 한다.)(필자의 경우 centos 8를 사용하였고 오히려 돌아간 것일 수 있다. 기본적으로 yum -y install ansible를 입력하면 설치된다.)그 후 작업은 아래와 같다. 1. pip 및 setuptools 업그레이드pip3 install --upgrade pip setuptools 2. Rust 도구 체인 설치 및 업그레이드dnf install rust cargo Ansible 설치 과정에 .. 2024. 7. 21.
[Jenkins] IaC와 Ansible이란? 포스팅 시작에 앞서 이번 포스팅에서는 Jenkins에 관해 다루지 않는다. IaC와 Ansible이란 무엇인지에 대해 다룬다.    IaC의 의미와 필요성먼저, 설명하자면 IaC로 인프라를 구성하게 되면 기존의 인프라를 수동으로 구성하는 방법보다훨씬 빠른 구성이 가능하다. IaC코드형 인프라(Infrastructure as Code), 즉 IaC는 인프라 설정을 코드로 작성하는 것으로,클라우드 인프라스트럭처의 생성/수정/삭제를 자동화하는 방법이다. 이는 서버, 데이터베이스, 네트워크, 배포 프로세스, 테스트 등 거의 모든 것을 코드로 관리할 수 있게 도와준다.현재와 같은 클라우드 네이티브 환경에서는 물리적 측면이 모두 코드로 대체될 수 있기에 가능하다고 할 수 있다. 비슷하게, IaC는 활용에 따라 인프.. 2024. 7. 20.
[Jenkins] Jenkins를 이용한 CI/CD 자동화 사용 Jenkins 우리는 앞선 글에서 Jenkins를 통해 어떻게 빌드하는지를 알아보았다. 빌드가 성공적으로 완료되었다면 우리는 Tomcat 서버에 배포하거나 SSH 서버를 이용하여 배포를 할 수 있게 된다.  1. 빌드 파일을 Tomcat 서버(WAS)에 배포하기 우선, Tomcat 서버에 배포하기 위한 플러그인을 설치해주어야 한다.(Tomcat 서버가 설치되어 있다는 가정)  Jenkins 관리 -> Plugins -> available -> deploy to container plugin 위의 순서로 접속하게 되면 우리는 Deploy to container Plugin을 만날 수 있다. 해당 플러그인을 설치해주자.  자, 그런 다음 이제는 새롭게 Maven 프로젝트를 생성해보자. New Item 생성 .. 2024. 7. 17.