AWS서버 환경을 만들어보자

박일한·2021년 11월 16일
0

AWS

amazon web services로 클라우드 컴퓨팅 서비스 이다.

24시간 작동하는 서버

  1. 집에 PC를 24시간 구동 시킨다.
  2. 호스팅서비스을 이용한다.(cafe24, 코리아호스팅, 가비아 등등)
  3. 클라우드 서비스을 이용한다.(aws, azure, gcp 등등)

클라우드 서비스 3가지

  1. Infrastructure as a Service(IaaS, 아이아스, 이에스)
  • 기존물리 장비를 미들웨어와 함께 묶어둔 추상화 서비스
  • 가상머신, 스토리지, 네트워크, 운영체제 등의 IT 인프라를 대여해 주는 서비스
  1. Platform as a Service(PaaS, 파스)
  • IaaS를 한번 더 추상화한 서비스
  • 한번 더 추상화 했기 때문에 많은 기능이 자동화
  1. Software as a Service(SaaS, 사스)
  • 소프트웨어 서비스

우리는 AWS에 IaaS를 이용하여 서버를 생성하고 인프라를 구축 할 것이다.

호스팅과 클라우드의 사용 후기 차이점

호스팅 업체는 단순 장비대어를 해준다고 생각이 든다. 처음부터 끝까지 다 셋팅을 해야되며
그런것들을 구축하는데 있어서 시간과 인원이 많이 필요했다.
aws를 깊게 써본건 아니지만 단순 호스팅 대여보다는 모든걸 관리해주는 느낌 그리고 자동화된
덕분에 불필요한 시간을 절약할 수 도 있다고 생각이 들었다.
업체에서는 아마 비용문제도 고려를 해야 하기 때문에 실무에서 클라우드가 더 비싼던 걸로 기억을 하고 있다.

AWS 회원가입

aws를 사용하기 위해서는 계정을 만들어야 한다.
보통 이런 서비스들을 이용할때에는 Master 혹은 Visa카드로 결제정보를 입력해야 한다.
aws 사이트 : https://aws.amazon.com/ko/
무료계정 만들기를 선택한다.

해당 정보들을 입력후 진행한다.
이메일은 구글계정을 쓰는게 편한것 같다.

반드시 개인으로 선택하고 해다 내용을 입력한다.
네이버에서 영문주소 변환이라고 검색을하면 주소, 시, 우편번호등 자세하게 나온다.
그다음부터는 계속버튼을 누르면서 사이트에서 원하는 카드정보, 인증확인등 진행을 하면된다.

마지막으로 플랜을 선택하면 되는데 무료지원 기본플랜을 선택한다.

EC2 인스턴스 생성

EC2 : elastic compute cloud는 aws에서 제공하는 성능, 용량등을 유동적으로 사용 할 수 있는 서버 이다.
참고사항
1. 무료버전에서는 t2.micro만 사용가능합니다.(메모리 1GB)
2. 월 750시간의 제한, 초과시 비용부과

보통 EC2를 생성하기전 상단 우측에 서버 주소가 있는데 오하이오로 선택이 되어있다.
그부분을 서울 또는 필요한 지역으로 변경하면된다.
참고로 AWS의 도움말 레퍼런스는 정말 잘되어 있는것 같다.
1. Alt+S 또는 대시보드에서 EC2를 검색한다.
2. EC2대시보드에서 인스턴스 시작을 클릭한다.

3. Amazon machine image를 선택한다.

프리티어 레벨에선 선택할 폭은 정해져있으니 프리티어로 되어있는부분을 선택 후 넘어가면 된다.
4. 인스턴스 세부정보를 구성한다.

5. 스토리지 추가에서 크기를 변경한다.

프리티어는 30GB까지 사용 가능하다.
6. 태크를 추가한다.

7. 보안그룹을 설정한다.

보안그룹에서 SSH, TCP(8080)등 아이피를 설정한다.
여기서 설정이 잘안되어서 SSH를 내 아이피가 아닌 모든 아이피를 오픈했었는데 실제로 그렇게 사용하게 되면 보안상 문제가 생기기 때문에 특정 접속 아이피만 허용 해야한다.
추후 문제가 해결된 후 SSH의 아이피는 내IP로 변경하였다.
참고로 AWS는 내IP는 선택항목이 있어 큰 걱정없이 아이피를 입력 할 수 있다.
8. 인스턴스 검토를 한다.
9. 기존키페어 선택 또는 새키 페어 생성을 한다.
인스턴스에 접근하려면 pem키(비밀키)가 필요하다. 이것은 일종의 마스터키기 때문에 절대로 유출되서는 안된다.
pem키는 ec2서버로 접속시 필수 파일이니 잘 관리 할 수 있는 디렉토리로 저장한다.

이제 설정이 거의다 끝났다.
앞으로 몇가지만 더하면 완료가 된다.
10. EIP를할당한다.(탄력적 IP)
ec2 인스턴스 페이지 옆에 탄력적 IP를 눌러 선택하고 새주소 할당을 선택한다.
11. 탄력적 IP를 생성했으면 EC2주소와 연결을 한다.
방금 생성한 탄력적 IP를 확인하고, 페이지 위에 있는 작업 버튼을 클릭 -> 주소연결 메뉴를 선택한다.
주소연결을 위해 생성한 EC2이름과 IP를 선택하고 연결버튼을 클릭한다.
주의점 : 탄력적 IP는 생성하고 EC2서버에 연결하지 않으면 비용이 발생된다.
즉 생성한 탄력적IP는 무조건 EC2에 바로 연결해야 한다.
더 이상 사용할 인스턴스가 없을경우 탄력적 IP를 삭제해야한다.

EC2 서버에 접속하기

나는 윈도우 사용자 이기 때문에 putty로 연결을 진행한다.
putty란 가상 단말기 프로그램이다. 서버는 물리적으로 떨어져 있어도 단말 장비를 통해서 원격으로 접속하여 작업할 필요가 있는데 이때 물리적인 단말장비가 아닌 논리적인 가상 단말기를 제공합니다.
접속 방식으로는 telet, ssh, rlogin등 다양한 방법을 제공하고 있고 가상 단말리고써 가볍고 다양한 설정이 가능한 무료 오픈소스 프로그램이다.
참고사항 - 오랜시간 접속이 안되거나 권한이 없으면 아래와 같이 확인해 본다.
1. hostName값이 정확히 탄력적IP로 되어있는지 확인
2. EC2 인스턴스가 running 상태인지 확인
3. EC2 인스턴스 보안그룹 -> 인바운드 규칙에서 본인의 IP가 등록 되어있는지 확인

putty 사용

https://wwww.putty.org/ 접속하여 download putty를 클릭한다.
다운로드해야할 파일은 puttygen, putty exe 파일이다.
1. puttygen을 실행한다.

상단의 Conversions에서 aws에서 다운받은 pem파일을 선택하고 ppk파일로 변환하는 작업이다.
2. conversions에서 파일을 선택 후 generate를 클릭한다.
3. save private key를 클릭하고 파일을 저장한다.
4. putty를 실행한다.

5. hostName부분에 ec2-user@탄력적IP를 입력한다.
6. Connection -> SSH -> Auth에서 아까 생성한 ppk 파일을 선택한다.
7. 설정을 저장하고 싶으면 saved Sessions에서 이름을 입력 후 save한다.
8. open 시 command 화면이 오픈된다.

아마존 리눅스 서버 생성시 필수 설정

  1. java8 설치
  • sudo yum install -y java-1.8.0-openjdk-devel.x86_64
  1. 타임존 변경
  • sudo rm /etc/localtime
  • sudo lm -s /usr/share/zoneinfo/asia/seoul /etc/localtime
    반드시 띄어쓰기를 확인한다.
  1. hostname 변경
  • 첫번째 방법 : sudo vim /etc/sysconfig/network
    화면에서 hostname으로 되어있는 서비스명을 변경

  • 두번째 방법 : hostnamectl set - hostname 호스트명
    cat /etc/hostname

  • 변경 후 sudo vim /etc/hosts 파일을 열어서 아이피 및 호스트명일 입력 후 :wq로 종료한다.

    이번 챕터의 나의 생각

    흠.. 리눅스를 접해보질 않아서 너무 낮설었다.
    아마존이 내 첫 클라우드라 그런지 편하긴 했다.
    ... 솔직히 리눅스는 계속 뭔가 두려움이 있어서 실무에서 실수하면 어쩌지 큰일나는거 아닌가.. 라는 생각에 조금씩 피해만 왔던것 같다.
    앞으로 이책에서 몇개의 챕터가 더 남았는데 리눅스의 명령어와 친해질 필요가 있을 것같다.

profile
긍정적인 삶을 갖자~~

0개의 댓글