* 실제 랜카드인 ens160에는 IP가 없고. br-ex(가상 랜카드)가 IP를 가지고 있다.
* 오픈스택은 (KVM)Kernel Based Virtual Machine
* Lanch와 Start의 차이 위의 인스턴스 시작은 Lanch(인스턴트 만드는 것) 아래의 인스턴스 시작은 Start(있는 것 시작)
# 우분투 생성
* QCOW2는 호환성이 검증됨 (KVM용 가상디스크)
* 키페어 생성 확인 (안 했으면 생성하기)
* 프라이빗키는 절대 아무 곳에도 올리지 말기
* ICMP포트가 열려 있어야 ping 가능
워드프레스 설치(플로팅IP로 만든 web01-CentOS7)
# sudo yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
# sudo yum -y install epel-release yum-utils
# sudo yum-config-manager --enable remi-php74
# sudo yum install -y httpd php php-mysql php-gd php-mbstring wget unzip
# sudo cd /var/www/html
# sudo unzip /root/share/wordpress-5.9.3-ko_KR.zip
# sudo mv wordpress/* .
# sudo chown -R apache:apache /var/www/*
# sudo systemctl restart httpd
# sudo php -v
* 여기서 컨테이너의 의미는 도커 컨테이너와 다름
* Submit하면 컨테이너 생성됨
* 주소창에 /images/two-rabbit.jpg로 two-rabbit.jpg에 접근
* 해당 주소를 다른 사람에게 보내주면 배포 완료
* wget을 통해 파일을 내려받기
* 오브젝트 스토리지의 기능인 url다운로드
* 경로가 images/two-rabbit.jpg로 되어 있는 인덱스 파일
* 바로 다운로드 됨
# mobaXterm에서 wget을 이용해 오브젝트 스토리지의 파일 다운로드
# 우분투(Ubuntu18) web02인스턴스 생성
* 첫 줄에 #!/bin/bash 필수 입력
* vm이 만들어지는 과정에서 실행되는 명령어들은 root권한으로 실행돼서 sudo 안 붙여도 됨
# 볼륨
* vda에서 a가 루트볼륨이라는 의미
* 컴퓨트에서 메모리와 CPU, 볼륨은 따로 설정되어 있는 상태
* 볼륨이 부족하면 볼륨을 생성하기
* 인스턴스 선택 후 볼륨 연결 클릭하여 추가볼륨을 web01에 attached 시키기(외장하드 붙이는 것처럼)
# mobaXterm에서 추가볼륨 마운트하기
* 루트에 vda가 마운트 되어 있음
* 추가볼륨(vdb)도 마운트 시켜줘야 함
* 블록사이즈를 따로 지정하지 않으면, 4096바이트가 기본 사이즈
* 리눅스에는 기본적으로 마운트 폴더가 만들어져 있음
# web02(ubuntu) 플로팅 IP연결
# web01의 wordpress파일을 ubuntu에 옮기기
-> attach > mount > umount > detach 순서대로
* web02로 볼륨 연결하기
# DB서버 만들기
# 지금까지 만든 인스턴스 다 지우고 새로 만들기 시작
1. 플로팅Ip해제 -> 라우터 삭제 -> 네트워크에서 INTERNAL삭제
2. 좌측 메뉴 인증 -> 프로젝트 -> +프로젝트 생성 -> 이름과 설명: web-project -> 프로젝트 생성 클릭
3. 좌측 메뉴 사용자 -> +사용자 생성 -> 사용자 이름 : web-user, 암호 : Test1234!, 최초 프로젝트 : web-project선택, 역할 : _member_ 선택 -> 사용자 생성 클릭
4. firefox나 edge브라우저 -> 오픈스택IP입력 -> 사용자 이름 : web-user, 비밀번호 : Test1234! 로그인
5. web-user사용자에서 좌측 메뉴 프로젝트 -> 네트워크 -> 네트워크 -> EXTERNAL은 이미 있는 상태
6. +네트워크 생성 -> 네트워크 이름 : INTERNAL -> 다음 클릭 -> 서브넷이름 : INTERNAL_SUBNET, 네트워크 주소 : 10.13.0.0/20, 게이트웨이 : 10.13.0.1 -> 다음 클릭 -> DHCP체크, DNS네임서버 : 192.168.0.66엔터8.8.8.8엔터203.248.252.2 -> 생성 클릭
7. 라우터 -> +라우터 생성 -> 라우터이름 : Router, 외부네트워크 : EXTERNAL 선택 -> 생성
8. Name 항목 밑에 Router클릭 -> 인터페이스 클릭 -> +인터페이스 추가 -> 서브넷 : INTERNAL~~선택 -> 제출
9. admin계정 -> 관리 -> 네트워크 -> 네트워크 -> EXTERNAL클릭 -> 포트 -> Fixed IP's가 게이트웨이의 IP -> 윈도우 cmd관리자 창에서 해당 IP로 ping 나가야 함
10. web-user계정 -> 좌측메뉴 프로젝트/네트워크/Floating IP -> 프로젝트에 IP할당 세번 반복
11. 프로젝트/네트워크/보안그룹 -> +보안그룹생성 -> 이름 : SG-WEB -> 생성
12. +규칙추가 -> 규칙 : HTTP선택 -> 추가 -> +규칙추가 -> 규칙 : SSH선택 -> 추가 -> +규칙추가 -> 규칙 : ALL ICMP 선택 -> 추가
13. 프로젝트/Compute/키 페어 -> +키 페어 생성 -> 이름 : web-key, 키 유형 : SSH 키 -> 생성
14. admin계정 -> 관리/Compute/이미지 -> 오른쪽 드롭다운 버튼 -> 이미지 편집 -> 이미지 공유의 가시성 항목 : 공용
-> 이미지 업데이트 클릭 -> CentOS7과 Ubuntu18 둘 다 같은 과정으로 가시성 항목 공용으로 만들기
15. web-user계정 -> 프로젝트/Compute/이미지 -> admin에서 공용으로 만든 이미지가 보인다.
16. 프로젝트/Compute/인스턴스 -> 인스턴스 시작 -> 인스턴스 이름 : WEBSERVER, 설명 : CentOS7 -> 다음 클릭
17. 볼륨크기 : 10, CentOS7 위로 올리는 화살표 클릭 -> 다음 클릭
18. m1.micro를 위로 올리기-> 다음 클릭
19. 네트워크에서 INTERNAL이 알아서 올라가 있음 -> 다음 클릭
20. 네트워크 포트는 비어 있음 -> 다음 클릭
21. default 내리고 SG-WEB올리기 -> 다음 클릭
22. 키 페어는 web-key -> 다음 클릭
23. 구성의 사용자 정의 스크립트 #!/bin/bash엔터 yum install -y httpd wget 엔터 systemctl enable --now httpd엔터 cd /var/www/html 엔터 wget http://192.168.0.71:8080/v1/AUTH_b8355b635f7d4673aa55611caa7094c8/mz13/index.html 엔터mkdir images && cd $_ 엔터 wget http://192.168.0.71:8080/v1/AUTH_b8355b635f7d4673aa55611caa7094c8/mz13/images/two-rabbit.jpg
24. 인스턴스 시작 -> 인스턴스 이름 : DBSERVER, 설명 : Ubuntu18 -> 다음클릭
25. 볼륨크기 : 10, 이미지 Ubuntu18 올려주기 -> 다음 클릭
26. m1.micro 올려주기 -> 다음 클릭
27. INTERNAL 올라가 있고 -> 다음 -> 포트 없고 -> 다음
28. default 내리고 SG-WEB을 올리기 -> 다음 클릭
29. 구성에서 사용자 정의 스크립트 #!/bin/bash 엔터 apt update 엔터 apt install -y nginx -> 생성
30. 프로젝트/Compute/인스턴스 -> WEBSERVER의 유동IP 연결 -> DBSERVER도 드롭다운 메뉴 내려서 유동IP연결
31. 프로젝트/네트워크/보안그룹 -> +보안 그룹 생성 -> 이름 :SG-DB -> 생성
32. +규칙추가 -> 규칙 : MYSQL -> 추가 -> +규칙추가 -> 규칙 : SSH -> 추가 -> +규칙추가 -> 규칙 : ALL ICMP -> 추가
33. 프로젝트/Compute/인스턴스 -> DBSERVER 드롭다운메뉴 -> 보안그룹편집 -> SG-WEB빼고 SG-DB넣어주기 -> 저장
34. WEBSERVER IP인 192.168.4.70를 복사 -> mobaXterm에서 192.168.0.66세션 -> vi /var/named/mz13.shop.db -> ns빼고 IP 지우기 -> 도메인 네임 blog로 -> IP는 WEBSERVER IP인 192.168.4.70붙여넣기 -> systemctl restart named
35. 관리자 창에서 ping blog.mz13.shop으로 통신 확인
36. 웹 브라우저에 blog.mz13.shop 접속해서 two-rabbit.jpg 파일의 출력을 확인
# 오늘의 애러
1. Ubuntu에서 apt 명령어 사용할 때마다 You must manually run sudo dpkg configure to correct the problem애러 발생
-> 출력된 애러 내용대로 sudo dpkg --configure -a 실행하고 다시 apt명령어 사용하면 잘 됨
2. mobaXterm의 192.168.0.71(오픈스택 세션)에 firewalld를 설치하면 openstack 로그인 페이지 출력 안 됨
-> sudo yum remove -y firewalld 로 방화벽 삭제하니 접속 가능
'KOSA 클라우드 솔루션즈 아키텍트 양성과정' 카테고리의 다른 글
[5.10] Python 2일차 (0) | 2022.05.10 |
---|---|
[5.9] Python 1일차 (0) | 2022.05.09 |
[5.4] 오픈스택(Openstack) 개념 (0) | 2022.05.04 |
[5.3] DNS설정, 서브넷 마스크 (0) | 2022.05.03 |
[5.2] WordPress설치 , IIS와 PHP연동, DNS, DB, NFS, SAMBA 등 설치 (0) | 2022.05.02 |