LAMP 사용 가이드
  • PDF

LAMP 사용 가이드

  • PDF

Classic 환경에서 이용 가능합니다.

사용하기 전에

Q. LAMP 상품은 무엇인가요?

  • LAMP 상품은 "Linux + Apache + MySQL + PHP" 설치 및 프로세스를 원클릭으로 시작할 수 있는 설치형 서비스 상품입니다.
  • LAMP 상품은 리눅스를 운영체제로 사용하면서, Apache Web Server/MySQL(MariaDB/PHP)를 활용한 Web Application Stack 서비스입니다.
  • LAMP 상품은 안정성이 우수한 네이버 클라우드 플랫폼의 Compute 인프라 서비스에 자동으로 구성되며, 몇 단계의 설정을 통해 즉시 서비스에 투입할 수 있습니다.

Q. LAMP 상품을 사용하면 어떤 이점이 있나요?

  • 네이버 클라우드 플랫폼의 인프라 서비스를 활용하여 안정성 있는 Web 서비스 개발 플랫폼을 제공합니다.
  • 서버 이미지와 스펙을 선택하여 LAMP Stack 서비스를 자동으로 설치하고, 서비스를 시작할 수 있습니다.

Q. LAMP 서버는 어떻게 생성하나요?

  • 콘솔 > Compute > Server 메뉴에서 LAMP 서버 이미지를 선택하여 생성할 수 있습니다.
  • 원하는 사양의 서버를 생성하고 필요에 따라 스토리지를 추가합니다.
  • 월 요금제와 시간 요금제로 청구되며, 서버를 생성한 후 접속 환경을 설정하여 이용할 수 있습니다.
  • LAMP 웹 서비스를 이용하기 위해서 공인 IP 주소를 신청하고 ACG 설정에서 80 포트를 추가해야 합니다.(Port는 변경 가능합니다.)
  • 콘솔에 접속한 후 다음의 단계를 통해 쉽게 서버를 생성할 수 있습니다.

Q. LAMP 상품에 설치되는 오픈소스는 어떤 것들이 있나요?

  • 2018년 10월 출시기준으로 아래와 같이 제공됩니다.
    • Apache
    • MySQL DB
    • PHP

Q. LAMP Web 서비스에 접속할 수 없습니다.

  • LAMP 웹 서비스를 사용하기 위해서는 공인 IP 주소를 신청하여 서버에 할당해야 하며, ACG에 80 포트가 추가되어 있어야 합니다.
  • 공인 IP 주소와 ACG를 확인한 후에도 접속되지 않는 경우 LAMP 프로세스가 정지된 상태일 수 있으니, 터미널에서 재시작 명령어를 실행하여 프로세스를 다시 시작하십시오.

Q. LAMP 상품은 어느 디렉터리에 설치되나요?

  • /root/lamp 디렉터리에 다운로드됩니다.
  • LAMP 상품의 Web Service Root Directory는 /ncp/data/www입니다.
  • 데이터 유실을 방지하기 위해 설치 경로를 백업해 두는 것을 권장합니다.

Q. LAMP 웹 서비스를 위해 주의할 사항이 있나요?

  • LAMP Web 서비스는 기본적으로 HTTP 프로토콜 기반으로 설정되어 있습니다.
  • LAMP Web 서비스를 보다 안정적이고 보안이 강화된 방법으로 사용을 원하실 경우 HTTPS 프로토콜로 사용하시기 바랍니다.
  • SSL 인증서 및 Web Service Domain 생성 후 사용하시면 됩니다.

LAMP 상품 소개

LAMP 상품은 "Linux + Apache + MySQL + PHP" 설치 및 프로세스를 원클릭으로 시작할 수 있는 설치형 서비스 상품으로, 리눅스를 운영체제로 사용하면서 Apache Web Server/MySQL(MariaDB/PHP)를 활용한 Web Application Stack 서비스입니다.

안정성이 우수한 네이버 클라우드 플랫폼의 Compute 인프라 서비스에 자동으로 구성되며, 몇 단계의 설정을 통해 즉시 서비스에 투입할 수 있습니다.

LAMP 서버 생성

LAMP 서버 생성 과정은 아래와 같습니다.
아래의 서버 생성 및 서비스 접속과정은 네이버 클라우드 플랫폼의 Application 설치형 상품과 유사한 방법으로 진행됩니다.

Step 1. 콘솔 접속

콘솔에 접속해서 Compute > Server 메뉴를 선택합니다.

② 서버를 생성하려면 [서버 생성] 버튼을 클릭합니다.

Step 2. 서버 이미지 선택

LAMP 서버 이미지를 선택해서 서버를 생성합니다.

① 이미지타입 Application, Application 이미지타입 LAMP를 선택합니다.

② 팝업 창의 안내(LAMP 사용을 위한 공인 IP 주소, ACG 신청, 초기 비밀번호 확인)를 확인합니다.

[확인] 버튼을 클릭하면 팝업창이 닫히면서 서버 정보 입력 화면으로 이동합니다.

Step 3. 서버 설정

스토리지 종류, 서버 타입, 요금제, Zone을 선택하고, 서버 이름을 입력합니다.

① Zone을 선택합니다.

  • LAMP 서비스는 모든 Region에서 지원되고 있습니다.

② 부팅 스토리지로 사용할 스토리지 종류를 선택합니다.

③ 원하는 서버 타입을 선택합니다.

  • 일부 서버 스펙은 부팅 디스크 타입에 따라 지원되지 않을 수 있습니다.
  • 사용 용량에 따라 서버 타입 중 하나를 선택하세요.

④ 요금제는 월요금제 또는 시간 요금제 중 선택할 수 있습니다.

⑤ 서버 이름을 입력합니다.

  • 고객이 서버를 구별하기 위한 명칭으로, 중복해서 사용할 수 없습니다.

⑥ 이외 필요한 정보를 입력합니다.

[다음] 버튼을 클릭합니다.

Step 4. 인증키 설정

보유하고 있는 인증키가 있는 경우 보유하고 있는 인증키 이용을 선택하고, 없는 경우 아래의 절차대로 새로운 인증키를 생성합니다.

새로운 인증키 생성을 선택합니다.

② 인증키 이름을 입력합니다.

[인증키 생성 및 저장] 버튼을 클릭하여 로컬 PC에 인증키 파일을 저장합니다.

  • 새로운 인증키를 발급받습니다.
  • 저장 후 인증키는 고객의 PC 안전한 위치에 보관해 주십시오.
  • 인증키는 최초의 관리자 비밀번호를 가져올 때 이용됩니다.

[다음] 버튼을 클릭합니다.

Step 5. ACG 설정

보유하고 있는 ACG를 이용하거나 신규 ACG를 생성하여 방화벽을 설정할 수 있습니다.

보유하고 있는 ACG 이용

보유하고 있는 ACG를 이용하여 방화벽을 설정하는 방법은 다음과 같습니다.

① ACG는 필수로 선택해야 하며, 기본으로 제공하는 ‘ncloud-default-acg’를 포함하여 보유하고 있는 ACG 중에서 하나를 선택합니다.

  • 보유하고 있는 ACG는 최대 5개까지 선택할 수 있습니다.
  • 필수로 ACG를 선택해야 [다음] 버튼이 활성화되어 설정을 진행할 수 있습니다.

② 보유하고 있는 ACG 외에 신규 ACG를 생성하여 설정하고 싶다면 신규 ACG 생성을 선택합니다.

[다음] 버튼을 클릭합니다.

새로 ACG 생성

새로 ACG를 생성하여 방화벽을 설정하는 방법은 다음과 같습니다.

① 신규 ACG 생성에서 [ACG 생성] 버튼을 클릭합니다.

② ACG 이름을 입력합니다.

③ ACG 설정에서 프로토콜, 접근 소스, 허용 포트를 입력하고 생성합니다.

  • 프로토콜: TCP, UDP, ICMP에서 선택
  • 접근 소스: IP 주소 또는 ACG명 입력
  • 허용 포트: 단일 포트 또는 범위 지정
  • 터미널 접속을 위해서는 접속하려는 서버의 ACG에 SSH 'TCP/22'에 대한 규칙이 설정되어 있어야 하고,
    규칙을 추가하려면 프로토콜, 접근 소스, 허용 포트를 기재하고 [추가] 버튼을 클릭합니다.

④ 서비스 포트가 모두 추가된 경우 [생성] 버튼을 클릭합니다.

Step 6. 최종 확인

설정한 내용을 최종 확인합니다.

① 서버 이미지, 서버, 인증키, ACG가 정상적으로 설정되었는지 확인합니다.

② 최종 확인 후에는 [서버 생성] 버튼을 클릭합니다.

  • 서버가 생성되기까지는 수 분에서 수십 분이 소요됩니다.

서버 목록에서 확인

생성한 서버를 목록에서 확인합니다.

① 생성한 서버가 목록에 표시됩니다.

② 서버가 생성되고 LAMP 패키지가 설치 완료되어 서버 상태가 운영중이 될 때까지 대기합니다.

접속 환경 설정

공인 IP 주소 사용 신청

LAMP 상품을 사용하려면 반드시 공인 IP 주소를 이용해서 접속해야 하며, 공인 IP 주소 사용에 대한 요금이 별도로 부과됩니다.

Server > PUBLIC IP 메뉴를 선택합니다. 공인 IP 주소를 할당받으려면 [공인 IP 신청] 버튼을 클릭합니다.

적용 서버 선택에서 공인 IP 주소를 할당할 LAMP 서버를 선택합니다.

[확인] 버튼을 클릭합니다. 적용 서버 이름을 확인하고 다시 [확인] 버튼을 클릭합니다.

포트 포워딩 설정

터미널 프로그램(PuTTY 등)으로 서버에 접속하려면 포트 포워딩을 설정해야 합니다.

Server > Server 메뉴를 선택합니다.

② 서버에 접속하려면 서버를 선택한 후 상단의 포트 포워딩 설정을 클릭합니다.

③ 포트 포워딩 설정 화면에서 외부 포트 번호를 설정합니다. 외부 포트 번호의 입력 범위는 1024~65,534로, 서버 접속을 위한 기능 외에 서비스 용도로 사용할 수 없습니다.(내부 포트 번호는 22로 정해져 있습니다.)

[추가] 버튼을 클릭하면 설정 내역이 하단에 추가되며 [수정], [삭제] 버튼을 클릭하여 설정 내역을 수정, 삭제할 수 있습니다.

[적용] 버튼을 클릭하면 설정한 외부 포트로 터미널 프로그램을 이용하여 SSH 접속을 할 수 있습니다.

ACG 생성

ACG에 터미널 접속 SSH('TCP/22') 및 LAMP 서비스('TCP/UDP' 설정) 규칙을 추가합니다.
서버 생성 시 규칙을 이미 추가한 경우는 이 단계의 ACG 설정 작업을 수행할 필요가 없습니다.

① 왼쪽의 메뉴에서 Server > ACG 메뉴를 선택합니다.

② 서버 생성 시 선택한 ACG를 선택하고 상단의 [ACG 생성] 버튼을 클릭합니다.

③ ACG 이름을 입력합니다.

④ 설정이 완료되면 [생성] 버튼을 클릭합니다.

ACG 설정

① 생성한 ACG를 선택합니다.

② 상단 [ACG 설정] 버튼을 클릭합니다.

③ ACG 규칙 설정에서 프로토콜, 접근 소스, 허용 포트를 입력하고 생성합니다.

  • 프로토콜: TCP, UDP, ICMP에서 선택

  • 접근 소스: IP 주소 또는 ACG명 입력

  • 허용 포트: 단일 포트 또는 범위 지정

  • 터미널 접속을 위해서는 접속하려는 서버의 ACG에 SSH 'TCP/22'에 대한 규칙이 설정되어 있어야 합니다.

  • 규칙을 추가하려면 프로토콜, 접근 소스, 허용 포트를 기재하고 추가를 클릭합니다.

④ 설정이 완료되면 [적용] 버튼을 클릭합니다.

서버 관리자 비밀번호 확인

터미널 프로그램(PuTTY 등)으로 서버에 접속하려면 관리자 비밀번호를 알아야 합니다.

Server > Server 메뉴를 선택합니다.

② 해당 서버를 선택하고, 서버 관리 및 설정 변경에서 관리자 비밀번호 확인을 선택합니다.

마우스로 파일을 끌고 오거나 여기를 클릭하세요 버튼을 클릭해 서버 생성 시 개인 PC에 저장한 인증키 파일(.pem)을 첨부합니다.

④ 첨부 후 [비밀번호 확인] 버튼을 클릭하면 터미널 프로그램으로 최초 서버 접속 시 사용할 비밀번호를 얻을 수 있습니다.

  • 서버에 접속 후 관리자가 기억할 수 있는 비밀번호로 변경하여 사용하는 것을 권장합니다.

터미널 접속

터미널 프로그램(PuTTY 등)으로 서버에 접속해서 LAMP 프로세스를 관리할 수 있습니다.

터미널 프로그램으로 서버 접속

① 터미널 프로그램(PuTTY 등)을 실행합니다.

② 서버 리스트 또는 내용 보기에서 확인한 '서버 접속용 공인 IP'와 '외부 포트'의 값을 입력하고 Open 버튼을 클릭하면 서버에 접속됩니다.

  • 서버 접속용 공인 IP 확인: 콘솔의 Server > Server 메뉴에서 서버 선택 후 상세정보에서 포트 포워딩 정보서버 접속용 공인 IP 값 확인
  • 외부 포트 번호 확인: 콘솔의 Server > Server 메뉴에서 서버 선택 후 상세정보에서 포트 포워딩 정보외부 포트 값 확인

③ 사용자 정보 및 암호를 입력하고 로그인합니다.

  • login as: root
  • password: 위에서 확인한 관리자 비밀번호

④ 로그인 후에는 root 계정의 비밀번호를 기억할 수 있는 비밀번호로 변경할 것을 권장합니다.
passwd root 명령어를 입력한 후 새 비밀번호를 입력합니다.

LAMP 서비스 빠르게 시작하기/중지하기/확인하기

LAMP 서버 이미지 생성 시 자동으로 LAMP Components 서비스가 설치 및 시작됩니다.
아래와 같이 수동으로 LAMP 서비스 컴포넌트의 시작 및 중지를 실행할 수 있습니다.

  • LAMP 서비스 전체 시작하기 및 중지하기

    shell> LAMP_HOME=/root/lamp
    shell> $LAMP_HOME/lamp_restart.sh
    

lamp-1-1-15_ko

  • LAMP 서비스 설치 상태 확인하기

    shell> LAMP_HOME=/root/lamp
    shell> $LAMP_HOME/lamp_info.sh
    

lamp-1-1-16_ko

  • httpd/apache2 service 중지하기 및 시작하기

    shell> # httpd service stop for CentOS 6.6
    shell> service httpd stop
    shell> # httpd service stop for CentOS 7.3
    shell> systemctl stop httpd
    shell> # apache2 service stop for Ubuntu 16.04
    shell> systemctl stop apache2
    shell> # httpd service start for CentOS 6.6
    shell> service httpd start
    shell> # httpd service start for CentOS 7.3
    shell> systemctl start httpd
    shell> # apache2 service start for Ubuntu 16.04
    shell> systemctl start apache2
    
  • httpd/apache2 service 프로세스 확인하기

    shell> # Process Check for CentOS 7.3/6.6
    shell> ps -ef | grep httpd
    shell> root      8116     1  0 16:22 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
    shell> apache    8117  8116  0 16:22 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
    shell> apache    8118  8116  0 16:22 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
    shell> apache    8119  8116  0 16:22 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
    shell> apache    8120  8116  0 16:22 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
    shell> apache    8121  8116  0 16:22 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
    shell> # Process Check for Ubuntu 16.04
    shell> ps -ef | grep apache2
    shell> root      1527     1  0 14:05 ?        00:00:00 /usr/sbin/apache2 -k start
    shell> www-data  1600  1527  0 14:05 ?        00:00:00 /usr/sbin/apache2 -k start
    shell> www-data  1601  1527  0 14:05 ?        00:00:00 /usr/sbin/apache2 -k start
    shell> www-data  1602  1527  0 14:05 ?        00:00:00 /usr/sbin/apache2 -k start
    shell> www-data  1603  1527  0 14:05 ?        00:00:00 /usr/sbin/apache2 -k start
    shell> www-data  1604  1527  0 14:05 ?        00:00:00 /usr/sbin/apache2 -k start
    shell> www-data  1605  1527  0 14:05 ?        00:00:00 /usr/sbin/apache2 -k start
    shell> www-data  1606  1527  0 14:05 ?        00:00:00 /usr/sbin/apache2 -k start
    shell> www-data  1607  1527  0 14:05 ?        00:00:00 /usr/sbin/apache2 -k start
    
  • mysqld/mysql service 중지하기 및 시작하기

    shell> # mysqld service stop for CentOS 6.6
    shell> service mysqld stop
    shell> # mysqld service stop for CentOS 7.3
    shell> systemctl stop mysqld
    shell> # mysql service stop for Ubuntu 16.04
    shell> systemctl stop mysql
    shell> # mysqld service start for CentOS 6.6
    shell> service mysqld start
    shell> # mysqld service start for CentOS 7.3
    shell> systemctl start mysqld
    shell> # mysql service start for Ubuntu 16.04
    shell> systemctl start mysql
    
  • mysqld/mysql service 프로세스 확인하기

    shell> # mysqld service stop for CentOS 6.6/7.4, Ubuntu 16.04
    shell> ps -ef | grep mysqld
    shell> mysql     8152     1  0 16:22 ?        00:00:00 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
    shell> mysql     8406  8152  0 16:22 ?        00:00:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=wp-1.err --pid-file=wp-1.pid --socket=/var/lib/mysql/mysql.sock --port=3306
    

LAMP Web 접속하기

LAMP Components 설치 및 시작이 완료되면 아래와 같은 방법으로 접속 및 사용이 가능합니다.

  • LAMP Web 접속: http://{Your Public IP}
  • 아래와 같이 네이버 클라우드 플랫폼 LAMP 상품의 Index Page가 실행된다면 LAMP 상품의 설치가 완료된 것입니다.

lamp-1-1-22_ko

LAMP PHP Information 확인하기

LAMP Components 중 PHP 및 PHP 모듈이 정상적으로 설치되었는지 아래와 같이 실행하여 확인이 가능합니다.

/ncp/data/www/phpinfo.php 파일을 생성합니다.
명령어 실행 또는 화면에 실행 시 권한 오류가 발생한다면, Linux OS 권한 변경을 실행합니다.

shell> echo "<?php phpinfo(); ?>" > /ncp/data/www/phpinfo.php

② 웹 브라우저를 통해 아래와 같이 phpinfo.php 파일의 URL을 입력합니다.

http://{Your Public IP}/phpinfo.php

③ 아래와 같이 네이버 클라우드 플랫폼 LAMP 상품의 PHP Information Page가 실행되고, PHP 관련 정보를 확인하실 수 있습니다.

lamp-1-1-18_ko

④ PHP Information의 경우 시스템 및 Application의 주요 정보를 담고 있기 때문에, 정보 확인 후 해당 파일의 삭제를 권고합니다.

shell> rm /ncp/data/www/phpinfo.php

LAMP 설치 디렉터리 확인하기

LAMP Components 설치 및 서비스 시작이 완료되면 다음과 같은 디렉터리에서 확인할 수 있습니다.

  • LAMP Components Root: /root/lamp
    shell> # LAMP 컴포넌트 설치 디렉터리 정보 확인
    shell> ls /root/lamp
    shell> conf(D)  lamp_info.sh  lamp_restart.sh  uninstall_lamp.sh
  • WEB Documents Root: /ncp/data/www
    shell> # LAMP Web Root 디렉터리 정보 확인
    shell> ls /ncp/data/www
    shell> index.html  ncp.jquery.js  phpinfo.php  phpmyadmin(D)
  • LAMP Installation Log: /var/log/lamp/lamp_install.log
    shell> # LAMP Installation Log 확인
    shell> cat /var/log/lamp/lamp_install.log
    shell> [Info] Starting Installation NCP LAMP Product...
    shell> [Info] Starting pre-configuration install products...
    shell> [Info] Downloading NCP LAMP Configuration File...
    shell> [Info] NCP LAMP Configuration file download completed.
    shell> [Info] Initializing MySQL root password...
    shell> [Info] Initialized MySQL root password...
    shell> [Info] Removing already installed products...

    ...(이하 생략)

LAMP MySQL Database 사용 주의사항

LAMP Components 설치 시 MySQL Database의 초기 비밀번호는 사용자가 생성한 서버의 {Hostname}으로 설정됩니다.
LAMP 설치 후 MySQL Database의 root password 변경 후 서비스를 사용하실 것을 권고드립니다.

https://mariadb.com/kb/en/mysql_secure_installation를 참고하면 쉽게 보안 설정을 완료할 수 있습니다.

  • MySQL Secure Installation 사용: mysql_secure_installation
    shell> mysql_secure_installation
    shell> NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
    shell>   SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
    shell>
    shell> In order to log into MySQL to secure it, we will need the current
    shell> password for the root user.  If you have just installed MySQL, and
    shell> you haven not set the root password yet, the password will be blank,
    shell> so you should just press enter here.

    (이하 생략 ...)

연관 정보 바로가기

네이버 클라우드 플랫폼 LAMP 상품에서 사용되는 소프트웨어에 대한 자세한 내용은 다음 웹페이지를 확인하십시오.


이 글이 도움이 되었나요?