Instalación del portal de servicios para desarrolladores

Edge para nube privada v4.18.01

Antes de instalar, asegúrate de lo siguiente:

  • Instala Postgres antes de instalar el portal. Puedes instalar Postgres como parte de la instalación de Edge o instalar Postgres de forma independiente para que lo use el portal.
    • Si instalas Postgres de forma independiente, puede estar en el mismo nodo que el portal.
    • Si te conectas a Postgres instalado como parte de Edge y Postgres está configurado en modo principal/en espera, especifica la dirección IP del servidor principal de Postgres.
  • Estás realizando la instalación en la versión de 64 bits de una versión compatible de Red Hat Enterprise Linux, CentOS u Oracle. Consulta la lista de versiones compatibles en Software y versiones compatibles.
  • Yum está instalado.

El instalador solo incluye módulos aportados por Drupal que requiere el portal de servicios para desarrolladores de Apigee (o simplemente, el portal). Para obtener información sobre cómo instalar otros módulos aportados, consulta Extiende Drupal 7.

Descripción general de instalación

Después de instalar la utilidad apigee-setup de Edge en un nodo, usa esa utilidad para instalar el portal en el nodo. La utilidad apigee-setup tiene el siguiente formato:

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

Pasa un archivo de configuración a la utilidad apigee-setup que contiene la información sobre la instalación. Si falta información obligatoria en el archivo de configuración, la utilidad apigee-setup te pedirá que la ingreses en la línea de comandos.

El único requisito es que el usuario "apigee" pueda acceder al archivo de configuración o leerlo.

Por ejemplo, usa el siguiente comando para instalar el portal:

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

Consulta Instala la utilidad apigee-setup de Edge para obtener más información.

Baja de la propiedad SMTPSSL

En versiones anteriores, usabas la propiedad SMTPSSL para establecer el protocolo que usa el servidor SMTP conectado al portal. Esa propiedad dejó de estar disponible.

Ahora, usas la propiedad SMTP_PROTOCOL, en lugar de la propiedad SMTPSSL, para establecer el protocolo que usa el servidor SMTP conectado al portal. Los valores válidos son "standard", "ssl" o "tls".

Crea un archivo de configuración

A continuación, se muestra un ejemplo de archivo de configuración silenciosa para una instalación del portal. Edita este archivo según sea necesario para tu configuración. Usa la opción -f para setup.sh para incluir este archivo.

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. Prueba tu conexión a Apigee Edge

Ejecuta el siguiente comando de cURL desde un símbolo del sistema en el servidor del portal para probar la conexión con el servidor de administración de Edge:

curl -u {EMAIL}:{PASSWORD} http://<ms_ip_or_DNS>:8080/v1/organizations/{ORGNAME}

o:

curl -u {EMAIL}:{PASSWORD} https://<ms_ip_or_DNS>:TLSPort/v1/organizations/{ORGNAME}

Donde EMAIL y PASSWORD son la dirección de correo electrónico y la contraseña del administrador de ORGNAME.

Asegúrate de especificar el nombre de host y el número de puerto específicos de tu instalación de Edge. El puerto 8080 es el puerto predeterminado que usa Edge. Si te conectas a una organización en la nube, la URL de la solicitud es: https://api.enterprise.apigee.com/v1/organizations/ORGNAME.

Si se ejecuta de forma correcta, este comando devuelve una respuesta similar a la siguiente:

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

2. Quita las versiones de PHP anteriores a la 7.0

La secuencia de comandos de instalación verifica si hay versiones de PHP anteriores a la 7.0 en el sistema antes de iniciar la instalación. Si existen versiones de PHP anteriores a la 7.0, se mostrará el siguiente mensaje de advertencia:

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

Quita los paquetes de PHP con el siguiente comando:

yum remove package-name

3. Instala Postgres

El portal requiere que se instale Postgres antes de poder instalar el portal. Puedes instalar Postgres como parte de la instalación de Edge o instalar Postgres de forma independiente para que lo use el portal.

  • Si te conectas a Postgres instalado como parte de Edge y Postgres está configurado en modo principal/en espera, especifica la dirección IP del servidor de Postgres principal.
  • Si instalas Postgres de forma independiente, puede estar en el mismo nodo que el portal.

Para obtener información sobre cómo instalar Postgres como parte de la instalación de Edge, consulta Instala componentes de Edge en un nodo.

Para instalar Postgres de forma independiente, sigue estos pasos:

  1. Instala la utilidad apigee-setup de Edge en el nodo con el procedimiento de Internet o sin Internet. Consulta Instala la utilidad apigee-setup de Edge para obtener más información.
  2. Crea un archivo de configuración para Postgres, como se muestra a continuación:
    # 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. En el símbolo del sistema, ejecuta la secuencia de comandos de configuración para instalar Postgres:
    /opt/apigee/apigee-setup/bin/setup.sh -p pdb -f configFile

    La opción -p pdb especifica que se instale PostgreSQL. El usuario "apigee" debe poder acceder al archivo de configuración o leerlo.

4. Instala el portal

Para instalar el portal, sigue estos pasos:

  1. Instala la utilidad apigee-setup de Edge en el nodo con el procedimiento de Internet o sin Internet. Consulta Instala la utilidad apigee-setup de Edge para obtener más información.
  2. Asegúrate de haber instalado Postgres, ya sea de forma independiente o como parte de la instalación de Edge.
  3. En el símbolo del sistema, ejecuta la secuencia de comandos de configuración:
    /opt/apigee/apigee-setup/bin/setup.sh -p dp -f configFile

    La opción -p dp especifica que se instale el portal.

    El usuario "apigee" debe poder acceder al archivo de configuración o leerlo.

  4. Navega a la página principal del portal en http://localhost:8079 o al nombre de DNS de tu portal.
  5. Accede al portal con las credenciales de administrador que configuraste en el archivo de configuración para asegurarte de que el portal se ejecute correctamente.
  6. Selecciona Informes > Informe de estado en el menú de Drupal para asegurarte de que puedes ver el estado actual del portal.

5. Asegúrate de que el módulo Update manager esté habilitado.

Para recibir notificaciones de las actualizaciones de Drupal, asegúrate de que el módulo del administrador de actualizaciones de Drupal esté habilitado. En el menú de Drupal, selecciona Modules y desplázate hacia abajo hasta el módulo Update manager. Si no está habilitada, habilítala.

Una vez que habilites la función, podrás ver las actualizaciones disponibles en el elemento de menú Informes > Actualizaciones disponibles. También puedes usar el siguiente comando de Drush:

drush pm-info update

Debes ejecutar este comando desde el directorio raíz del sitio. De forma predeterminada, el portal para desarrolladores se instala en /opt/apigee/apigee-drupal/wwwroot. Por lo tanto, primero debes cambiar el directorio a /opt/apigee/apigee-drupal/wwwroot antes de ejecutar el comando. Si no instalaste el portal en el directorio predeterminado, cámbialo al directorio de instalación.

Usa el elemento de menú Informes > Actualizaciones disponibles > Configuración para configurar el módulo de modo que te envíe un correo electrónico cuando haya actualizaciones disponibles y para establecer la frecuencia con la que se buscan actualizaciones.

6. Configura el motor de búsqueda de Apache Solr (opcional)

De forma predeterminada, los módulos de Drupal que se conectan al motor de búsqueda de Apache Solr se inhabilitan cuando instalas el portal. La mayoría de los portales usan el motor de búsqueda interno de Drupal y, por lo tanto, no requieren los módulos de Solr de Drupal.

Si decides usar Solr como motor de búsqueda, debes instalarlo de forma local en tu servidor y, luego, habilitar y configurar los módulos de Drupal Solr en el portal.

Para habilitar los módulos de Drupal Solr, haz lo siguiente:

  1. Accede a tu portal como un usuario con privilegios de administrador o de creación de contenido.
  2. Selecciona Modules en el menú de Drupal.
  3. Habilita el módulo Apache Solr Framework y el módulo Apache Solr Search.
  4. Guarda los cambios.
  5. Configura Solr como se describe en https://drupal.org/node/1999280.

7. Instala SmartDocs (opcional)

SmartDocs te permite documentar tus APIs en el portal de servicios para desarrolladores de una manera que hace que la documentación de la API sea completamente interactiva. Sin embargo, para usar SmartDocs con el portal, primero debes instalar SmartDocs en Edge.

  • Si conectas el portal a una instalación de Edge Cloud, SmartDocs ya está instalado y no se necesita ninguna configuración adicional.
  • Si conectas el portal a una instalación de Edge para nube privada, debes asegurarte de que SmartDocs esté instalado en Edge. Para obtener más información sobre la instalación de Edge y SmartDocs, consulta Instala SmartDocs.

También debes habilitar SmartDocs en el portal. Para obtener más información sobre SmartDocs, consulta Usa SmartDocs para documentar APIs.

8. Configura el módulo de actualización de JQuery para instalaciones sin Internet (opcional)

Si instalas y usas el módulo de actualización de JQuery en una instalación sin conexión a Internet, debes configurar el módulo para que use la versión local de JQuery. Si configuras el módulo para que use una CDN en una instalación sin Internet, intentará acceder a la CDN y causará demoras en la carga de la página. Para obtener más información sobre el módulo de actualización de JQuery, consulta https://www.drupal.org/project/jquery_update.

Para configurar el módulo de actualización de JQuery para que use la versión local de JQuery, sigue estos pasos:

  1. Accede a tu portal como un usuario con privilegios de administrador o de creación de contenido.
  2. Selecciona Configuration > Development > JQuery Update en el menú de Drupal.
  3. Haz clic en Rendimiento en el panel de navegación izquierdo.
  4. En el menú desplegable de CDN de JQuery y JQuery UI, selecciona Ninguno.
  5. Haga clic en Guardar configuración.

9. Próximos pasos

Los próximos pasos después de instalar el portal de servicios para desarrolladores son configurarlo y personalizarlo según tus requisitos específicos. La documentación en el sitio web de Apigee contiene toda la información sobre cómo configurar, diseñar y administrar un portal. Accede a la documentación en http://apigee.com/docs/developer-services/content/what-developer-portal.

En la siguiente tabla, se enumeran algunas de las tareas más comunes que realizas después de la instalación y se incluyen vínculos a la documentación de Apigee, en la que puedes encontrar más información:

Tarea Descripción

Personaliza el tema

El tema define la apariencia del portal, incluidos los colores, el estilo y otros aspectos visuales.

Personaliza la apariencia

La página principal incluye el menú principal, el mensaje de bienvenida, el encabezado, el pie de página y el título.

Agrega y administra cuentas de usuario

El proceso de registro controla cómo los desarrolladores nuevos registran una cuenta en el portal. Por ejemplo, si los desarrolladores nuevos obtienen acceso inmediato al portal o si un administrador debe verificarlos. Este proceso también controla cómo se notifica al administrador del portal cuando se crea una cuenta nueva.

Configura el correo electrónico

El portal envía correos electrónicos en respuesta a ciertos eventos. Por ejemplo, cuando un desarrollador nuevo se registra en el portal y cuando un desarrollador pierde su contraseña.

Agrega y administra cuentas de usuario

Agrega una página de Términos y Condiciones que los desarrolladores deben aceptar antes de poder acceder al portal.

Agrega y administra cuentas de usuario

El portal implementa un modelo de autorización basado en roles. Antes de permitir que los desarrolladores se registren, define los permisos y los roles que usa el portal.

Agrega entradas de blog y publica en el foro

El portal tiene compatibilidad integrada con blogs y foros de conversación. Define los permisos necesarios para ver, agregar, editar y borrar entradas de blog y publicaciones en el foro.

Asegúrate de crear copias de seguridad de la base de datos

Asegúrate de crear una copia de seguridad de la base de datos de Drupal. Ten en cuenta que, como cada instalación es diferente, depende de ti determinar la mejor manera de crear una copia de seguridad de la base de datos.

Nota: El módulo Backup and Migrate no es compatible con las bases de datos de Postgres.

Consulta también Cómo realizar una copia de seguridad.

Configura un nombre de host

Si no configuras un nombre de host en tu servidor DNS, siempre puedes acceder al sitio a través de la dirección IP del servidor. Si quieres usar un nombre de host, puedes configurar el DNS para el servidor, que debería funcionar correctamente sin ninguna otra configuración en una configuración básica.

Si configuras un balanceador de cargas o recibes URLs incorrectas en tu sitio por algún otro motivo, puedes configurar $base_url para Drupal siguiendo estos pasos:

  1. Crea el directorio /opt/apigee/data/apigee-drupal-devportal/sites/default/includes si no existe.
  2. Crea un archivo llamado settings.php en ese directorio.
  3. Agrega lo siguiente al archivo 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. Cambia la última línea $base_url para que sea el nombre de host de tu sitio.
  5. Guarda el archivo.

Ten en cuenta que puedes colocar cualquier otro parámetro de configuración de /opt/apigee/data/apigee-drupal-devportal/ sites/default/default.settings.php en este archivo.

Para obtener más información sobre la propiedad $base_url, consulta lo siguiente:

Desarrollo personalizado También puedes extender las capacidades de tu portal con código personalizado fuera de tu tema. Para ello, crea tu propio módulo de Drupal como se describe en los temas de desarrollo de módulos de Drupal y colócalo en el directorio /sites/all/modules.