<elb-vpc>
elb-vpc: 10.0.0.0/16
-elb-public1-subnet: 10.0.0.0/24 , ap-northeast-2a, 라우팅 테이블 : my-elb-public, IGW
-elb-public2-subnet: 10.0.1.0/24 , ap-northeast-2c, 라우팅 테이블 : my-elb-public, IGW
-elb-private-subnet: 10.0.2.0/24, ap-northeast-2a, 라우팅 테이블 : my-elb-privat, NGW(elb-public1-sunbnet연결)
1. public -1, public-2 , private 오토스케일링 그룹 생성
2. public -1, public-2 ALB 대상그룹 생성, 대상 ELBALB 어플리케이션 로드벨런서에 접속
대상 ELBALB의 오토스케일링으로 실행된 인스턴 그룹 상태 - PUBLIC ELB -1 인스턴스 2개, PUBLIC ELB -2 인스턴스 2개 HEALTH CHECK 양호
3. public 서브넷에서 private 인스턴스로의 ssh 접속 및 mariadb 생성
(private 인스턴스)
sudo -s
yum -y install mariadb105-server-utils.x86_64
yum -y install mariadb105-server.x86_64
yum -y install mariadb105.x86_64
systemctl enable maraidb
systemctl start mariadb
(mariadb 접속)
mysql -u root -p
use mysql;
grant all privileges on *.* to 'root'@'public1,2인스턴스의 ip'identified by 'password!!'; - public1,2의 인스턴스 에서 접근가능 (사용자 root)
flush privileges;
quit
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 344
Server version: 10.5.20-MariaDB MariaDB Server
-생성완료(10.0.0.77,10.0.0.139,10.0.1.153,10.0.0.219)
-설정파일에서 public1,2 의 인스턴스가 접속할 수 있도록 설정 > /etc/my.cnf.d 에 접속해 bind-adress 에 public ip 기입
사용자 root 와 원격 접속 허용 설정
mysql_secure_installation
Enter current password for root (enter for none): <ENTER>
Set root password? [Y/n] Y - 사용자 root 의 비밀번호 생성
Remove anonymous users? [Y/n] N
Disallow root login remotely? [Y/n] N - elb-public 터미널에서 원격접속이 가능해야 함
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
systemctl restart mariadb
exit
4. (elb-public1,2 인스턴스로 복귀), php 생성
-php 설치
-httpd 설정 파일에서 index.php 추가
-index.php 생성
vi /etc/httpd/conf/httpd.conf 169번째 줄 index.php 추가
168 <IfModule dir_module>
169 DirectoryIndex index.html index.php
170 </IfModule>
-vi index.php
vi index.php
<?php
echo "Maria DB 연결 테스트<br>";
$db = mysqli_connect("private subnet 인스턴스 ip(접속하고자하는 db의 ip)","root(접속허가 받은 사용자)","(비밀번호)");
if($db){
echo "connect: success<br>";
}else{
echo "connect: failure<br>";
}
$result = mysqli_query($db,'SELECT VERSION() as VERSION');
$data = mysqli_fetch_assoc($result);
echo $data['VERSION'];
?>
-수정한 퍼블릭 ip/index.php 로 확인
-모든 PUBLIC 인스턴스의 설정 완료 후 ALB의 DNS주소/index.php 로 확인