(0) Visual Studio Code 설치
(1) IaC
(2) Vagrant
1.Infra를 Code로 관리하는 기술
2.1000대의 서버 세팅 - 완벽하게 똑같은 설정임을 보장할 방법이 없다
3.Code로 관리한다면 - 멱등성을 보장할 수 있다. (몇번을 실행해도 결과가 똑같음을 보장)
배포관리 - 설치
1.Terraform : Platform에 종속되지 않음.
2.Vagrant : private cloud
구성관리 - 설치 후 설정 작업
1.puppet : redgat
2.chef : 설정이 힘들다.
3.Ansible : 배우기 쉽다.
[Docker] Virtual Box
(1) IaC (2) VirtualBox 1. IaC (Infrastructure As Code) - 수동 프로세스가 아닌 코드를 통해 인프라를 관리하고 프로비저닝하는 것 1.Vargrant 2.Terraform 3.Ansible https://www.hashicorp.com/ HashiCorp: I..
di-on.tistory.com
Vagrant 설치 참조
1. vagrant 파일 생성
* 실습에서는 바탕화면에 폴더를 생성했지만 사용자 이름이 한글로 되어있어 생기는 오류 때문에
C: 바로 아래에 생성했습니다 *
- [vagrant init] 으로 vagrant 파일 생성
2. Visual Studio Code 실행
- vagrant 확장팩을 다운받으면 단어 자동완성 가능
3. Hostname 설정
- | | : 단락 구문, 무조건 단락 안의 단어로 시작해야함
4. 베이스 이미지 설정
5. vagrant-vbguest 플러그인 설치
* 플러그인을 이용하면 자동으로 적절한 GuestAddition 버전을 찾아서 맞춰줌 (GuestAddition 문제 대비)
6. vagrant 실행
- 초기 ID와 패스워드는 vagrant
- cmd창에서 ssh 접속
- [sudo su -] 명령어를 사용하여 root 권한 가질 수 있음
7. VM 삭제
※ VM 삭제 시 설정을 변경하기 전에 삭제를 해야 완벽하게 삭제 가능 (삭제 → 설정 편집) ※
8. VM 설정
- provider(공급자)를 "virtualbox"로 지정 후 이를 vb로 지정
- VM의 이름, 메모리, cpu 설정
9. 포트포워딩
- host의 1234번 포트로 들어오는 것을 가상머신의 22번 포트로 전달
- host의 60080번 포트로 들어오는 것을 가상머신의 80번 포트로 전달, IP 127.0.0.1로 강제 지정
* 포트포워딩 시 포트가 이미 존재한다면 오류 발생
→ 실습 시에는 포트번호를 바꿔서 진행하였지만 [auto_correct: true] 명령어를 통해 오류 해결 가능
10. 폴더 연동
* httpd 시작페이지를 미리 작성하고 시작페이지 파일이 있는 폴더를 연동
* synced_folder : 공유 폴더
11. Shell 사용
* provision "shell" : shell 배포
- 실행
12. 한번에 여러대의 VM 생성
- VM name, Host name, 포트 번호 다르게
- [vagrant up] 후 실행 확인
13. 스크립트 활용
* 첫번째 VM : httpd 서비스
두번째 VM : ftp 서비스
- vagrant 폴더에 스크립트 생성
- 스크립트 작성
- vsftpd 설치 및 시작, selinux 해제, /ftp 디렉토리 생성
- 사용자 생성 및 패스워드 지정
- 배너 파일 생성
- chroot list 작성
- vsftpd.conf 파일 작성 ('>' 사용하여 기존 정보 삭제하고 새로 작성)
- vsftpd 시스템 재시작
- 확인