AWS

AWS 230321 기초

주영재 2023. 3. 21. 10:28

AWS

Amazon Web Service는 지금은 흔히 클라우드 컴퓨팅이라고 알려진 웹 서비스 형태로 기업에 IT 인프라를 제공

 

클라우드 컴퓨팅

-서버 환경을 직접 구축하려면 컴퓨터장비 운영체제, 네트워크, 보안, 소프트웨어 등의 다방면의 지식을 필요로 한다.

클라우드 컴퓨팅이란 서버(컴퓨터)를 가상으로 구축하고 사용자에게 환경을 제공해주는 것을 의미한다.

 

온프레미스 vs 클라우드 컴퓨터

  • 온프레미스는 기업의 서버를 자체적으로 보유하고 있는 서버에 직접 설치하고 운영하는 방식이다. (데이터센터)
  • 클라우드는 필요한 IT 자원만을 선택해 인터넷을 통해 ‘서비스’ 방식으로 구입해 사용하는 방식임. 클라우드 서비스는 제공하는 자원에 따라 크게 3가지로 분류 가능.
    1. Saas - Software as a Service(소프트웨어를 웹에서 사용할 수 있는 서비스)
    2. laas - Infrastructure as a Service(인프라 구축에 필요한 시스템을 대여하는 서비스)
    3. Paas - Platform as a Service(소프트웨어 개발에 필요한 플랫폼을 대여하는 서비스(구글검색엔진 등) )

AWS의 가장 대표적인 기능으로

EC2 - 엘라스틱컴퓨터

S3 - 스토리지

RDS(relation database system) - 데이터베이스

Route53 - 도메인서비스

ELB - 엘라스틱 로드 밸런싱 (트래픽 분산)

AMI - 아마존 머신 이미지 (많이 사용하는 서비스 복제)

 

등이 있다.

AWS는 가입 후 1년간 프리티어로 몇몇 서비스를 무료로 제공한다.


EC2

지역은 서울로

원하는 os 선택 가능. 

 

OS는 ubuntu로 설정.

 

키 페어:ec2에 접속하기 위한 비밀번호

서버명과 같이, 헷갈리지 않게.

설정하면 파일이 다운로드된다. 외부 유출하지 말고(ex 깃) 안전한 위치에 보관할 것.

 

네트워크 설정. ssh는 접속을 위해(필수).

http는 통신을 위해 잡음

 

스토리지 구성

15GB정도로 넉넉하게 잡기

새 볼륨 추가로 파티션을 나눌 수도 있음.

 

=>인스턴스 시작


그대로 두면, ip가 켜질 때마다 바뀐다.

즉, 도메인 주소가 매번 바뀌게 됨.

고유한 ip사용 필요

->탄력적 IP(고정으로 쓸 아이피) 생성

 

탄력적 IP 주소 할당 하면 생성됨

탄력적 IP 주소 연결을 하면 인스턴스와 연결이 가능하다.

 

주의할 점.

인스턴스가 더이상 필요 없어서 인스턴스를 삭제할 때, 탄력적 IP도 같이 삭제해야 한다.

만들어놓고 사용하지 않으면 요금이 부여됨.

 


보안 그룹 설정

 

default는 무조건 생성된다. 건드릴 필요 없음.

보안 그룹은 방화벽이라고 생각하면 된다.

 

인바운드 규칙-접속하는 포트

아웃바운드 규칙-나가는 포트


리눅스 접속을 위한 SSH서버 설치

 

SSH(Secure Shell Protocol)

-보안이 강화된 서버 원격 접속 및 제어 도구

-서버와 클라이언트는 비스킷을 하나 쪼개서 서로 나누어 갖는다.

-원격 접속시 이 비스켓을 맞춰 본다.

-조각이 맞으면 서로만의 비밀 통로를 만들어서 통신한다(비대칭키 암호화).

-통로가 만들어지면 똑같이 생긴 열쇠 두개를 나누어 갖는다. 클라이언트는 열쇠로 암호화해서 데이터를 전송한다. 서버는 열쇠로 해석한다(대칭키 암호화).

 

 

 

aws 인스턴스는 자동 생성되어 있음.

 

 


원격 접속 프로그램 putty

 

putty 다운로드

 

HostName

계정명@아이피주소(ssh 22번포트)

(aws가 아니면 계정명은 바뀔 수도 있다.)

(아이피주소는 탄력적IP주소로.)

--ubuntu@탄력적IP주소--

Port는 22로

 

Saved Session에 이름 넣고 저장 가능.

하고 뜨는 화면에서 Accept하면 된다. 초창기에 한번만 뜸.

 

하면 검은색 창이 뜬다. ->터미널

 

 

 

비밀번호

다운로드한 ppk파일

ssh-auth-credential의

private  key file for authentication에 파일 올리면 된다.

 

 

-터미널에서 내려진 명령을 해석하는 도구 인터페이스

-sh(본쉘), bash 등이 있다.

 

커널(kernel)

-운영체제와 하드웨어를 이어주는 핵심 기능, 컴퓨터 시스템 자원들을 관리하는 역할

사용자가 명령 터미널을 통해 입력하면 쉘이 명령을 받아 해석하고 커널에 전달하면 커널을 통해 하드웨어 조작을 하게 된다.

 

 


리눅스는 관리자 계정 root계정이 존재 

 

 

관리자의 권한 sudo

-sudo는 관리자의 권한을 의미한다.

루트 권한으로 변경하게 되면 모든 권한을 얻게 된다.

관리자의 권한만 빌려쓰고 싶다면 sudo를 앞에 붙인다.

 

reboot-리부트 명령문

sudo reboot -관리자 권한으로 리부트하겠다는 명령문

 

root계정의 전환(관리자의 계정으로 전환할 때는 관리자 권한이 필요하다.)

 

사용자 계정으로 전환

su 계정명

 

root계정으로 전환

sudo su - root

sudo su - 


출력문 실행하기 echo

echo 출력문

 

전역 환경변수 확인하기

echo $PATH

 


명령문의 메뉴얼 확인하기 man

man 명령문

 

명령문을 실행할 때 하이픈(-)을 이용하여 옵션을 줄 수 있다.

명령문은 굉장히 많다. 설명도 조금 부족한 편. ->> 구글링

 

 

터미널로 돌아가는 것도 명령문을 사용해야 한다.

quit, exit

q나 exit나 ctrl+c를 하면 나갈 수 있다. 탈출 명령문은 셋중에 하나.

 

 

사용했던 명령문을 다시 쓰려면 방향키 위아래를 사용해서 볼 수 있다.

 

 

 

 

 


+a LINUX

운영체제 두개 설치 불가.

->

가상머신 VMware설치

가상머신에 리눅스 배포판(Ubuntu) 설치