VPC가 핵심이다. AWS는 Classic이 사라졌다. 물론 Classic에서 3티어 구축이 불가능 하지는 않다. 그러나 VPC와 Classic과의 차이는 VPC는 독립적인 네트워크를 논리적으로 가져갈 수 있다는 것에 있다.
단, Classic으로 한다고 해서 틀린 것은 아니다. 좀 더 쉽게 실습을 해볼 수 있어 오히려 좋은 선택이었다.
mariaDB: 개인. 그래서 공공기관 클라우드에서는 지원을 해주지 않는다. mysql과 엔진(핵심기술)이 똑같음. 그래서 mysql 데이터를 maria DB 로 잘 가져다가 쓸 수 있다. systmctl start mariadb를 해주면 mysql도 기동이 된다.
포트포워딩 설정: 네트워크 기술 중 하나. port를 forwarding 해주는 것. 공인 IP를 붙여주지 않아도 접속해 줄 수 있다. 즉, 공인 IP를 돈 내고 할당 받을 필요가 없다. 그러나 실제로는 많이 쓰이진 않는다고 한다.
CentOs는 maria DB를 다운 받기 위해 레포지토리를 따로 두기도 한다.
maria DB client 패키지를 설치해줄 필요는 없었다. 그러나 보통 편의상 설치를 해준다.
-p는 패스워드 옵션. 패스워드가 없으면 이를 넣어주면 안된다.
8080 포트 -> 웹 서버의 아이피를 할당한다.
3306 포트 -> WAS의 아이피로 국한되어야 한다.
web / was / db 에 대한 각각의 ACG를 설정해주어야 한다.
mariadb 외부 접근이 되면 안된다. 데이터 베이스가 뚫린다는 소리이다.
JDK 버전에 따라 사용할 수 있는 라이브러리와 없는 라이브러리가 있다. 그래서 사용하는 JDK 버전이 매우 중요하다.
절대 경로 vs 상대 경로 => 매우 중요하다.
절대 경로는 굉장히 불편하다.
web, was, db 에 공인 IP를 다 할당 => 시간이 많이 걸린다! + 모든 패킷들이 노출되어 버림 => 그러므로 내부 IP를 쓰는 것이 맞음.
HTTP response status codes 참고
Listen: 클라이언트의 연결을 대기하는 것
bind: TCP 포트와 매칭하는 것을 말한다. => 접속 되냐 안되냐를 결정해 줄 수 있다.
127.0.0.1: 자기 자신을 뜻한다.
NAT Gateway가 정답은 아니다.
하지만 private에서는 NAT Gateway가 필수이다.(물론 비용 효율적이지는 않지만, 어쩔 수 없다.)
ICMP는 핑이랑 관련이 있다.
ping 테스트에는 함정이 있다. 참고 자료로 쓰되, 100% 확신해서는 안된다. 그러니까, ping을 써서 요청 시간이 만료되었다는 말이 떠도, 그 웹사이트가 무조건 죽었다고 생각하는 건 위험하다.
Open JDK -> 오픈소스. 인수되면서 상용화되었다.
운영체제 vs 콘솔 구분할 것
뒤에 붙는 -d는 데몬이다.
와일드플라이도 설치되었다는 것을 웹으로 확인은 가능하다!
버전이 최고라고 해서 좋은 것은 아니다. 중요한 것은 버전끼리의 호환이다.
CDB mysql 장점: fail over 기능! 하나가 빵꾸나면 다른 걸로 메꿔준다.
https: 443으로 하는 보안 통신. 그래서 wget 을 통해 설치를 할 때 인증서 관련 오류가 발생할 수 있다. 이 경우 https 가 아닌 http로 사용!