대학교 공부 & 과제 2016~2022/시스템관리

GCP의 VM instance에서 LAMP stack 설치하고 운영 (4주차 과제)

dev_jiwon 2022. 6. 24.

https://cloud.google.com/community/tutorials/setting-up-lamp#setting-up-dns%3Fhl=ko

 

Setting Up LAMP on Compute Engine  |  Google Cloud Platform Community

[{ "type": "thumb-down", "id": "hardToUnderstand", "label":"Hard to understand" },{ "type": "thumb-down", "id": "incorrectInformationOrSampleCode", "label":"Incorrect information or sample code" },{ "type": "thumb-down", "id": "missingTheInformationSamples

cloud.google.com

 

GCP의 VM instance에서 LAMP stack  설치 및 운영 

진행순서

1. Creating a virtual machine instance

2. Deploying the LAMP stack on Compute Engine

           1) Connect to your instance

           2) Install Apache and PHP on your instance

           3) Test Apache and PHP

           4) Install MariaDB on your instance

           5) Check MariaDB server statuses

           6) Configure MariaDB

           7) Optional: Use phpMyAdmin for database administration

           8) Test phpMyAdmin

           9) Secure phpMyAdmin

3. Transferring files

4. Setting up DNS

5. Cleaning up

           1) Deleting the Project

           2) Deleting instances

 

 

1. Creating a virtual machine instance (VM 인스턴스를 만들어라.)

(1) In the Name field, enter lamp-tutorial. (lamp-tutorial-jiwon-2 이름 설정)

(2) Set Machine type to e2-micro. (머신 타입 e2-micro로 설정)

(3) Set Boot disk to Debian GNU/Linux 10 (buster). (부트 디스크 Debian GNU/Linux 10(buster)로 설정)

(4) In the Firewall section, select Allow HTTP traffic and Allow HTTPS traffic. (방화벽 영역에서, HTTP HTTPS 모두 선택

(5) Click Create. (만들기)

 

 

2. Deploying the LAMP stack on Compute Engine

1) Connect to your instance

(1) VM instance 목록에서 연결할 인스턴스의 행에 있는 SSH 버튼을 클릭한다.

(2) VM instanceIP 주소를 기록한다.

(3) 이 주소는 외부 IP 열에 표시된다.

 

2) Install Apache and PHP on your instance

(1) LAMPLinux 부분의 섹션에서 Apache PHP 설치

           sudo apt-get update

           sudo apt-get install apache2 php libapache2-mod-php

 

3) Test Apache and PHP (ApachePHP 테스트)

(1) 클라우드 콘솔의 VM 인스턴스 페이지에서 인스턴스의 외부 IP 주소를 가져온다.

(2) 브라우저에서 Apache가 실행 중인지 확인할 외부 IP 주소를 입력한다.

(3) HTTPS à HTTP로 수정한다.

(4) /var/www/html/의 기본 웹 서버 루트에 테스트 파일을 만든다. 다음 2개의 코드를 활용해라. YOUR_PHP_CODE의 부분은 너가 원하는 것으로 교체한다.

        sudo sh -c 'echo "[YOUR_PHP_CODE]" > /var/www/html/phpinfo.php'
        ex) sudo sh -c 'echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php'

 

(5) 테스트 파일을 찾아 ApachePHP가 함께 작동하는지 확인한다. 현재 Apache 환경에 대한 정보를 제공하는 표준 PHP 페이지가 표시된다.

        http://[YOUR_EXTERNAL_IP_ADDRESS]/phpinfo.php

만약, 페이지 로드 하는데 실패했다면(HTTP 404), 클라우드 콘솔에서 HTTP 트래픽이 인스턴스에 대해 허용되기 때문에, http 사용한다.

 

 

https X --> http로 수정해야함

 

 

4) Install MariaDB on your instance (instanceMariaDB 설치)

           sudo apt-get update

           sudo apt-get install mariadb-server php php-mysql

 

5) Check MariaDB server statuses (MariaDB 서버 상태 확인)

(1) MariaDB 데이터베이스 서버가 실행 중인지 확인

           sudo systemctl status mariadb

(2) 만약, maridb가 작동 중이지 않다면 다음 명령을 실행

           sudo systemctl start mariadb

(3) mysql 클라이언트를 사용하여 데이터베이스 서버에 연결 가능

           sudo mysql

 

 

6) Configure MariaDB (MariaDB 환경 설정)

(1) mysql_secure_installation 명령을 실행해서, 설치 보안을 개선한다. 이 방법을 사용하면, 루트 사용자 암호가 아직 설정되지 않는 경우에 설정, 익명 사용자 제거, 로컬 컴퓨터에 대한 루트 사용자 엑세스 제한 및 테스트 데이터베이스 제거와 같은 단계들이 수행된다.

           sudo mysql_secure_installation

 

 

7) Optional: Use phpMyAdmin for database administration (선택: phpMyAdmin 사용)

(1) phpMyAdmin을 사용해서 UI를 통해 데이터베이스 관리 가능

           sudo apt-get install php-bz2 php-gd php-curl

           # this command is only needed for Debian 10

           sudo apt-get install -t buster-backports php-twing

           sudo apt-get install phpmyadmin

 

 

(2) 설치되는 동안 phpMyAdmin 환경 설정

apache2 선택
dbconfig-common 사용하기 위해 데이터베이스 셋업 yes 선택
패스워드 설정1
패스워드 설정2

 

 

(3) 설치 후, 환경 설정 완료

php.ini 파일 찾고 vi 편집기로 파일 열기
php.ini 파일에서 ;extension=mysqli의 &lsquo;;&rsquo; 제거하기
apache2.conf 파일 찾아서 vi 편집기로 열기 (apache.conf 파일 찾는 거 아님)
apache2.conf 파일에서 라인 추가하기 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Include /etc/phpMyAdmin/apache.conf
Apache 재실행 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sudo systemctl restart apache2

 

 

8) Test phpMyAdmin

(1) phpMyAdmin 브라우저 열기 (로그인 페이지)

           http://[외부_IP_주소]/phpmyadmin

 

 

 

3. Transferring files (파일 전송)

FTP gCloud 명령을 포함하여 웹 서버를 실행하는 VM 인스턴스로 파일을 전송하는 방법

(1)   워크스테이션에서 인스턴스의 홈 디렉토리로 파일을 복사

gcloud compute sep [LOCAL_FILE_PATH] root@lamp-tutorial:/var/www/html

gcloud compute sep lamp-tutorial:/var/www/html [LOCAL_FILE_PATH]

 

 

4. Setting up DNS (DNS 세팅)

 

 

5. Cleaning up

댓글