Web/AWS

AWS 서버환경

태윤2 2021. 8. 22. 00:19

클라우드란?

  • 인터넷(클라우드)를 통해 서버, 스토리지(파일 저장소), 데이터베이스, 네트워크, 소프트웨어, 모니터링 등의 컴퓨팅 서비스를 제공하는 것

클라우드 종류

  1. Infrastructure as a Service(Iaas, 아이아스, 이에스)
    • 기존 물리 장비를 미들웨어와 함께 묶어둔 추상화 서비스
    • 가상머신, 스토리지, 네트워크, 운영체제 등의 IT 인프라를 대여해주는 서비스
    • AWS의 EC2, S3 등
  2. Platform as a Service(Pass, 파스)
    • IaaS에서 한 번 더 추상화한 서비스
    • 한 번 더 추상화했기 때문에 많은 기능이 자동화되어 있음
    • AWS의 Beanstalk(빈스톡), Heroku(헤로쿠) 등
  3. Software as a Service(SaaS, 사스)
    • 소프트웨어 서비스
    • 구글 드라이브, 드랍박스, 와탭 등

EC2 인스턴스 생성하기

  • EC2(Elastic Compute Cloud)는 AWS에서 제공하는 성능, 용량 등을 유동적으로 사용할 수 있는 서버
  • AWS에서 리눅스 서버 혹은 윈도우 서버를 사용합니다 라고하면 EC2를 이야기하는 것

AMI 선택
micro 선택
30GB까지 프리티어로 사용가능
웹 콘솔에 표기될 태그의 이름
보안 관련 설정

이후 pem 키를 생성하고 다운로드 받아 저장

EIP 할당

  • AWS의 고정 IP를 Elastic IP(EIP, 탄력적 IP)라고 합니다. EC2 인스턴스 페이지의 왼쪽 카테고리에서 탄력적 IP를 눌러 선택하고 주소가 없으므로 [새 주소 할당] 버튼을 클릭해서 바로 [할당] 버튼을 클릭

 

  • 생성한 탄력적 IP와 방금 생성한 EC2 주소를 연결

탄력적 IP 주소 연결 클릭
인스턴스를 찾아서 연결

 

*** 생성한 탄력적 IP는 무조건 EC2에 바로 연결 해야하며 사용할 인스턴스가 없으면 탄력적 IP를 삭제 해야함 연결하지 않거나 인스턴스가 없는 경우에는 요금이 발생됨 !! ***

 

EC2 서버에 접속하기

  • Mac & Linux는 터미널
  • Window는 putty

-- Mac 은 추후 추가 --

 

Window에서 접속 하기

  • putty 다운로드(http://www.putty.org/)
  • puttygenkey로 ppk 파일생성
  • putty.exe 파일을 실행

 

ec2-user@탄력적 IP

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

Auth 탭에서 ppk 파일 로드

  • session 탭에서 Saved Sessions에 현재 설정을 저장할 이름을 등록하고 save

  • open 버튼을 클릭하면 SSH 접속 알림이 등장 -> Accept 클릭

접속성공!

아마존 리눅스 서버 생성 시 꼭 해야 할 설정들

  • Java 설치
  • 타임존 변경 : 기본 서버의 시간은 미국 시간대
  • 호스트네임 변경 : 현재 접속한 서버의 별명을 등록. IP만으로는 어떤 서버가 어떤 역할을 하는지 알 수 없기 때문에 호스트 네임을 필수로 등록

Java 설치

  • yum에는 설치가능한 JDK가 1.8까지만 존재하기 때문에 JDK 11을 설치하기 위해선 다른 방법을 이용해야합니다.
  • 현재 프로젝트는 Java 11로 되어 있어서 11을 설치
  • Java 8을 쓴다면 sudo yum install -y java-1.8.0-openjdk-devel.x86_64 로 설치가능
# aws coreetto 다운로드
sudo curl -L https://corretto.aws/downloads/latest/amazon-corretto-11-x64-linux-jdk.rpm -o jdk11.rpm

# jdk11 설치
sudo yum localinstall jdk11.rpm

# jdk version 선택
sudo /usr/sbin/alternatives --config java

# java 버전 확인
java --version

# 다운받은 설치키트 제거
rm -rf jdk11.rpm

 

타임존 변경

KST로 변경

 

Hostname 변경

https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/set-hostname.html

 

Amazon Linux 인스턴스에서 호스트 이름 변경 - Amazon Elastic Compute Cloud

Amazon Linux 인스턴스에서 호스트 이름 변경 인스턴스를 시작하면 인스턴스에 호스트 이름(내부 프라이빗 IPv4 주소)이 지정됩니다. 일반적인 Amazon EC2 프라이빗 DNS 이름은 ip-12-34-56-78.us-west-2.compute.i

docs.aws.amazon.com

 

hosts에 HOSTNAME 등록

입력후 esc-> :wq 로 빠져나오자
curl 등록한 호스트이름

  • 호스트 등록 실패하면 Could not Resolve host
  • 호스트 등록 설공하면 Failed to connect to
  • reference

스프링부트와 AWS로 혼자 구현하는 웹서비스