본문 바로가기

리눅스

Ansible AWX를 설치하는 방법

반응형

Ansible AWX를 설치하는 방법

Ansible AWX는 Ansible의 웹 기반 UI, REST API 및 자동화 기능을 제공하는 오픈소스 플랫폼입니다.

Minikube 클러스터 생성

minikube start --driver=none

Minikube 삭제

더보기

---

minikube stop
minikube delete
rm -rf $HOME/.minikube
rm -rf $HOME/.kube

---

설치된 클러스터 확인

kubectl get nodes
NAME       STATUS   ROLES           AGE   VERSION
minikube   Ready    control-plane   67s   v1.32.0

GitHub에서 Ansible AWX Operator의 버전 조회

더보기

---

버전 조회

curl -s https://api.github.com/repos/ansible/awx-operator/releases/latest | jq -r .tag_name
2.19.1

 Git 클론 후 버전 확인

git clone https://github.com/ansible/awx-operator.git
cd awx-operator
git tag | sort -V | tail -n1
2.19.1

---

1. AWX Operator 설치

AWX는 Kubernetes 기반으로 동작하며 AWX Operator를 통해 배포됩니다.

 

AWX Operator 설치

git clone https://github.com/ansible/awx-operator.git
cd awx-operator
git checkout $(curl -s https://api.github.com/repos/ansible/awx-operator/releases/latest | jq -r .tag_name)

NAMESPACE 환경 변수 설정

export NAMESPACE=ansible-awx

AWX Operator 배포

make deploy

AWX 리소스 배포(awx-demo.yml 파일 사용)

kubectl create -f awx-demo.yml -n $NAMESPACE

AWX Pod 상태 확인

kubectl get pod -n $NAMESPACE
NAME                                               READY   STATUS      RESTARTS   AGE
awx-demo-migration-24.6.1-4p6tf                    0/1     Completed   0          10m
awx-demo-postgres-15-0                             1/1     Running     0          15m
awx-demo-task-56d9cb9fb7-rm2mv                     4/4     Running     0          9m47s
awx-demo-web-74b447698f-hvjqb                      3/3     Running     0          13m
awx-operator-controller-manager-58b7c97f4b-dc9dk   2/2     Running     0          16m

Pod 재시작 시도(특정 pod를 삭제하여 자동으로 재시작)

kubectl delete -n $NAMESPACE pod <awx_pod_name>

Pod 로그 확인

kubectl logs -n $NAMESPACE -f <awx_pod_name>

서비스 상태 확인

kubectl get -n $NAMESPACE svc

service

2. AWX 웹 인터페이스 접속

웹 브라우저에서 AWX 웹 인터페이스에 접속할 수 있습니다.

 

AWX 서비스에 접근할 수 있는 URL 출력

minikube service awx-demo-service --url -n $NAMESPACE
http://192.168.49.2:31909

 

AWX의 기본 관리자 비밀번호 출력 (Base64로 인코딩된 비밀번호를 디코딩)

kubectl get secret awx-demo-admin-password -o jsonpath="{.data.password}" -n $NAMESPACE | base64 --decode; echo

설정한 관리자 계정과 비밀번호로 로그인합니다.

  • 기본 사용자명 : admin
  • 기본 비밀번호 : wnglgZ0S0PO2tr17CboZBASE59HGrIKa

3. AWX 초기 설정

  1. 조직 생성 : "Organizations"에서 새로운 조직을 생성합니다.
  2. 인벤토리 추가 : "Inventories"에서 대상 호스트 추가
  3. 크리덴셜 설정 : SSH 키, API 토큰 등을 설정
  4. 프로젝트 추가 : Git 리포지토리에서 Ansible Playbook 불러오기
  5. 작업 템플릿 생성 : Playbook 실행 자동화

Ansible AWX가 성공적으로 설치되었습니다.

 

참고URL

- 변군이글루 블로그 : Ansible AWX를 배포할 때 PVC를 설정하는 방법

 

728x90
반응형