[APM] 2Tier 기반 APM(Apache, PHP, MySQL) 구축 1탄

Asher·2024년 1월 3일
0

🤔APM이란?

APM?

Apache + PHP + MySQL을 합쳐 부르는 말이다.

기술스택

  • Apache 2.4.14
  • MySQL 8.0.35
  • PHP 7.4.3
  • Ubuntu 20.04.1
  • Web-Server Instance 2대
  • DB Instance 2대
  • LoadBalancer 1대

🏗️Architecture

구축방법

참고로 제가 구축하는 환경은 Cloud 환경입니다.

Apache2 설치(Web-Server Instance 생성 후)

  • 패키지 업데이트
    sudo apt-get update

  • Apache2 설치
    sudo apt-get install apache2

  • Apache2 상태 확인
    systemctl status apache2

  • 공인 IP 접속 -> 정상 작동 확인
공인 IP:80 ex) 1.255.428.17:80

위와 똑같은 방식으로 Web-Server 1대 더 만들어 주시면 됩니다.

MySQL 설치(DB Instance 생성 후)

  • apt 패키지 업데이트
    sudo apt-get update
  • MySQL-Server 설치
    sudo apt-get install mysql-server
  • MySQL-Server 상태 확인
    systemctl status mysql

  • DB 사용자 추가 및 권한 할당

    • user 권한 검색
      use mysql;
      select host, user from user;
    • User 추가
        // 사용자 추가 및 PW 설정
        create user '[ID입력]'@'%' identified by '[PW 입력]';
        
        // 변경사항 즉시 반영
        FLUSH privileges;

    • 권한부여
    		// chan2 User에게 모든 권한 부여
    		GRANT ALL PRIVILEGES ON *.* TO 'chan2'@'%';
    
    		// 변경사항 즉시 반영
    		FLUSH privileges;

    • 외부접속 허용
      sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

      • bind-address = 0.0.0.0으로 변경
    • Mysql 재시작
      sudo service mysql restart

  • DB 스키마 생성

    • MySQL 접속 및 DB생성
      	mysql -u chan2 -p
      	create database hi;
      	show databases;

    • DB 테이블 생성
      	CREATE TABLE exam (
      	id int NOT NULL AUTO_INCREMENT,
      	name varchar(30),
      	email varchar(40),
      	num varchar(30),
      	PRIMARY KEY(id)
      	) ENGINE=InnoDB DEFAULT CHARSET=utf8;

위와 같은 방식으로 DB 1대 더 만들어 주시면 됩니다.
구축을 완료했다면, 현재

  • Web-Server 2대
  • DB 2대
    총 4대의 Instance가 생성이 되어야 합니다.

2탄에서 계속...
링크텍스트

profile
System Engineer의 발전기록

0개의 댓글

관련 채용 정보