Как установить портал

Edge для частного облака версии 4.18.05

Перед установкой портала Apigee Developer Services (или просто портала) убедитесь, что:

  1. Postgres нужно установить до портала. Вы можете установить Postgres как часть Edge или отдельно для использования порталом.
    • Если вы устанавливаете Postgres отдельно, его можно разместить на том же узле, что и портал.
    • Если вы подключаетесь к Postgres, установленному как часть Edge, и Postgres настроен в режиме master/standby, укажите IP-адрес основного сервера Postgres.
  2. Вы выполняете установку на 64-разрядной версии поддерживаемой версии Red Hat Enterprise Linux, CentOS или Oracle. Список поддерживаемых версий приведен в разделе Поддерживаемое программное обеспечение и его версии.
  3. Утилита Yum установлена.

Установщик включает только модули Drupal, необходимые для работы портала Apigee Developer Services (или просто портала). Информацию об установке других дополнительных модулей можно найти в статье Расширение возможностей Drupal 7.

Обзор установки

Чтобы установить портал, выполните следующие действия: Каждый из этих шагов описан более подробно в следующих разделах.

  1. Проверьте подключение
  2. Удалите версии PHP ниже 7.0
  3. Как установить Postgres
  4. Как установить портал
  5. Убедитесь, что менеджер обновлений включен
  6. Как настроить Apache Solr(необязательно)
  7. (Необязательно) Установите SmartDocs
  8. Настройка JQuery(необязательно)

Прекращение поддержки свойства SMTPSSL

В предыдущих версиях для настройки протокола, используемого SMTP-сервером, подключенным к порталу, применялось свойство SMTPSSL. Это свойство больше не поддерживается.

Теперь для настройки протокола, используемого SMTP-сервером, подключенным к порталу, нужно использовать свойство SMTP_PROTOCOL, а не SMTPSSL. Допустимые значения: "standard", "ssl" или "tls".

Как создать файл конфигурации портала

Ниже приведен пример файла конфигурации для установки портала в тихом режиме. При необходимости измените этот файл. Чтобы включить этот файл, используйте параметр -f для setup.sh.

IP1=IPorDNSnameOfNode

# Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost.
HOSTIP=$(hostname -i)

# Specify the name of the portal database in Postgres.
PG_NAME=devportal

# Specify the Postgres admin credentials.
# The portal connects to Postgres by using the 'apigee' user.
# If you changed the Postgres password from the default of 'postgres'
# then set PG_PWD accordingly.
# If connecting to a Postgres node installed with Edge,
# contact the Edge sys admin to get these credentials.
PG_USER=apigee
PG_PWD=postgres

# The IP address of the Postgres server.
# If it is installed on the same node as the portal, specify that IP.
# If connecting to a remote Postgres server,specify its IP address.
PG_HOST=$IP1

# The Postgres user credentials used by the portal
# to access the Postgres database,
# This account is created if it does not already exist.
DRUPAL_PG_USER=drupaladmin
DRUPAL_PG_PASS=portalSecret

# Specify 'postgres' as the database.
DEFAULT_DB=postgres

# Specify the Drupal admin account details.
# DO NOT set DEVPORTAL_ADMIN_USERNAME=admin.
# The installer creates this user on the portal.
DEVPORTAL_ADMIN_FIRSTNAME=firstName
DEVPORTAL_ADMIN_LASTNAME=lastName
DEVPORTAL_ADMIN_USERNAME=userName
DEVPORTAL_ADMIN_PWD=PORTAL_ADMIN_PASSWORD
DEVPORTAL_ADMIN_EMAIL=foo@bar.com

# Edge connection details.
# If omitted, you can set them in the portal UI.
# Specify the Edge organization associated with the portal.
EDGE_ORG=edgeOrgName

# Specify the URL of the Edge management API.
# For a Cloud based installation of Edge, the URL is:
# https://api.enterprise.apigee.com/v1
# For a Private Cloud installation, it is in the form:
# http://ms_IP_or_DNS:8080/v1 or
# https://ms_IP_or_DNS:TLSport/v1
MGMT_URL=https://api.enterprise.apigee.com/v1

# The org admin credentials for the Edge organization in the form
# of Edge emailAddress:pword.
# The portal uses this information to connect to Edge.
DEVADMIN_USER=orgAdmin@myCorp.com
DEVADMIN_PWD=ORG_ADMIN_PASSWORD

# The PHP port.
# If omitted, it defaults to 8888.
PHP_FPM_PORT=8888

# Optionally configure the SMTP server used by the portal.
# If you do, the properties SMTPHOST and SMTPPORT are required.
# The others are optional with a default value as notated below.
# SMTP hostname. For example, for the Gmail server, use smtp.gmail.com.
SMTPHOST=smtp.gmail.com

# Set the SMTP protocol as "standard", "ssl", or "tls",
# where "standard" corresponds to HTTP.
# Note that in previous releases, this setting was controlled by the
# SMTPSSL property. That property has been deprecated.
SMTP_PROTOCOL="standard"

# SMTP port (usually 25).
# The value can be different based on the selected encryption protocol.
# For example, for Gmail, the port is 465 when using SSL and 587 for TLS.
SMTPPORT=25

# Username used for SMTP authentication, defaults is blank.
SMTPUSER=your@email.com

# Password used for SMTP authentication, default is blank.
SMTPPASSWORD=YOUR_EMAIL_PASSWORD

1. Как проверить подключение к Apigee Edge

Проверьте подключение между сервером, на котором вы собираетесь установить портал, и сервером управления Edge, выполнив на сервере портала следующую команду curl:

curl -u EMAIL:PASSWORD http://ms_IP_or_DNS:8080/v1/organizations/ORGNAME

Или:

curl -u EMAIL:PASSWORD https://ms_IP_or_DNS:TLSPort/v1/organizations/ORGNAME

где EMAIL и PASSWORD – адрес электронной почты и пароль администратора для ORGNAME.

Укажите имя хоста и номер порта, относящиеся к вашей установке Edge. Порт 8080 используется Edge по умолчанию. Если вы подключаетесь к организации в облаке, URL запроса будет следующим: https://api.enterprise.apigee.com/v1/organizations/ORGNAME.

Если запрос выполнен успешно, curl возвращает ответ, похожий на следующий:

{
  "createdAt" : 1348689232699,
  "createdBy" : "USERNAME",
  "displayName" : "cg",
  "environments" : [ "test", "prod" ],
  "lastModifiedAt" : 1348689232699,
  "lastModifiedBy" : "foo@bar.com",
  "name" : "cg",
  "properties" : {
    "property" : [ ]
  },
  "type" : "trial"
}

2. Удаление версий PHP ниже 7.0

Скрипт установки проверяет, есть ли в системе версии PHP ниже 7.0, прежде чем начать установку. Если существуют версии PHP ниже 7.0, появится следующее предупреждение:

The following packages present on your system conflict with software we are
about to install. You will need to manually remove each one, then re-run this install script.

php
php-cli
php-common
php-gd
php-mbstring
php-mysql
php-pdo
php-pear
php-pecl-apc
php-process
php-xml

Удалите пакеты PHP с помощью следующей команды:

yum remove package_name

Если вы не уверены, установлен ли PHP на вашем сервере, используйте следующую команду:

rpm -qa | grep -i php

3. Как установить Postgres

Чтобы установить портал, сначала необходимо установить Postgres. Вы можете установить Postgres как часть Edge или отдельно для использования порталом.

  • Если вы подключаетесь к Postgres, установленному как часть Edge, и Postgres настроен в режиме master/standby, укажите IP-адрес основного сервера Postgres.
  • Если вы устанавливаете Postgres отдельно, его можно разместить на том же узле, что и портал.

Информацию об установке Postgres в рамках установки Edge можно найти в статье Как установить компоненты Edge на узле.

Чтобы установить Postgres отдельно:

  1. Установите утилиту Edge apigee-setup на узел, используя процедуру с доступом к интернету или без него. Подробнее о том, как установить утилиту Edge apigee-setup…
  2. Создайте файл конфигурации Postgres, как показано в примере ниже.
    # Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost
    HOSTIP=$(hostname -i)
    
    # The pod and region of Postgres. Use the default values shown below.
    MP_POD=gateway
    REGION=dc-1
    
    # Set the Postgres password. The default value is 'postgres'.
    PG_PWD=postgres
  3. В командной строке запустите скрипт настройки, чтобы установить Postgres:
    /opt/apigee/apigee-setup/bin/setup.sh -p pdb -f postgres_config_file

    Параметр -p pdb указывает, что нужно установить Postgre. Файл конфигурации должен быть доступен для чтения пользователю apigee.

4. Как установить портал

Прежде чем устанавливать портал, убедитесь, что вы выполнили следующие действия, описанные в разделе 3. Установите Postgres:

  1. Установите утилиту Edge apigee-setup на узле портала
  2. Установите Postgres как отдельное приложение или как часть Edge.

Чтобы установить портал:

  1. В командной строке запустите скрипт setup:
    /opt/apigee/apigee-setup/bin/setup.sh -p dp -f configFile

    Где:

    • configFile – это файл конфигурации портала, как описано в разделе Создайте файл конфигурации портала.
    • -p dp указывает скрипту setup установить портал.

Чтобы убедиться, что установка портала прошла успешно:

  1. Перейдите на главную страницу портала по адресу http://localhost:8079 или по имени DNS.
  2. Войдите на портал, используя учетные данные администратора, которые вы задали в файле конфигурации портала.
  3. Выберите Reports > Status Report (Отчеты > Отчет о статусе) в меню Drupal, чтобы убедиться, что вы видите текущий статус портала.
  4. Убедитесь, что подключение к серверу управления установлено. Если нет:
    1. Перейдите на страницу конфигурации подключения к порталу (например, http://portal_IP:8079/admin/config/devconnect).
    2. Нажмите кнопку Test Connection (Проверить подключение). Если подключение прошло успешно, все готово. Если установить соединение не удалось, перейдите к следующему шагу.
    3. Проверьте настройки конечной точки и аутентификации:
      • URL конечной точки Management API. Проверьте, правильно ли указаны протокол (HTTP или HTTPS), IP-адрес или имя DNS и номер порта. Пример:
        http://10.10.10.10:8080/v1
      • Аутентифицированный пользователь конечной точки: имя пользователя администратора организации.
      • Пароль аутентифицированного пользователя – пароль администратора организации.

      Значения по умолчанию соответствуют настройкам в файле конфигурации портала, созданном во время установки.

      Эти значения должны совпадать со значениями ms_IP_or_DNS, email и password, которые вы использовали на шаге 1: проверьте подключение к Apigee Edge. Имя пользователя и пароль должны совпадать со значениями свойств USER_NAME и USER_PWD в файле конфигурации или учетными данными любого пользователя с ролью администратора организации.

    4. После успешного подключения к серверу управления нажмите кнопку Сохранить конфигурацию внизу страницы, чтобы сохранить изменения.

5. Убедитесь, что модуль "Менеджер обновлений" включен.

Чтобы получать уведомления об обновлениях Drupal, убедитесь, что модуль Drupal Update manager включен. В меню Drupal выберите Модули и прокрутите страницу вниз до модуля Менеджер обновлений. Если она отключена, включите ее.

После этого вы сможете просматривать доступные обновления, выбрав пункт меню Отчеты > Доступные обновления. Вы также можете использовать следующую команду Drush:

drush pm-info update

Эту команду нужно выполнить из корневого каталога сайта. По умолчанию портал устанавливается в папку /opt/apigee/apigee-drupal/wwwroot. Поэтому перед выполнением команды сначала перейдите в каталог /opt/apigee/apigee-drupal/wwwroot. Если вы не установили портал в каталог по умолчанию, перейдите в каталог установки.

Чтобы настроить модуль на отправку вам электронных писем при появлении обновлений и задать частоту проверки обновлений, используйте пункт меню Отчеты > Доступные обновления > Настройки.

6. Настройте поисковую систему Apache Solr (необязательно)

По умолчанию модули Drupal, которые подключаются к поисковой системе Apache Solr, отключены при установке портала. Большинство порталов используют внутреннюю поисковую систему Drupal, поэтому модули Drupal Solr им не нужны.

Если вы решите использовать Solr в качестве поисковой системы, вам нужно будет установить Solr локально на сервере, а затем включить и настроить модули Drupal Solr на портале.

Чтобы включить модули Drupal Solr:

  1. Войдите на портал как пользователь с правами администратора или создателя контента.
  2. В меню Drupal выберите Модули.
  3. Включите модуль Apache Solr Framework и модуль Apache Solr Search.
  4. Сохраните изменения.
  5. Настройте Solr, как описано на странице https://drupal.org/node/1999280.

7. Установка SmartDocs (необязательно)

SmartDocs позволяет создавать документацию по API на портале таким образом, чтобы она была полностью интерактивной. Однако, чтобы использовать SmartDocs с порталом, сначала необходимо установить SmartDocs в Edge.

  • Если вы подключаете портал к установке Edge Cloud, SmartDocs уже установлен и дополнительная настройка не требуется.
  • Если вы подключаете портал к установке Edge для частного облака, убедитесь, что SmartDocs установлен в Edge. Подробнее о том, как установить SmartDocs…

Вам также необходимо включить SmartDocs на портале. Подробнее о SmartDocs можно узнать в статье Как использовать SmartDocs для документирования API.

8. Настройте модуль JQuery Update для установки без подключения к интернету (необязательно)

Если вы установили и используете модуль JQuery Update в системе без доступа к интернету, вам нужно настроить модуль так, чтобы он использовал локальную версию JQuery. Если вы настроите модуль на использование CDN для установки без подключения к интернету, он попытается получить доступ к CDN, что приведет к задержкам при загрузке страницы. Дополнительную информацию о модуле JQuery Update можно найти на странице https://www.drupal.org/project/jquery_update.

Чтобы настроить модуль JQuery Update на использование локальной версии JQuery:

  1. Войдите на портал как пользователь с правами администратора или создателя контента.
  2. В меню Drupal выберите Configuration > Development > JQuery Update (Конфигурация > Разработка > Обновление JQuery).
  3. На панели навигации слева нажмите Эффективность.
  4. В раскрывающемся списке "CDN JQuery и JQuery UI" выберите Нет.
  5. Нажмите Сохранить конфигурацию.

9. Дальнейшие действия

В таблице ниже перечислены некоторые из наиболее распространенных задач, которые выполняются после установки, и приведены ссылки на документацию Apigee, где можно найти дополнительную информацию:

Задача Описание

Как настроить тему

Тема определяет внешний вид портала, включая цвета, стиль и другие визуальные аспекты.

Как настроить внешний вид

На главной странице есть основное меню, приветственное сообщение, заголовок, нижний колонтитул и название.

Как добавлять аккаунты пользователей и управлять ими

Процесс регистрации определяет, как новые разработчики создают аккаунты на портале. Например, получают ли новые разработчики доступ к порталу сразу или им нужно пройти проверку у администратора. Этот процесс также определяет, как администратор портала получает уведомления о создании нового аккаунта.

Настройка электронной почты

Портал отправляет электронные письма в ответ на определенные события. Например, когда новый разработчик регистрируется на портале или когда разработчик теряет пароль.

Как добавлять аккаунты пользователей и управлять ими

Добавьте страницу с Условиями использования, которые разработчики должны принять, чтобы получить доступ к порталу.

Как добавлять аккаунты пользователей и управлять ими

На портале реализована модель авторизации на основе ролей. Прежде чем разрешить разработчикам регистрироваться, определите разрешения и роли, которые будут использоваться на портале.

Как добавить записи в блог и на форум

Портал поддерживает блоги и форумы с обсуждениями. Определите разрешения, необходимые для просмотра, добавления, изменения и удаления записей в блогах и на форумах.

Как создавать резервные копии базы данных

Убедитесь, что вы создаете резервную копию базы данных Drupal. Поскольку каждая установка уникальна, вам нужно самостоятельно определить, как лучше всего создать резервную копию базы данных.

Также ознакомьтесь с информацией о том, как создать резервную копию.

Как настроить имя хоста

Если вы не настроите имя хоста на DNS-сервере, то всегда сможете получить доступ к сайту по IP-адресу сервера. Если вы хотите использовать имя хоста, настройте DNS для сервера. В базовой конфигурации это должно работать правильно без дополнительных настроек.

Если вы настроили балансировщик нагрузки или получаете неправильные URL на своем сайте по другой причине, вы можете задать $base_url для Drupal, выполнив следующие действия:

  1. Создайте каталог /opt/apigee/data/apigee-drupal-devportal/sites/default/includes, если он ещё не существует.
  2. Создайте в этом каталоге файл с названием settings.php.
  3. Добавьте в файл settings.php следующий код:
    /**
    * Base URL (optional).
    *
    * If Drupal is generating incorrect URLs on your site, which could
    * be in HTML headers (links to CSS and JS files) or visible links
    * on pages (such as in menus), uncomment the Base URL statement
    * below (remove the leading hash sign) and fill in the absolute URL
    * to your Drupal installation.
    *
    * You might also want to force users to use a given domain.
    * See the .htaccess file for more information.
    *
    * Examples:
    *   $base_url = 'http://www.example.com';
    *   $base_url = 'http://www.example.com:8888';
    *   $base_url = 'http://www.example.com/drupal';
    *   $base_url = 'https://www.example.com:8888/drupal';
    *
    * It is not allowed to have a trailing slash; Drupal will add it
    * for you.
    */
    # $base_url = 'http://www.example.com/';  // NO trailing slash!
    $base_url = ‘http://www.example.com’;
  4. Измените последнюю строку $base_url, указав имя хоста своего сайта.
  5. Сохраните файл.

Обратите внимание, что в этот файл можно добавить любые другие настройки из /opt/apigee/data/apigee-drupal-devportal/ sites/default/default.settings.php.

Подробнее о свойстве $base_url:

Специальная разработка Вы также можете расширить возможности портала с помощью собственного кода, не связанного с темой. Для этого создайте собственный модуль Drupal, как описано в разделе Разработка модулей, и поместите его в каталог /sites/all/modules.