Day 62 - GCP 2tier (LB, Autoscaling)
오늘 배운 내용
- GCP 2tier 구성
LB 제외 모두 private으로 접속, Autoscale 가능하도록 구성
세션처리를 위해 redis 서버를 만들어 사용한다
centos7에서 redis 설치
yum install epel-release
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install -y redis
firewall-cmd --permanent --zone=public --add-port=6379/tcp
firewall-cmd --reload
firewall-cmd --list-all
systemctl enable redis
systemctl start redis
systemctl status redis
vi /etc/redis.conf
bind 0.0.0.0 ==> 수정
requirepass password!!
systemctl restart redis
** 3tier, 2tier를 구성할때 tier별로 서브넷을따로 구성하는것이 좋다!
2tier 구성 순서
1. web-svc VPC 생성
1-1. subnet - db, mgmt, was
sql 서비스를 사용할 예정이라 DB 서브넷을 사용하지는 않지만
언젠가 DB 서버를 만든다면 이렇게 따로 빼놓는게 좋음
2. DB 만들기 -DB 서브넷에
이때 IP 할당문제 발생시 VPC들어가서 private service network release 후 생성
3. redis
http열지말기 , network web-svc / was subnet
network tags - redis
redis 서버 port = 6379 이걸 열어줘야 한다
- 지금까지는 tcp all이어서 다 되었는데 이번에는 port 만 열자
4. 방화벽 열기
web-svc vpc 이동
Create a firewall rule: tcp-6379
ip 대역 - was 서버 대역
target - redis : redis 태그가 달린 서버에 적용
# redis port 열렸는지 확인
telnet ip port
5. redis vm에 redis 설치
6. private zone 생성
vpc내에서만 dns통신하게 만듦
클라우드 vm들은 ip가 바뀔 가능성이 얼마든지 있다
--> 그럴때 마다 소스코드를 수정할 수 없기때문에 dns처리를 하고 dns 설정을 바꾸는것이 좋다
- 2개 레코드 생성
redis vm에서 만든 mysql dns로 ping이 됨
7. was template 만들기
만들고 vpc 방화벽 규칙을 추가한다
network tag: was
이때 ip 대역을 was 서브넷 대역으로 주면 안되고 0.0.0.0/0으로 줘야 한다
--> LB ip가 어느 대역으로 생성될지 모르기때문에 was 서브넷 대역을 주면 안된다
- LB ip 생성 대역이 있는데 이 대역을 주던지 0.0.0.0/0을 주면 된다
8. LB 만들기
was 서버 image 만들기
instance template 만들기 - network 위치 잘보기, extarnal ip 주지 않기, network tag 주기
instance group 만들기 : ststeless 로, Autoscaale 설정
LB 만들기
health check: tcp-8080
** 사이트 접속 후 DB 작업을 하면 redis 서버에 세션이 남는다
redis 세션 확인하기
redis-cli
AUTH 패스워드입력
keys *
DB에 데이터를 쌓으면 세션정보가 업로드 된다
메뉴얼은 깃에 업로드
오늘의 회고
- 오늘 was 서버 방화벽을 뚫을때 was ip 대역을 설정해놓고 왜 안되는지 ,, 엄청 답답해했다 (당연함) LB ip가 was 대역에 생기지 않을거라고는 생각도 못했다 ㅜㅜ 그래도 덕분에 더 배울수있어서 좋았다~~
- 내일은 팀원분들과 AWS에서 tomcat 3tier를 구성하고 메뉴얼을 만들기로했다 !!
- 드디어 주말이다 ~~~ 늦잠 잘수있어서 좋다 ㅎㅎ