이번 포스트에서
📍 스팟 인스턴스 설정 이유
: 스팟으로 설정된 인스턴스는 서버가 갑자기 종료될 수 있다는 단점이 존재하지만, 가격이 t3.small기준 거의 1/6로 줄어들므로 가성비가 좋습니다! (약 3만원 -> 약 5천원)
1. aws에서 EC2를 검색하고 들어가면 인스턴스를 생성하는 버튼을 볼 수 있습니다.
2. 인스턴스 생성하며 정보를 설정하는 화면입니다.
마지막으로 고급 세부 정보에서 스팟 인스턴스 요청을 설정합니다
인스턴스의 ID를 클릭하면 더 많은 세부정보를 볼 수 있습니다
1. xshell 설치 후 파일 새로 만들기
2. 인스턴스 ID를 클릭해서 들어가고 퍼블릭 DNS 주소를 복사
3. xshell 세션 등록 정보 중 호스트 칸에 붙여 넣어줍니다.
4. 저장한 다음 새로 생성한 세션을 더블 클릭하면 아래의 화면이 띄워집니다
수락 및 저장을 누른 후 ec2의 인스턴스 이름을 적어주었습니다.
5. ec2를 생성하며 다운받았던 키페어를 찾아옵니다.
찾아보기 > 사용자 키 > 가져오기
키 선택
-> 확인
우분투 서버 접속이 확인되었습니다.
https://github.com/Kyeongrok/docker_minikube_kubectl_install
1. 위 깃허브에 접속해서 주소를 복사합니다.
2. xshell에 다음 명령어를 차례로 입력합니다.
sudo su - // root 계정 변경
mkdir git // 'git' 이라는 폴더 생성
cd git // 'git' 폴더로 이동
git clone https://github.com/Kyeongrok/docker_minikube_kubectl_install
git clone + (복사된 깃허브 주소)
명령어를 통해 깃허브의 Repository에 있는 파일을 내 로컬 컴퓨터로 복사했습니다.
cd docker_minikube_kubectl_install // 파일 이동
sh docker_install.sh // docker 설치 스크립트 실행
docker -v // docker 버전 확인
버전이 보인다면 성공적으로 도커설치가 완료된 것입니다.
1. docker 컨테이너 실행
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=(비밀번호) -d mysql
도커 옵션 설명
environment
: 컨테이너 내부의 환경변수를 설정Detached
: 컨테이너를 백그라운드에서 동작하는 어플리케이션으로써 실행port
: 포트 포워딩 설정 (docker 호스트의 포트번호
: 컨테이너 내에서 사용되는 포트번호
)
mysql docker image가 컨테이너 위에 잘 떠있는 것을 확인할 수 있습니다.
2. AWS 보안그룹 인바운드/아웃바인드 설정
AWS의 보안그룹에 올라가지 않은 포트는 방화벽에서 필터링되듯이 걸러지기 때문에
반드시 사용할 포트를 AWS 보안그룹에 추가해주어야 접근 가능합니다.
인바운드 규칙 편집
-> 규칙 추가
아웃바인드 규칙 편집
-> 규칙 추가
mysql workbench를 설치한 후
Hostname에 ec2 퍼블릭 DNS 주소를 넣어줍니다.
xshell에서 docker MySql을 띄울 때 설정했던 비밀번호를 입력해줍니다.
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=(비밀번호) -d mysql
mysql이 성공적으로 연결되었다면 성공적으로 workbench editor이 열립니다.
1_ 로그인이 안될 때 확인해 볼 것
ubuntu
로 설정했는지