728x90
반응형
o Ansible를 이용한 서버 자동화 테스트를 위하여 PC 및 서버 환경 설정방법에 대한 설명입니다.

- PC에 테스트를 위해서 Virtualbox와 Vagrant를 설치하고
- 테스트 서버를 4대 설치합니다
   ... Ansible SERVER(CentOS) 1대, Ansible NODE(CentOS, Ubuntu, Redhat) 3대

o  해당 Ansible 자동화 테스트는
"컨테이너 인프라 환경 구축을 위한 쿠버네티스/도커 (조훈 저자, 길벗)"  
"앤서블로 시작하는 인프라 자동화 (장현정 저자, 한빛미디어)"
참조하여 작성 및 테스트 예정입니다.. 

 

먼저 PC에 가상화를 돌리기 위한 virtualbox와  VM 이미지 다운로드 vargrant 를 설치합니다.

 https://www.vagrantup.com/

https://www.virtualbox.org/

 

Oracle VM VirtualBox

Welcome to VirtualBox.org! News Flash New October 17th, 2023VirtualBox 7.0.12 released! Oracle today released a 7.0 maintenance release which improves stability and fixes regressions. See the Changelog for details. New October 17th, 2023VirtualBox 6.1.48 r

www.virtualbox.org

 

서버 설치 계획 

 

ansible-server CentOS 8 192.168.56.50   ansible-server         root / vargrant    centOS
node1 : CentOS 9 192.168.56.51   tnode1-centos         root / vargrant    centOS
node 2 : Ubuntu 14 192.168.56.55   tnode2-ubuntu         root / vargrant    ubuntu
node 3 : RHEL 8.8 192.168.56.57   tnode3-rhel             root / vagrant   rhel

 

테스트는 아래책 들을 기준으로 했습니다 

 

https://www.yes24.com/Product/Goods/102099414

 

컨테이너 인프라 환경 구축을 위한 쿠버네티스/도커 - 예스24

실무에 바로 적용할 수 있는 컨테이너 인프라 환경 기술!IT 자원을 효율적으로 빠르게 사용할 수 있는 방법으로 컨테이너 환경이 거론되었으나 그동안 관리가 어렵고 복잡해서 상용되기 어려웠

www.yes24.com

https://www.yes24.com/Product/Goods/65306887

 

우아하게 앤서블 - 예스24

현직 앤서블 강사가 직접 쓴 데브옵스의 모든 것IT 관리자들에게 IT 자원들을 운영하는 일은 항상 고민거리였다. 특히, 현재 가상화 및 클라우드 환경이 도래하면서 한 명의 IT 관리자가 운영해야

www.yes24.com


http://m.11st.co.kr/products/m/6304569037?NaPm=ct=lpyt9q3s%7Cci=731655dd387a1a3a4a5b8b18682eecf4c5b757a6%7Ctr=boknx%7Csn=17703%7Chk=3a1404b97e0f801e30d3f61c693a58e86febd4cd&utm_term=&utm_campaign=%B3%D7%C0%CC%B9%F6m_%B0%A1%B0%DD%BA%F1%B1%B3+%B1%E2%BA%BB&utm_source=%B3%D7%C0%CC%B9%F6_M_PCS&utm_medium=%B0%A1%B0%DD%BA%F1%B1%B3

 

[11번가] 앤서블로 시작하는 인프라 자동화 -기초부터 실무까지, 플레이북 예제로 마스터하는 앤

도서/음반>컴퓨터와 인터넷>IT 전문서>개발/OS/DB, 가격 : 30600원

m.11st.co.kr

- 앤서블로 시작하는 인프라 자동화에 있는 소스자료   https://github.com/naleejang/Easy-Ansible

 
https://app.vagrantup.com/boxes/search 에 관련 서버 설치정보 확인

 

GitHub - naleeJang/Easy-Ansible: Project for Ansible Automaion Platform

Project for Ansible Automaion Platform. Contribute to naleeJang/Easy-Ansible development by creating an account on GitHub.

github.com

 

Vagrant Cloud by HashiCorp

Vagrant Cloud by HashiCorp

app.vagrantup.com

 

o 웹페이지에 centos/8 vargrant 파일을 검색합니다.

 

o vagrantfiel 에 다운로드할 OS 정보를 확인합니다.  config.vm.box = " generic/centos8"

   ubuntu, RHEL 로 똑같습니다.

 

 

 
C:\HashiCorp\Vagrantfile 
 

Vagrant 서버 이미지 및 Vagrantfile 

 

CentOS 8
Vagrant.configure("2") do |config|
  config.vm.box = "centos/stream8"
end
Ubuntu 20.04 Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/focal64"
end
RHEL8 Vagrant.configure("2") do |config|
  config.vm.box = "generic/rhel8"
end

 

# Vagrant 파일은 해당링크 https://hwpform.tistory.com/74 (실습하게 좋은 vagrant 파일)

 

 

# 해당 vagrantfiel을  C:\HashiCorp\Vagrantfile 에 복사해서

 

# vagrant up 할때변경된 Vagrantfile OS가 적용안되어  Vagrant.exe 삭제,  C:\HashiCorp\ 폴더 삭제 반복
 
# 보통 Vagrant 다운받은 OS root 패스워드는 "vagrant" 이나 root 패스워드가 안먹힘
CentOS, Ubuntu 는  vagrant/vagrant User 로 로그인 하여 root 패스워드 변경
 
$ sudo passwd root  
 
# RHEL 8는 위와 같은 방식으로 패스워드 변경이 안되어서
https://www.lesstif.com/system-admin/centos-8-rhel-8-reset-root-password-in-centos-8-86311229.html 

 

CentOS 8/RHEL 8 루트 암호를 잊어버렸을 때 복구하기(Reset root password in CentOS 8)

touch 명령은 파일명 오타를 내도 확인할 수 없으므로 실행 결과를 확인할 수 있는 fixfiles onboot 명령을 권장합니다.

www.lesstif.com

방식으로 적용하여 패스워드를 변경함

 

# 또는 rockos8 패스워드 다른변경 방법

https://foxydog.tistory.com/147  
 

 

Rocky Linux - 싱글 유저 모드 및 ROOT 패스워드 초기화

이전에 CentOS 8 싱글 유저 모드 및 ROOT 패스워드 초기화 포스팅을 진행한 적이 있습니다. 오랜만에 테스트를 위해 만들어 놓은 가상서버 Rocky 9.X 버전 콘솔에 접근을 하니 제가 세팅해 놓은 ROOT 패

foxydog.tistory.com

 

서버별 IP설정

 

CentOS 8 # nmtui
Ubuntu 20.04
# apt install network-manager
# apt installnet-tools
# nmtui
RHEL8 # nmtui
/etc/sysconfig/network-scripts/

 
 

ssh 접속 설정 & PuTTY & root 접속 설정

 

CentOS 8
RHEL8
 /etc/ssh/sshd_config 

PermitRootLogin yes로 변경
PasswordAuthentication yes로 변경

# systemctl restart sshd 
Ubuntu 20.04
/etc/ssh/sshd_config  PermitRootLogin yes로 변경
PasswordAuthentication yes로 변경

# service sshd restart

 

 ansible server에 ansible 설치
# dnf install epel-release

# dnf install ansible 

 

# ect/hosts 파일에 node 서버  등록
# cat /etc/hosts
192.168.56.51 tnode1-cetnos.exp.com
192.168.56.54 tnode2-ubuntu.exp.com
192.168.56.57 tnode3-rhel.exp.com

 

# etc/ansible/inventory 파일 생성
# cat /etc/ansible/inventory 

[web]                                               # 192.168.56.51, 192.168.56.54 해당
tnode1-centos.exp.com
tnode2-ubuntu.exp.com

[db]                                                  # 192.168.56.57 해당
tnode3-rhel.exp.com

[all:children]                                     # 192.168.56.51, 192.168.56.54, 192.168.56.57 해당
web
db                       

 

# etc/ansible/ansible.cfg 생성
# cat /etc/ansible/ansible.cfg

[defaults]
inventory = /etc/ansible/inventory            # inventory 또는 ansible로 관리할 서버 리스트 파일 및 경로
remote_user = root
ask_pass = false

[privilege_escalation]
become = true
become_method = sudo
become_user = root
become_ask_pass = false
728x90
반응형
LIST

+ Recent posts