목록2022/07/22 (20)
전산쟁이의 기억노트
awx에서 제공하는 restapi 사용방법전체 기능은 : http://192.168.20.10:8801/api/v2/ 에 접속하면 전체 api 기능 확인가능사전작업admin 계정으로 awx 로그인관리 → application → 새로생성authorization grant type은 resource owner password=based,client type → confidential관리 → user 에서 api용으로 사용할 서비스 계정 생성 후 token 생성application에는 2번에서 생성한 application 선택scope는 write로 선택1.생성된 token값은 복사 (재 확인할 수 있는 절차가 없음)API 사용예제inventory 조회1$ curl -X GET http://192.168.2..
Redhat에서는 Ansible Tower라는 software는 판매하고 있지요.이 Ansible tower의 Opensource 버전이 AWX라는 녀석인데요. 이녀석을 설치해보려고 합니다.참고로 AWX 18버전부터는 kubernetes operator을 이용해 설치해야 방식으로 변경이 되었고, 저는 14버전으로 설치하는 설차를 기록해놓으려고 합니다. AWX컨테이너 용도awx_web : AWX Frontend 용 Container awx_task : Ansible task용 Containerpostgres : awx DB용 Containerredis : AWX Cache 관리용 Container설치정보Hardware : 2Core / 8G Mem 이상 / 60G Disk 이상OS : Centos7 이상V..
지난번에는 에서 inventory를 작성하고 접속이 되는지까지 확인했는데요. 이제 실제로 어떤어떤 작업을 수행하겠다~를 작성하기 위해 playbook을 작성할꺼예요. 192.168.10.10 ~ 15번까지는 nginx 최신버전을 설치하고, 192.168.100.10 ~ 15번까지는 apache를 설치할꺼예요.Centos7 Base yum 에는 nginx가 없기 때문에 epel 리포지터리를 구성하고, nginx를 설치하는 절차입니다. 1 vi /home/ansible/playbook.yml 2 3 #nginx 그룹에 등록된 서버들 작업수행 4 name: Nginx Install # 작업 이름 5 hosts: "nginx" # 배포대상 호스트 정보 6 gather_facts: yes # 배포대상 서버들의..
ansible의 inventory는 배포대상 서버정보를 구성하는 파일입니다. rpm으로 설치할 경우 기본적으로 구성된 inventory는 /etc/ansible/hosts에서 작성할 수 있는데, playbook 작성에 따라자체 inventory를 가질 수 있으니 참고만 해주세요. inventory에서 작성할 수 있는항목은 group, children, vars 를 자주 사용하는데요. 그룹명 web은 하위그룹으로 nginx, apache가 있다고 가정해보죠. 192.168.10.10, 192.168.10.15까지는 nginx를 설치할꺼고 192.168.100.10부터 192.168.100.15까지는 apache를 설치할꺼예요. playbook 코드도 그룹을 기준으로 설치할꺼예요. ansible 접속을 위한..
yum으로 설치하기 1 $> yum install epel-release -y 2 $> yum install ansible -y pip으로 설치하기 1 $> pip install ansible 출처 - http://igoni.kr/books/linux/page/3-ansible
Redhat기준으로 Ansible 구성은 이렇게 되어 있습니다.컴포넌트명비용OSS ProjectAnsible CoreFreeAnsible https://github.com/ansible/ansibleAnsible TowerCommercialAWX https://github.com/ansible/awxAnsible에서 사용하는 용어를 정리하면 …구성정보용 도inventory배포 대상 정보가 기록된 정보playbook– role– task– template– vars배포시 사용하는 배포코드– 여러가지 배포업무가 수행될때 나눌 수 있는 리스트– 배포 업무 수행– 설정파일같은 템플릿화된 파일을 배포시 사용– 배포코드 작성시 등록한 변수리스트프로비저닝 대상서버 접근 방식Target OS접근방식 / 기본포트추가 설..
Ansible을 알기 위해서는 먼저 IaC(Infrastructure as Code)를 이해해야 하는데요. (알아요…. 개발자가 아닌이상 code라는 단어가 나오기 시작하면 머리가 아프기 시작하는거…ㅠㅠ) IaC는 일단 개념만 알아두고 넘어가요. 눈앞에 OS만 설치된 2대가 있다고 치죠.이 서버를 apache 혹은 nginx 같은 어플리케이션을 설치한다고 하면, 서버 2대에 접속해서….. 1 $ yum install apache 2 혹은 3 $ apt-get install nginx 이런 명령어를 실행해서 어플리케이션을 설치할꺼예요.그 다음은? mpm이나 vhost같이 apache 추가 설정해야 할 수도 있겠죠.그러고 난 다음엔 웹 구동을 위한 docroot 설치도 해야 할꺼고, 기타 등등블라블라~~ 우..
podman을 사용할 경우 네트워크는 cni를 사용하게 되는데, 기본값은 호스트의 DNS를 사용하기 때문에 컨테이너 내부의 DNS를 사용해야할 경우 호출이 불가능. docker기반에서 컨테이너간 dns통신상태 확인 1 $> docker exec -it awx_task ping redis 2 PING redis (172.18.0.5) 56(84) bytes of data. 3 64 bytes from awx_redis.awxcompose_default (172.18.0.5): icmp_seq=1 ttl=64 time=0.240 ms 4 64 bytes from awx_redis.awxcompose_default (172.18.0.5): icmp_seq=2 ttl=64 time=0.090 ms 5 64 by..
사전사항 OS환경설정 1 $> swapoff -a 2 3 $> cat cat /etc/yum.repos.d/cri-o-1.23.repo 2 [devel_kubic_libcontainers_stable_cri-o_1.23] 3 name=devel:kubic:libcontainers:stable:cri-o:1.23 (CentOS_8) 4 type=rpm-md 5 baseurl=https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/1.23/CentOS_8/ 6 gpgcheck=1 7 gpgkey=https://download.opensuse.org/repositories/devel:/kubic:/libco..
container에 저장된 데이터를 export할때 편리하게 하려고 crontab에 걸어놨는데, 다음날 보니 export된 데이터의 사이즈가 0k. 1 $> ls -l 2 total 212 3 -rw-r--r-- 1 root root 0 Jan 23 01:02 back-2022-01-23.sql 혹시나 싶어서 mail로그를 보니. 이런게 똭.. 1 $> cat /var/spool/mail/root 2 ... 3 X-Cron-Env: 4 X-Cron-Env: 5 X-Cron-Env: 6 X-Cron-Env: 7 X-Cron-Env: 8 Message-Id: 9 Date: Mon, 24 Jan 2022 01:02:01 +0900 (KST) 10 11 the input device is not a TTY ..