1. Cloud Load Balancing(부하분산)
- L4 스위치는 디테일한 패킷(헤더)분석이 불가능함 단순히 포트 구별 정도만 가능(TCP)
- L7 스위치는 디테일한 패킷 분석이 가능하다(HTTPS, HTTP)
- 풀은 대상이다.
- Server Pool, farm(그룹)
- 사전에 web01과 web02이 그룹으로 묶여있다면 선택 가능
- 백업 풀 선택 : 모든 서버가 죽으면 정적 웹사이트로 이동하여 잘 꾸며진 에러 페이지를 보여준다
- 세선 어피니티 : 로그인시 정보를 세션의 어느 한쪽으로 유지하기 위해서 설정(IP로 구분이 가능하다), 이번 프로젝트에서는 설정하지 않는다.
- 확인 간격 : 확인 간격 시간을 설정한다. (너무 짧으면 부하가 올 수 있고, 너무 길면 상태 확인하는데 오래걸린다).
- 제한시간 : 5초 안에 응답을 해야한다.
- 정상 기준 : 연속 적으로 성공해야 정상으로 인식
- 비정상 기준 : 연속으로 Fail이면 비정상으로 인식
- front : 사용자가 들어오는 부분 (외부 IP 필요)
- 포트 : 사용자가 80 포트를 통해 들어오도록 열어준다
- 라운드로빈 방식인지 최소 연결 방식인지 확인하기 위해서 퍼블릭 IP를 브라우저에 입력한다.
- 확인 결과 라운드 로빈 방식이다.
2. GCP 스토리지 서비스
- GCP : 버킷
- Azure : 컨테이너
- AWS : 버킷
- 검색창에 cloud storage 검색 후 버킷 클릭
- Multi-region : 서버 붕괴 가능성을 고려하여 여러 region을 활용. 이번실습은 단일 리전 사용
- cold : 저렴하지만 검색이나 데이터를 가져올 때 시간이 오래걸린다
- 처음 올리면 공개가 불가능 하다
- 같은 chrome 브라우저에서는 접근이 가능했지만(아마 세션에 로그인 정보가 남아 있어서?) 다른 브라우저에서는 이미지 URL 접근시 로그인 화면이 떴다
- 저장소 오픈(모든 사람에게)
- 디스크를 web01에 붙일거기 때문에 가용영역을 web01과 동일하게 해준다.
- 스냅샷 일정 : 이미지로 상태를 백업하는 기능
- web01 머신에서 수정버튼을 누른다
- 추가 디스크 부분에서 기존 디스크 연결을 누르고 이전에 생성한 디스크를 추가한다
lsblk
sudo mkfs -t ext4 /dev/sdb
sudo mount /dev/sdb /mnt
df -h
# aws.tar파일 업로드
sudo mv aws.tar /mnt
cd /mnt
ls
cd ~
df -h
sudo umount /mnt
df -h
- web01에서 추가한 디스크를 마운트하고 aws.tar 파일을 업로드한 후 언마운트를 하여 분리한 디스크를 web02에 연결할 준비를 한다.
- 다른 서비스에서는 찾아볼 수 없었지만 GCP에는 디스크 클론 기능이 있다.
- 클론한 디스크를 web02에 붙여준다.
- 마운트하여 aws.tar파일 확인
3. 파일 스토리지( Filestore)
- 검색 창에 filestore 검색; 완전 관리형 NFS 서버
- 가용영역을 a라고 선택한다고해서 다른 영역에서 사용할 수 없는게 아니다(네트워크로 파일 시스템이기 때문에). 실습에서는 자동 선택으로 바꾼다
- VPC 네트워크의 모든 클라이언트에 대한 엑세스 권한 부여
- web01에 새롭게 만든 firestore 마운트
- mount할때 nfs 마운트 지점을 넣어준다.
- web02에서 nfs 마운트 지점을 mount하여 gcp.tar 파일 확인
4. GCP 이미지 서비스
4.1 머신이미지
- 머신이미지 화면에서 머신 이미지 만들기 클릭
- 위치가 서울(우리 리전)이 아닌 다른 지역으로 넘어가면 그게 백업이다.
- 이름, 리전, 가용영역 정도만 수정하고 나머지는 디폴트로 놓고 인스턴스를 만든다.
4.2 스냅샷 - 이미지를 거치지 않고 바로 인스턴스를 만들 수 있다
- 소스디스크를 web02로 설정하고 리전을 서울로 선택한다
- 나머지는 그대로 놔둔 상태에서 만들기 버튼을 누른다.
- 만든 이미지를 클릭하고 인스턴스 만들기를 누룬다.
- 리전과 영역을 각각 서울과 C로 선택한다
- 머신 유형은 실습에 적합한 정도인 e2-micro로 설정한다
4.3 이미지 템플릿
* 이미지 템플릿을 만들기 위해서 이미지 생성이 필요함
- 실행 중인 인스턴스는 이미지로 만들 수 없다
- 대신 스냅샷 선택
* 이미지로 VM 만들기
- 리전 : 서울, 영역 : b
- 머신 유형 : e2-micro
-부팅디스크 이미지를 앞서 만든 hyeongyun0825-img로 설정한다.
- 엑세스 범위 : 모든 Cloud API에 대한 전체 엑세스 허용
- 방화벽은 모두 오픈한다.
* 이미지를 활용하여 인스턴스 템플릿을 만들어 활용할 수 있다.
- 커스텀 이미지를 설정하고 Template을 만든다
- 새롭게 만든 템플릿으로 인스턴스를 만들어 본다.
5. GCP 네트워크 서비스
- 서브넷 대역대를 서울은 10.17.0.0/20으로 설정하고 도쿄는 10.170.0.0/24로 설정한다.
- 우선순위가 존재한다(숫자가 낮을 수록 우선순위가 높아진다)
- 필터부분은 출발지 IP
- ingress(inbound) 포트를 모두 열어준다.
- 새로 만든 vpc를 누르고 방화벽 규칙을 변경해줄 수 있다.
- 방화벽의 이름과 사용할 vpc를 명시해준다.
- 소스 IPv4 범위(출발지 IP)를 설정한다.
- 지정된 프로토콜 및 포트를 Mysql(3306) 포트로 설정한다
- 새로 생성한 vpc를 활용하여 인스턴스를 생성한다.
- 리전은 서울이고 영역은 a로 한다.
- 머신 유형은 e2-micro
- 이미지를 이전에 생성한 hyeongyun0825를 활용
- 방화벽은 http, https 모두 열어준다.
- 네트워크 태그에 mysql을 입력하면 앞서 설정한 mysql 방화벽을 해제할 수 있다.(이전에 방화벽 생성시 이름을 지정했기 때문에)
- 네트워크 인터페이스를 hyeongyun-vpc를 seoul IPv4(10.17.0.0/20)으로 설정
'Cloud Solution Architect > GCP' 카테고리의 다른 글
GCP - VM 생성 (0) | 2023.04.19 |
---|