Установка портала Developer Services

Edge for Private Cloud v4.18.01

Перед установкой убедитесь, что:

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

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

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

После установки Edge на узле используйте утилиту apigee-setup, чтобы установить на нем портал. Утилита apigee-setup имеет следующий формат:

sudo /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

Передайте утилите apigee-setup файл конфигурации, содержащий информацию об установке. Если в файле конфигурации отсутствует какая-либо обязательная информация, утилита apigee-setup предложит вам ввести ее в командной строке.

Единственное требование – файл конфигурации должен быть доступен для чтения пользователю apigee.

Например, чтобы установить портал, используйте следующую команду:

sudo /opt/apigee/apigee-setup/bin/setup.sh -p dp -f myConfig

Подробнее о том, как установить утилиту apigee-setup для Edge…

Прекращение поддержки свойства 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=pWord 
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=pWord 

# 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=yourEmailPassword

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.

Если команда выполнена успешно, вы получите ответ, похожий на приведенный ниже.

{
  "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

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 configFile

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

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

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

  1. Установите утилиту Edge apigee-setup на узел, используя интернет или процедуру без интернета. Подробнее о том, как установить утилиту apigee-setup для Edge…
  2. Убедитесь, что вы установили Postgres (отдельно или как часть Edge).
  3. В командной строке запустите скрипт настройки:
    /opt/apigee/apigee-setup/bin/setup.sh -p dp -f configFile

    Параметр -p dp указывает, что нужно установить портал.

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

  4. Перейдите на главную страницу портала по адресу http://localhost:8079 или по имени DNS вашего портала.
  5. Войдите на портал, используя учетные данные администратора, которые вы задали в файле конфигурации, чтобы убедиться, что портал работает правильно.
  6. Выберите Reports > Status Report (Отчеты > Отчет о статусе) в меню Drupal, чтобы посмотреть текущий статус портала.

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 на портале Developer Services, которая будет полностью интерактивной. Однако, чтобы использовать SmartDocs с порталом, сначала необходимо установить SmartDocs в Edge.

  • Если вы подключаете портал к установке Edge Cloud, SmartDocs уже установлен и дополнительная настройка не требуется.
  • Если вы подключаете портал к установке Edge для частного облака, убедитесь, что SmartDocs установлен в Edge. Подробнее о том, как установить Edge и SmartDocs, рассказывается в статье Как установить 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. Что дальше

После установки портала Developer Services вам нужно будет настроить его в соответствии со своими требованиями. В документации на сайте Apigee содержится вся информация о настройке, оформлении и управлении порталом. Документация доступна по адресу http://apigee.com/docs/developer-services/content/what-developer-portal.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Добавление записей из блога и форума

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

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

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

Примечание. Модуль Backup and Migrate несовместим с базами данных Postgres.

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

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

Если вы не настроите имя хоста на 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.