[AWS] 6. AWS 서버 환경을 만들어보자 - AWS EC2 - (2)

경운·4일 전
0
post-thumbnail

🐣 EC2 서버에 접속하기

이전에 생성한 EC2로 접속해보자 나는 윈도우로 하기 때문에 윈도우로 들어가보겠다

만약 오랜 시간 접속이 안 되거나, 권한이 없어서 안 된다고 메시지가 나온다면 다음과 같이 확인해 보는 것이 좋다
1. HostName 값이 정확히 탄력적 IP로 되어있는 지 확인
2. EC2 인스턴스가 running 상태인지 확인
3. EC2 인스턴스의 보안 그룹 -> 인바운드 규칙에서 현재 본인의 IP가 등록되어 있는 지 확인

1. puttygen.exe 파일 실행

  • putty는 pem 키로 사용이 안 되며 pem 키를 ppk 파일로 변환을 해야함
  • puttygen은 이 과정을 진행해 주는 클라이언트

2. ppk 파일 생성

이전 장에서 만든 pem (비밀키)를 가지고 ppk 파일을 생성

Save private Key 클릭해서 ppk 파일 생성

경고 메시지 뜨면 예 누르고 그냥 넘어가면 됨

3. putty.exe 파일 실행

  • HostName
    • username@public_Ip 를 등록
    • Amazon Linux는 ec2-user가 username이라서 ec2-user@탄력적 IP 주소 등록
  • Port
    • ssh 접속 포트인 22 등록
  • Connection type
    • SSH를 선택

4. ppk 파일 로드

Connection -> SSH -> Auth -> Credentials 가서 Browse 클릭후 ppk 파일 선택

Session -> Saved Sessions에 이름 주고 Save

접속 성공~

처음에 오류가 발생하였지만 인바운드 규칙 설정할 때 처음에 했던 나의 IP주소와 현재 IP 주소가 달려서 오류가 발생했던거 같다


🐣 서버 생성 시 꼭 해야 할 설정들

1. Java 설치

yum 저장소에 어떤 자바 17 패키지가 있는 지 확인

sudo yum list java-17*

자바 17 JDK 설치

sudo yum install java-17-amazon-corretto-devel

💡패키지 이름 뒤에 -devel이 붙은 것을 설치해야 함

  • 개발에 필요한 JDK를 설치하는 것이고, 없으면 실행만 가능한 JRE를 설치하는 것


2. 타임존 변경

EC2 서버의 기본 타임존은 UTC이다 -> 한국의 시간대가 아님
즉, 한국과는 9시간 차이가 발생
이렇게 되면 서버에서 수행되는 Java 애플리케이션에서 생성되는 시간도 모두 9시간씩 차이가 나기 때문에 수정이 필요

1. 현재 시간 및 타임존 확인

timedatectl -> 입력

Time zone: 부분을 확인해보자 UTC로 되어있는 것을 볼 수 있다

2. 한국 타임존으로 변경

sudo timedatectl set-timezone 'Asia/Seoul' -> 입력

3. 변경된 타임존 확인

한국 시간대로 변경된 것을 볼 수 있다


3. Hostname 변경

여러 서버를 관리 중일 경우 IP만으로 어떤 서비스의 서버인지 확인이 어려움

1. 현재 호스트명 확인

hostnamectl -> 입력

입력하면 ip 주소 + ap~ 이렇게 긴 이름이 나온다

2. 새로운 호스트명으로 변경

sudo hostnamectl set-hostname freelec-springboot2-webservice -> 입력

3. 변경된 호스트명 확인

💡 여기까지만 하면 재부팅 시 호스트명이 초기화 될 수 있음, 추가 작업을 해보자

4. /etc/hosts 파일 수정

시스템이 자기 자신을 찾을 때 사용하는 파일
sudo vi /etc/hosts -> 입력

입력 후 :wq 저장후 나오기

5. cloud-init 설정 변경(재부팅 시 호스트명 유지)

EC2는 cloud-init이라는 서비스로 부팅 시 초기 설정을 하는데, 호스트명을 원래대로 되돌리는 것을 막는 설정

  1. 설정 파일 열기 - sudo vi /etc/cloud/cloud.cfg

이 부분을 false 에서 true로 변경하면 된다

완료후 서버 재부팅 해보자

호스트명 잘 바뀐 것을 볼 수 있다 ㅎㅎ

6. 정상 등록 확인

curl freelec-springboot2-webservice -> 입력

해당 오류는 호스트명을 잘 인식하고 실행은 잘되었음을 의미함


EC2 설정이 완료되었으니 AWS의 데이터베이스 서비스인 RDS를 생성하고 설정해보겠습니당

0개의 댓글