APM 구성 방법
가상서버에 APM를 구성하는 방법은 아래와 같습니다.
1. APM이란?
APM은 Apache + PHP + MySQL/MariaDB의 조합으로, 이 3가지가 연동되어 운영되도록 만든 환경을 APM이라고 합니다.
APM의 동작 원리는 아래와 같습니다.

① 클라이언트가 서버에 웹 페이지의 정보를 요청
② Apache는 해당되는 정보를 주기 위해 PHP에게 스크립트 실행을 요청
③ PHP는 MySQL/MariaDB에 쿼리 질의를 요청
④ MySQL/MariaDB은 질의에 대한 결과 데이터를 PHP에게 응답
⑤ PHP는 받은 결과 데이터와 스크립트 실행 결과를 HTML 코드로 Apahce에게 응답
⑥ Aapche는 받은 HTML 코드를 클라이언트의 웹 브라우저에 응답
이러한 과정을 거쳐 서버는 클라이언트에 정보를 주게 됩니다.
즉, Apache는 웹 서버, PHP는 해석기(웹 프로그래밍 언어), MySQL/MariaDB은 데이터베이스 서버의 역할을 합니다.
이제 APM을 설치해보도록 하겠습니다.
2. Apache 설치하기
(1) 패키지 업데이트하기
등록된 저장소 내 패키지 정보를 최신으로 업데이트합니다.
(2) Apache 설치하기
설치할 Apache 버전을 확인한 후, 설치를 진행합니다.
(3) Apache 설치 확인하기
설치가 완료되었다면 Apahce 서비스를 구동한 후, active 상태인지 확인합니다.
그리고 http://가상서버의 공인 IP로 접속하여 잘 설치되었는지 확인합니다.


3. PHP 설치하기
(1) PHP 설치하기
설치할 PHP 버전을 확인한 후, 설치를 진행합니다.
(2) PHP 설치 확인하기
설치가 완료되었다면 /var/www/html 디렉터리에 index.php 파일을 생성하여 phpinfo 페이지를 출력할 수 있도록 합니다.
그리고 http://가상서버의 공인 IP/index.php로 접속하여 잘 설치되었는지 확인합니다.


참고사항
설치가 확인되었다면 생성한 index.php 파일 삭제를 권장드립니다.
(3) PHP 모듈 추가하기
설치 가능한 PHP 모듈을 검색한 후, 추가로 필요한 모듈을 설치할 수 있습니다.
여기서는 MySQL/MariaDB와 연동하기 위해 필요한 php-mysqlnd 모듈을 설치했습니다.
4. MySQL 설치하기
(1) MySQL 설치하기
복사한 링크를 통해 MySQL Repository를 설치한 후, MySQL 설치를 진행합니다.
ubuntu의 경우, Package Configuration 화면을 통해 비밀번호를 설정합니다.
(2) MySQL 설치 확인하기
설치가 완료되었다면 MySQL 서비스를 구동한 후, active 상태인지 확인합니다.
그리고 MySQL에 접속해봅니다.
root 계정의 임시 비밀번호를 확인한 후, MySQL에 접속합니다.
설정한 비밀번호를 입력하여 MySQL에 접속합니다.
(3) MySQL 기본 보안 설정하기
mysql_secure_installation을 통해 root 비밀번호 변경과 기본 보안 설정을 합니다.
(4) PHP와 연동 확인하기
새로 설정한 비밀번호로 MySQL에 접속한 후, test 데이터베이스와 test 사용자를 생성합니다.
그리고 PHP가 test 데이터베이스에 잘 접속하는지 확인하는 test.php 파일을 /var/www/html 디렉터리에 생성합니다.
http://가상서버의 공인 IP/test.php로 접속하여 PHP와 MySQL이 잘 연동되는지 확인합니다.

주의사항

centos 7의 경우 php를 설치하면 5.x 버전으로 설치됩니다.
하지만 mysql 8.x를 사용하기 위해서는 php 7.x 이상으로 설치되어야 하기 때문에 버전을 업그레이드해야 합니다.
따라서 위와 같은 에러가 발생하였을 경우, 기존에 설치된 php 5.4를 삭제하고 다시 설치하면 됩니다.
여기서는 php 7.4로 재설치했습니다.
5. MariaDB 설치하기
(1) MariaDB 설치하기
Download MariaDB Server에 접속하여 설치할 OS 버전과 원하는 MariaDB 버전을 선택한 후, 리포지토리 또는 명령어를 복사합니다.


복사한 리포지토리를 통해 Mariadb.repo를 생성하거나 복사한 명령어를 실행한 후, 설치를 진행합니다.
(2) MariaDB 설치 확인하기
설치가 완료되었다면 MariaDB 서비스를 구동한 후, active 상태인지 확인합니다.
그리고 MariaDB에 접속해봅니다.
초기에는 비밀번호가 없기 때문에 비밀번호 없이 MariaDB에 접속합니다.
초기에는 비밀번호가 없기 때문에 비밀번호 없이 root 권한으로 MariaDB에 접속합니다.
(3) MariaDB 기본 보안 설정하기
mysql_secure_installation을 통해 root 비밀번호 설정과 기본 보안 설정을 합니다.
(4) PHP와 연동 확인하기
새로 설정한 비밀번호로 MariaDB에 접속한 후, test 데이터베이스와 test 사용자를 생성합니다.
그리고 PHP가 test 데이터베이스에 잘 접속하는지 확인하는 test.php 파일을 /var/www/html 디렉터리에 생성합니다.
http://가상서버의 공인 IP/test.php로 접속하여 PHP와 MariaDB가 잘 연동되는지 확인합니다.

참고사항
MySQL/MariaDB 접속 시, 접속한 IP에 대한 DNS 질의를 하여 호스트 이름을 확인하는 과정을 거칩니다.
하지만 DNS 응답이 느리거나 장애가 발생할 경우, MySQL/MariaDB 접속이 지연되는 현상이 발생할 수 있기 때문에
아래와 같이 skip-name-resolve 옵션 사용하여, DNS 질의를 하지 않고 향상된 속도로 접속할 수 있습니다.
my.cnf 설정 파일에 skip-name-resolve 옵션을 추가합니다.
MySQL 또는 MariaDB 서비스를 재시작한 후, 설정을 확인합니다.
my.cnf 설정 파일에 skip-name-resolve 옵션을 추가합니다.
MySQL 또는 MariaDB 서비스를 재시작한 후, 설정을 확인합니다.
Last updated



