728x90
반응형
5) AWS 사용 방법
- 전문가의 도움없이 쉽게 사용할 수 있기 때문에 AWS를 많이 사용
- 관리 콘솔과 managed 서비스를 이용
- 관리콘솔
- 웹 브라우저의 GUI로 AWS를 조작하는 것
- 서비스 별로 고유 화면이 있어서 서비스 설정 등을 쉽게 할 수 있음
- Managed Service
- AWS가 관리하는 서비스
- EC2는 Managed Service 가 아니지만 S3 나 RDS 는 Managed Service
- S3 나 RDS 는 백업이나 업데이트를 직접 할 필요가 없음
- 스토리지 용량이 자동으로 늘어나기 때문에 직접 관리할 필요가 없음
- 백업, 알림, 모니터링, 패치 관리, 보안, 장애에 대비한 이중화 등을 수행해 줍니다.
- 보안 전문가가 없는 경우 매우 유용한 서비스
6) 도입 사례
- 현대 건설의 경우 베스핀 글로벌을 통해서 Amazon S3를 빅데이터 플랫폼과 데이터 레이크로 구축을 하고 Sagemaker로 수요 예측 시스템을 만들어 운용
- 게임 회사들도 On-premise 와 AWS를 병행해서 사용
- 삼성, LG 와 같은 가전 회사들도 AWS를 이용해서 애플리케이션을 배포.
2. 기본 개념
2.1) Region
- AWS 의 모든 서비스가 위치하고 있는 물리적인 장소
- 한 번 설정하면 변경이 안됨
- 거리의 개념과 백업의 개념
- 가까운 곳에서 서비스를 받는 것이 좋고 백업을 할 때는 먼 곳에 하는 것이 좋음
2.2) Availability Zone(가용 영역)
- 데이터 센터의 개념으로 하나의 리전 안에 1개 또는 여러 개의 가용 영역을 가짐
- 동일한 서비스를 제공하는 EC2 가상 서버를 만들 때 되도록이면 하나의 리전이더라도 여러 가용 영역에 생성하는 것을 권장
- ELB(로드 밸런서)는 같은 리전 안에 여러 가용 영역에 걸쳐 트래픽을 분배해 줄 수 있으므로 이 방식을 권장
- 하나의 가용 영역이 작동 불능이 되더라도 서비스를 계속할 수 있게 됩니다.
- 이러한 성질을 가용성이라고 합니다.
2.3) Edge Location
- AWS 의 CDN 서비스인 Cloud Front 를 위한 캐시 서버
- CDN(Content Delivery Network): 콘텐츠를 사용자가 빠르게 받을 수 있도록 전 세계 여러 곳에 위치한 캐시 서버에 복제해주는 서비스
- CDN 캐시 서버는 인터넷 트래픽을 효과적으로 처리할 수 있는 지역에 POP(Point - of - Presense)를 구축하는데 이 곳이 CDN 서비스와 사용자가 직접 만나는 곳이라고 해서 Edge 라고 합니다.
2.4) 관리 콘솔
- 웹 브라우저에서 AWS를 관리하는 화면
- 각 관리 콘솔마다 별도의 대시보드를 제공
2.5) AWS CLI
- AWS 서비스를 빠르게 수행하기 위한 CLI
3. IAM 서비스 (매니지먼트, 유지 보수 분야 필요)
- IAM(AWS Identity and Access Management) : AWS 권한을 관리하는 서비스
- 처음 AWS 에 회원 가입을 하면 모든 작업을 할 수 있는 Root 권한이 부여된 관리자 계정이 생성됨.
- IAM은 유저나 권한에 대한 서비스
- MFA(Multi Factor Authentification)
- Factor : 사용자의 신원을 확인하는 방법
- Factor 의 종류
- 지식 기반 - ID/PW 과 같이 알고 있는 인증 정보를 이용하는 방식
- 소유 기반 - 휴대폰 SMS 인증 등 사용자가 소유하고 있는 것을 이용하여 인증하는 방식
- 속성 기반 - 고유의 속성을 이용하는 방식 (지문 인식, 홍채 인식 등)
- Factor 의 종류
- AWS 계정 인증이 지원하는 MFA는 두가지 이상의 팩터를 지원
Linux -계정 관리 : chroot, cgroup
4. Network
4.1) LAN(Local Area Network)
- 근거리 통신 망
- 구성하는 기술
- Router :
- 네트워크 출입구가 되는 부분에 설치하는 기기
- 일방향으로 들어온 데이터의 목적지를 확인하고 목적지에 가까운 다른 네트워크에 데이터를 전송
- Hub :
- 네트워크의 배선을 분할하는 기기
- Firewall(방화벽)
- 들어오고(인바운드) 나가는(아웃바운드) 데이터를 확인하고 통신 여부를 조정하는 장치
- 프록시 서버 : 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터 시스템이나 응용 프로그램을 가리키는데 서버 와 클라이언트 사이에 중계기
- DMZ : 인터넷과 같이 외부 네트워크와 내부 네트워크의 중간에 설치하는 네트워크
- DHCP : 접속되어 있는 단말기에 자동으로 IP를 분배하는 장치
- Subnet : 하나의 네트워크를 작게 분할한 네트워크
- Router :
4.2) IP Address
- 인터넷 상에서 단말기를 구별하기 위한 주소
- IP v4 와 IP v6 또는 Private IP 와 Public IP 또는 Static IP 와 Dynamic IP 등으로 분류를 합니다.
- IP v4 는 32 비트 주소 체계로 8비트 씩 나누어서 10진수로 . 과 함께 표현
- 0.0.0.0 ~ 255.255.255.255
- 클래스 별로 나누어서 사용
- 첫 비트가 0 이면 A Class
- 첫 비트가 1 이고 두번째 비트가 1 이면 B Class
- 첫 번째와 두번째 비트가 1이고 세번째 비트가 0이면 C Class
- 지금도 이 표현법을 사용하지만 실제로는 주소 개수가 부족하여 IP v6 를 사용
- IP v6 는 4비트 씩 4개씩 끊어서 :: 으로 구분해서 8개의 영역으로 표기
- Private IP 는 내부 망에서 서로를 구분하기 위한 IP
- 10으로 시작하거나 17.16 으로 시작하거나 192.168 로 시작하면 Private IP
- Public IP 는 모든 망에서 서로를 구분할 수 있는 유일한 IP
- 내부 망 이외에서 접속을 할려면 Public IP 가 할당되어 있어야 합니다.
- Static IP 는 변경되지 않은 IP
- 서비스를 제공하는 경우는 일반적으로 public ip 와 static ip 의 성격을 갖는 ip 가 있어야 합니다.
- Dynamic IP 는 수시로 변경되는 IP
- Elastic IP 는 AWS 에서 서비스 별로 Static IP 형태로 탄력적으로 부여하는 IP
4.3) DomainName 과 DNS
- IP는 숫자로 되어 있고 숫자는 사람이 기억하기 어렵습니다.
- 숫자로 된 IP에 의미있는 이름을 부여할 수 있는데 이것이 Domain Name
- Domain Name을 IP와 매핑 시켜주는 서비스를 DNS(Domain Name Service) 라고 합니다.
- Route 53 이라는 서비스가 AWS 에서 DNS 역할을 수행합니다.
4.4) VPN(Virtual Private Network)
- 공중 네트워크를 통해 한 회사나 몇몇 단체가 내용을 외부에 들어내지 않고 통신할 목적으로 사용하는 사설 통신망
- 최근의 대기업 업무망은 대부분 VPN으로 구성되어 있습니다.
- 업무 때문이 아니라 차단된 사이트에 접근하기 위한 목적으로 VPN을 사용하기도 합니다.
- Amazone 에서는 VPC 라는 서비스로 제공
- 하나의 VPC 로 묶으면 하나의 네트워크로 묶인 효과가 발생하게 됩니다.
- 데이터베이스 서비스를 생성하고 EC2 와 같은 OS 서비스를 선택한 상태에서 EC2에서 데이터베이스에 접속을 할려면 하나의 VPC 로 묶던가 데이터베이스를 public 에서 접속할 수 있도록 해주어야 합니다.
- VPC 기능
- CIDR 블록 : 서브넷을 의미하는데 네트워크를 나눈 범위
Subnet Mask : 동일한 네트워크 크기를 계산하기 위한 값
- 컴퓨터에 설정할 때는 24 대신에 255.255.255.0 으로 설정합니다.
- 가용영역 : 서브넷이 구축된 물리적 장소
- 인터넷 게이트웨이 : 인터넷에 접속하기 위한 출입구
- 보안 그룹 : AWS가 제공하는 가상의 방화벽으로 인스턴스 단위로 설정하고 유입되는 데이터는 기본적으로 거부
- 유입되는 데이터를 받고자 하면 보안 그룹에 CIDR 형태로 블록을 추가해서 허용을 하는 인바운드 규칙을 만들어 주어야 합니다.
- 네트워크 ACL ( Access Control List) : AWS 에서 제공하는 가상의 방화벽으로 서브넷 단위로 설정
4.5) Peering
- VPC 와 VPC 끼리 연결하는데 사용하는 기술
- 처음에는 Public Access 를 주로 이용
4.6) 기본 VPC
- AWS 에서는 기본적으로 VPC를 제공
- 네트워크 범위는 172.31.0.0/16 으로 제공
- 172.31 로 만 시작하면 모두 동일한 네트워크로 간주해서 별도의 설정없이 통신이 가능
4.7) IP Masquerade
- LAN 내부의 PC 에는 전부 사설 IP 주소를 할당하고 외부로 나갈 때는 사설 IP 주소를 공인 IP 주소로 변환해서 사용
- 이 때 주소 변환을 담당하는 것을 IP 마스커레이드라고 하고 이를 NAT(Network Address Translation) 라고 합니다.
4.8) 알려진 포트
- 기본적으로 설정해서 사용하는 포트
- 메일 : 25, 110, 143
- 웹 : 80, 443
- SSH : 22
- FTP : 20, 21
- DNS : 53
- 원격 데스크 탑 : 3389
- 데이터베이스 : SQL Server(1433), Oracle(1521), MySQL 과 MariaDB(3306), Postgre SQL(5432), MongoDB(27017), Redis(6379)
- 기타 : 여러 애플리케이션이 8080 port 를 사용함.
4.9) End Point
- VPC 내부에서 외부로 접속하기 위한 연결점
- 외부에서 AWS 인스턴스에 접속하기 위해서는 AWS 인스턴스의 End Point를 알아야 합니다.
5. EC2
5.1) 개요
- 운영체제가 설치된 컴퓨터를 생성하는 IaaS
5.2) 생성
- 기본 리전 확인 - 리전은 설정되면 변경이 안됨
- EC2 관리 콘솔에서 인스턴스 시작을 선택
이름 설정
AMI 선택 : 운영체제
인스턴스 유형 : 하드웨어
키페어
- EC2 인스턴스에 외부에서 접근할 수 있는 인증 파일을 생성
- 한 번 다운로드 되면 다시는 다운로드 할 수 없음
- Mac 유저는 pem 확장자를 사용, Windows는 ppk 파일을 사용하는데 puttygen을 이용하면 pem 파일을 ppk 파일로 변환이 가능
네트워크 설정
- SSH 허용은 필수로 하고 HTTP는 선택
스토리지 설정
5.3) Windows 에서 접속
- puttygen을 이용해서 pem 파일을 load -> generator -> ppk 생성됨
5.4) EBS(Elastic Block Store)
- 영구적인 블록 스토리지 볼륨
- 기능
- 탄력적 볼륨 - 크기를 쉽게 변경 가능
- 스냅 샵 - 통째로 복사
- 암호화
5.5) ELB ( 로드 밸런서)
- ELB에서 발생하는 에러
- 504 에러가 발생하면 ELB에서 발생하는 오류
- 서버 레이어나 데이터베이스 레이어에 접속하려고 할 때 접속 시간 초과 오류
- 이런 경우에는 로드 밸런서에서 최대 접속 시간 제한을 늘리거나 애플리케이션에서 응답 시간을 줄여주어야 합니다.
5.6) Snapshop
- 어떤 시점의 서버 디스크 상태를 그대로 보존한 파일이나 디스크의 집합
5.7) Auto Scailing
- 서버의 엑세스 상태에 따라 서버를 늘리거나 줄이는 기능
- Auto Scailing 그룹을 생성하고 그룹에 인스턴스의 최소 대수와 최대 대수를 설정하면 이 범위 안에서 자동으로 인스턴스 개수가 증감
- 설정 옵션
- EC2 인스턴스가 정지된 경우 이를 분리하고 새로 시작
- 일정에 맞춰 스케일링 하는 방법
- 리소스의 임계값을 설정해서 임계값을 넘을 때 인스턴스 수를 자동적으로 증감시키는 방법
반응형
LIST