이전 모듈에서는 Drupal 사이트의 여러 가지 구성을 설정했습니다. RDS 데이터베이스 인스턴스와 EC2 서버 인스턴스를 생성했습니다. EC2 인스턴스에서 네트워크 액세스를 허용하기 위한 RDS 인스턴스를 구성했습니다. 마지막으로는 EC2 인스턴스에 SSH를 적용하고 Drupal에서 사용할 데이터베이스 사용자를 구성하는 방법을 배웠습니다.

이 모듈에서는 Drupal 설치를 활성화하기 위해 이를 설정합니다. 아래의 단계에서는 웹 서버를 구성하고, Drupal 코드를 다운로드하고, Drupal 설정을 구성합니다. 이 모듈이 끝날 무렵에는 웹 브라우저에서 액세스할 수 있는 활성화된 Drupal 사이트가 생성됩니다.

이 모듈의 단계를 완료하려면 EC2 인스턴스에 SSH를 적용해야 합니다. SSH를 통해 EC2 인스턴스에 다시 연결해야 할 경우, 이전 모듈의 단계를 다시 살펴보십시오.

모듈 소요 시간: 15분


  • 1단계: Apache 웹 서버 설치

    Drupal을 실행하려면 EC2 인스턴스에서 웹 서버를 실행해야 합니다. 웹 서버는 HTTP 요청을 수신하고, 그 요청을 처리하고, 사용자에게 응답을 반환하는 프로세스입니다.

    오픈 소스 Apache 웹 서버는 Drupal에 사용되는 가장 인기 있는 웹 서버입니다.

    EC2 인스턴스에 Apache를 설치하려면 터미널에서 다음 명령을 실행합니다.

    sudo yum install -y httpd

    필요한 패키지를 설치 중이라는 터미널 출력이 표시됩니다.

    Apache 구성 파일에서 설정을 변경해야 합니다. 다음 명령을 실행하여 Nano로 파일을 엽니다.

    sudo nano /etc/httpd/conf/httpd.conf

    파일에는 1/3 정도 위치에 다음과 같은 블록이 있습니다.

    # Further relax access to the default document root:
    <Directory "/var/www/html">
        #
        # Possible values for the Options directive are "None", "All",
        # or any combination of:
        #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
        #
        # Note that "MultiViews" must be named *explicitly* --- "Options All"
        # doesn't give it to you.
        #
        # The Options directive is both complicated and important.  Please see
        # http://httpd.apache.org/docs/2.4/mod/core.html#options
        # for more information.
        #
        Options Indexes FollowSymLinks
    
        #
        # AllowOverride controls what directives may be placed in .htaccess files.
        # It can be "All", "None", or any combination of the keywords:
        #   Options FileInfo AuthConfig Limit
        #
        AllowOverride None
    
        #
        # Controls who can get stuff from this server.
        #
        Require all granted
    </Directory>

    이 블록에서 “AllowOverride None”“AllowOverride All”로 변경합니다.

    CTRL + O를 입력하고 CTRL + X를 입력하면 저장하고 나노를 종료할 수 있습니다. 

    Apache 웹 서버를 시작하려면 터미널에서 다음의 명령을 실행하십시오.

    sudo service httpd start

    브라우저에서 EC2 인스턴스의 공개 DNS를 방문하면 Apache 웹 서버가 작동하고 있고 보안 그룹이 올바르게 구성된 것을 확인할 수 있습니다.

    [EC2 인스턴스] 페이지로 이동해서 인스턴스를 찾습니다. 아래의 [설명]에서 인스턴스의 공개 DNS(IPv4)를 찾습니다.

    모듈4-1a단계

    (확대하려면 클릭)

    모듈4-1a단계

    이 값을 웹 브라우저에 입력하면 Apache 테스트 페이지가 표시됩니다.

    모듈4-1b단계

    (확대하려면 클릭)

    모듈4-1b단계

    Apache 웹 서버가 실행되고 있으므로 Drupal을 다운로드하고 구성해야 합니다.

  • 2단계: Drupal 구성

    이 단계에서는 Drupal 소프트웨어를 설치하고 구성을 설정합니다.

    먼저 다음의 명령을 실행하여 PHP와 여러 가지 PHP 종속성을 설치합니다.

    sudo amazon-linux-extras install -y php7.2
    sudo yum install -y php-dom php-gd php-simplexml php-xml php-opcache php-mbstring
    

    PostgreSQL를 데이터베이스 엔진으로 설정했을 경우, 다음의 명령을 실행하여 PHP PostgreSQL 라이브러리를 설치합니다.

    sudo yum install -y php-pgsql
    

    다음으로는 터미널에서 다음의 명령을 실행하여 Drupal 소프트웨어를 다운로드하고 압축을 해제합니다.

    wget https://www.drupal.org/download-latest/tar.gz
    tar -xzf tar.gz
    mv drupal-* drupal
    

    디렉터리 내용을 확인하는 “ls” 명령을 실행하면 tar 파일과 압축이 해제된 내용이 들어 있는 drupal이라는 디렉터리가 보입니다.

    $ ls
    drupal  tar.gz

    drupal 디렉터리로 들어가서 다음의 명령을 사용하여 Apache 루트로 파일을 복사합니다.

    cd drupal
    sudo rsync -avz . /var/www/html
    sudo chown -R apache:apache /var/www/html
    

    그런 다음, Apache 서비스를 다시 시작합니다.

    sudo service httpd restart

    Drupal 사이트가 거의 준비되었습니다. 다음 단계에서는 Drupal 사이트 구성 마법사를 사용하여 사이트를 생성합니다.

  • 3단계: Drupal 사이트 설정

    이제 사이트를 생성합니다. 다시 한번 [EC2 인스턴스] 페이지로 이동해서 인스턴스를 찾습니다. 아래의 [설명]에서 인스턴스의 공개 DNS(IPv4)를 찾습니다.

    모듈4-3a단계

    (확대하려면 클릭)

    모듈4-3a단계

    이 값을 웹 브라우저에 입력합니다.

    참고: Google Chrome의 특정 구성에서는 Drupal을 설정하는 과정에 문제가 발생할 수 있습니다. 문제가 발생할 경우, 다른 웹 브라우저를 사용하여 Drupal을 설정하십시오.

    Drupal 설정 마법사가 시작되어야 합니다.

    원하는 언어를 선택하고 [저장 및 계속]을 클릭합니다.

    [프로필 선택] 화면에서 [표준] 설치 프로필을 선택하고 [저장 및 계속]을 클릭합니다.

    모듈4-3b단계

    (확대하려면 클릭)

    모듈4-3b단계

    이제 데이터베이스를 설정해야 합니다. Amazon RDS에서 선택한 데이터베이스 엔진에 해당하는 데이터베이스 유형을 선택합니다. 선택한 MySQL에서 MySQL, MariaDB, Percona Server 또는 그와 동등한 옵션을 선택합니다. PostgreSQL을 선택했다면 PostgreSQL 옵션을 선택합니다.

    RDS 콘솔에서 RDS 데이터베이스 엔드포인트를 찾습니다.

    모듈4-3c단계

    (확대하려면 클릭)

    모듈4-3c단계

    Drupal 설정 마법사에서 데이터베이스 이름, 데이터베이스 사용자, 데이터베이스 암호에 대한 구성을 입력합니다. 그런 다음, [고급 옵션] 화살표를 클릭하여 옵션을 펼칩니다. [호스트] 필드에 RDS 엔드포인트의 값을 입력합니다.

    모듈4-3d단계

    (확대하려면 클릭)

    모듈4-3d단계

    [저장 및 계속]을 클릭합니다. Drupal이 데이터베이스 테이블을 생성하고 필요한 모듈을 설치하는 데 다소 시간이 걸립니다.

    모듈4-3e단계

    (확대하려면 클릭)

    모듈4-3e단계

    설치가 완료되면 사이트 구성을 입력합니다.

    모듈4-3f단계

    (확대하려면 클릭)

    모듈4-3f단계

    구성을 입력하고 [저장 및 계속]을 눌러서 Drupal 사이트 설정을 완료합니다.

    성공 메시지가 나타나고 Drupal 사이트가 시작되어야 합니다.

    모듈4-3g단계

    (확대하려면 클릭)

    모듈4-3f단계

    축하합니다! Amazon RDS 데이터베이스를 사용하여 Amazon EC2에 Drupal 웹사이트를 구성했습니다. 이 설정을 사용하면 적은 유지관리로 규모를 조정할 수 있어서 개발자가 가장 중요한 작업에 집중할 수 있습니다.

    다음 모듈에서는 이 모듈에서 생성한 리소스를 정리하고 몇 가지 다음 단계를 살펴봅니다.