6.14

w0nyyy·2022년 6월 14일
0

교재 AWS

스냅샷

스냅샷은 반드시 볼륨이 존재해야함.

볼륨 - 스냅샷(타임머신 기능) - 볼륨 생성/이미지생성-> EC2생성/복사(백업)

IAM

AWS 서비스에 대한 접근제어를 하는 것
루트사용자에 준하는 계정을 만들 수도, 읽기만 가능한 계정을 만들 수도 있다.

RDS

완쩐 꽌리형 서비스 -> 고가용성, 자동 백업, 자동 조정 기능

AWS

default 보안그룹 3개인 이유 -> VPC개수에 따라 생김, 가급적 사용하지 않는다.

RDS

엔진 옵션 - mysql
버전 : 5.7.22

개발 단계
개발(DEV) > 테스트(QA; 품질보증) > 스테이징 > 프로덕션(Ops)
자격 증명 설정

VPC : MY-VPC 지정
퍼블릭 액세스 : 아니오 (예를 선택하면 호스트pc에서 직접 접근 가능
아니오를 선택하면 경유해서 접근해야함 - 보안 강화)

db 생성

인스턴스 생성

인스턴스 이름 : MY-VPC

DNS

알리바바 클라우드 dns - 내 도메인 네임 클릭 - add record

웹서버 ip 추가

RDS 와 웹서버 연동

웹서버 mobaxterm으로 접속

// 워드프레스 설치

    1   wget https://ko.wordpress.org/wordpress-4.8.2-ko_KR.zip
    2  sudo yum install -y httpd php php-mysqlnd php-gd php-mbstring wget unzip
    3  cd /var/www/html
    4  sudo unzip /home/ec2-user/wordpress-4.8.2-ko_KR.zip
    5  sudo mv ./wordpress/* .
    6   sudo chown -R apache:apache /var/www/*
    7  ls -al
    8  sudo systemctl restart httpd
    
    
    // html 이 우선순위가 높기때문에 삭제해줌
[ec2-user@ip-10-19-15-161 html]$ sudo rm -rf index.html

rds 에서 엔드포인트 복사

rds 생성 당시 만들었던 계정 넣기

설치 진행

RDS 접근

VPN으로 오픈스택과(프라이빗) 퍼블릭을 연결할 수 있다.

연결 - 추가구성 - 퍼블릭 액세스 가능 클릭

db 서버 퍼블릭 접근 허용

14/06/2022   11:18.30   /home/mobaxterm  mysql -h database-1.ckxsxn5j2vga.ap-northeast-2.rds.amazonaws.com -u wony2022 -p

mobaxterm에서 접근


db서버로 접근이 안됨. db 서브넷 그룹의 문제

MY-VPC 는 퍼블릭, 프라이빗 서브넷이 있는데 랜덤하게 rds가 설치되는데 프라이빗 서브넷에 설치되어서 접근이 안되었던 것

db 서브넷 그룹을 애초에 퍼블릭 서브넷으로 연결해주면 된다.

퍼블릭 서브넷으로 해준다.

-> db 서버는 퍼블릭으로 접근할 필요가 없으므로 사실 안해도 괜찮긴하다
이미 default-vpc로 적용되었기 때문에 수정이 되지않는다.
만약 퍼블릭 접근이 필요한 경우엔 위와 같이 서브넷 그룹을 public subnet으로 설정해주면 된다.


WEB02 인스턴스 생성

가용영역 2C, my-vpc, 사용자데이터 넣기

#!/bin/bash
yum install -y httpd git
systemctl enable --now httpd
cd /tmp
git clone https://github.com/hali-linux/html.git
cp -r /tmp/html/* /var/www/html/

mobaxterm으로 인스턴스 접근

보안그룹

인스턴스끼리 핑 안나가게 하기

  • sg-web 인바운드 규칙 - ICMP 규칙 삭제

보안그룹 내 통신 설정
인바운드 규칙엥서 모든 트래픽 허용에 소스를 자기 자신 보안그룹(sg-web)으로 지정하면 icmp를 열 필요 없이 같은 보안 그룹내에 있는 인스턴스끼리 따로 포트를 열 필요없이 통신이 가능하다.

로드밸런서

EC2 - 로드밸런서 - 로드밸런서 생성

WEB01, 02 가 있는 가용영역 매핑, 퍼블릭 서브넷으로 지정

대상그룹 (haproxy 당시 config 파일에 backend 그룹 모아놓은 것과 같은 개념)

포트 번호는 frontend

NLB 이기 때문에 tcp80 포트를 열어줘야한다.

웹서버들 추가

리스너에 추가

* 듀얼스택 x ipv4로 세팅

웹서버 보안그룹

알리바바 dns에서 add record 클릭

로드밸런서 생성 2


ALB보안그룹 생성


nlb alb 대상그룹은 다르다. 프로토콜이 다르기 때문. 그리고 대상그룹은 재활용 불가

리스너 - 대상그룹 생성 클릭

아까와 같이 타겟그룹 생성

리스너 세팅

로드밸런서 생성 클릭

알리바바에서 dns 변경

현재 서버 상태

이렇게 만들어주어야함

sg-alb를 통해 들어오는 인바운드만 허용하겠다.

alb 도메인을 통해서만 브라우저에 접속가능하다.

아웃바운드

다시 되돌리기

web01에 aws 키 올려주기

web01 터미널에서 web02로 접속하기

[ec2-user@ip-10-19-15-161 html]$ cd
[ec2-user@ip-10-19-15-161 ~]$ ls
aws-key.pem  wordpress-4.8.2-ko_KR.zip
[ec2-user@ip-10-19-15-161 ~]$ chmod 400 aws-key.pem
[ec2-user@ip-10-19-15-161 ~]$ ssh -i aws-key.pem ec2-user@10.19.38.215

로드밸런서

로드밸런싱 - 대상그룹 - 대상 그룹 생성

선인장 대상그룹 생성 완료

마찬가지로 TG-RABBIT으로 이름지정해서
토끼 대상그룹도 생성하기

규칙 삽입 클릭

우선 순위를 모바일을 먼저로 해준다.

크롬으로 접속하면 토끼창이 나오고, 모바일로 접속하면 선인장이 나온다.
우선순위 중요~!!!

오토스케일링

origin 인스턴스 도메인 생성.

[ec2-user@ip-10-19-38-215 ~]$ ls
food.tar
[ec2-user@ip-10-19-38-215 ~]$ sudo tar -xvf food.tar -C /var/www/html

토끼사이트 너무 가벼워서 food로 변경

단일 장애지점 (SPOF) : 하나의 서버만 운영하는 것

스냅샷이 만들어지면 시작 템플릿을 만들 수 있다

시작 템플릿 클릭 - 시작 템플릿 생성

0개의 댓글