가장 중요한 것은 키페어 와 보안그룹 (Security Group) 임을 잊지말자.
유동적인 IP 이며 Public IP 는 ON/OFF 시에 계속 변동된다.
성공적으로 접속 되었다.
[ec2-user@ip-172-31-2-213 ~]$ sudo yum -y install httpd
[ec2-user@ip-172-31-2-213 ~]$ sudo systemctl restart httpd
[ec2-user@ip-172-31-2-213 ~]$ sudo systemctl status firewalld
Unit firewalld.service could not be found.
[보안 그룹이 존재하기 때문에 방화벽은 이미 구성되어있다고 보면 된다]
[ec2-user@ip-172-31-2-213 ~]$ sudo systemctl enable httpd
[ec2-user@ip-172-31-2-213 ~]$ curl localhost
Public IP 주소로 접속
'
초기 데이터 베이스 생성 (wp DB)
CentOS7 템플릿으로 on-premise 에 wp 서버를 하나 만들고 이 wp 서버를 방금 생성한 RDS 와 연동하여 wordpress 를 구성해보시오
[root@mariadb ~]# yum -y install epel-release yum-utils
[root@mariadb ~]# yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
[root@mariadb ~]# yum-config-manager --enable remi-php73
[root@mariadb ~]# yum install -y httpd php php-mysql
[root@mariadb ~]# php -v
PHP 7.3.33 (cli) (built: Dec 19 2022 14:30:27) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.33, Copyright (c) 1998-2018 Zend Technologies
[root@mariadb ~]# yum -y install wget unzip
[root@mariadb ~]# wget https://wordpress.org/latest.zip
[root@mariadb ~]# ls
anaconda-ks.cfg latest.zip
[root@mariadb ~]# unzip latest.zip
[root@mariadb ~]# ls
anaconda-ks.cfg latest.zip wordpress
[root@mariadb ~]# mv ./wordpress/ /var/www/html/
[root@mariadb ~]# rm -rf latest.zip
[root@mariadb ~]# cd /var/www/html/
[root@mariadb html]# ls
wordpress
[root@mariadb html]# ls
wordpress
[root@mariadb html]# cd wordpress/
[root@mariadb wordpress]# mv wp-config-sample.php wp-config.php
[root@mariadb wordpress]# vi wp-config.php
<wp-config.php>
***********
// ** Database settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'wpDB' );
/** Database username */
define( 'DB_USER', 'admin' );
/** Database password */
define( 'DB_PASSWORD', '-----' );
/** Database hostname */
define( 'DB_HOST', 'database-1.--------.ap-northeast-2.rds.amazonaws.com' );
/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );
/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );
***********
[root@mariadb wordpress]# systemctl restart httpd
[root@mariadb wordpress]# systemctl enable httpd
현재 RDS 포트를 3306 에서 33306으로 변경해서 wp를 다시 연동해보기
[root@mariadb wordpress]# vi wp-config.php
접속완료 됐으면 과금 이슈로 RDS, 스냅샷 삭제는 필수이다.
리전 - 지역 혹은 대륙의 데이터 센터이며, 3~4개의 가용영역 (AZ: Availability Zone) 은 물리적으로 다른 곳에 존재한다.
Multi AZ 구성 - 고가용성 (HA)
하나의 VPC는 하나의 독자적인 네트워크 이다.
서울 리전에는 하나의 Default VPC 가 존재한다.
VPC 만들기(rapa-vpc) 10.10.0.0 /16 의 IPv4 CIDR 정의
IGW (인터넷 게이트웨이 rapa-igw) 생성 - "현관문을 만든다"
IGW 를 VPC 에 연결
퍼블릭 서브넷 생성(rapa-vpc-pub-sub1) IPv4 블록 10.10.1.0 /24
서브넷을 IGW에 연결하기 전에, EC2 인스턴스 (rapa-vpc-pub-vm)를 하나 생성한다.
인스턴스 생성 시, 생성했던 VPC, subnet 선택 그리고 퍼블릭 IP 자동할당을 선택
보안그룹(rapa-vpc-sg-web)은 VPC 에 종속되기 때문에 보안 그룹 생성 하여 인바운드 규칙 설정 (SSH, HTTP, 모든 ICMP - IPv4)
IP를 부여 받았고 CMD 창에서 ping 때려보기 - ping 안때려지고, SSH 접속도 안됨
이유는 라우팅을 안해줬기 때문임 (GNS) 생각하면 됨 VPC 만 구성한다고 해서 외부랑 통신이 되는 것은 아니다.
VPC 콘솔로 접속하여 라우팅 테이블(rapa-vpc-pub-rt) 생성
라우팅테이블
목적지 : 전체 네트워크 0.0.0.0 /24
Next Hop : IGW ( 인터넷 게이트 웨이 )
라우팅 정책을 만들었고, 퍼블릭 서브넷에 정책을 부여
자동으로 IP를 부여 받기위해 자동할당 IP 설정을 활성화 시켜준다.
CMD 창을 다시 열어 ping 때려보기 - 정상적으로 ping 이 때려지는 것을 확인
프라이빗 서브넷 생성(rapa-vpc-pri-sub1, IPv4 블록 10.10.2.0 /24) 하고 VPC 는 rapa-vpc 선택한다.
프라이빗 서브넷을 갖는 EC2 인스턴스(rapa-vpc-pri-was) 생성 rapa-vpc 선택, 프라이빗 서브넷 선택, 퍼블릭 IP 자동할당 활성화(의미 없음), 보안그룹(rapa-vpc-sg-was)생성
보안그룹(rapa-vpc-sg-was)의 인바운드 규칙은 SSH(22),사용자지정 TCP(8080), 모든 ICMP - IPv4