Requisitos de hardware
Debes cumplir con los siguientes requisitos mínimos de hardware para un dispositivo con de nube en un entorno de producción.
En el siguiente video, se proporciona orientación de alto nivel sobre el tamaño de tu instalación:
Para todas las situaciones de instalación descritas en Topologías de instalación, en las siguientes tablas se enumeran los requisitos mínimos de hardware para los componentes de instalación.
En estas tablas, los requisitos de disco duro se suman al espacio en disco duro requerido por el sistema operativo. Según las aplicaciones y el tráfico de red, es posible que la instalación requieren más o menos recursos de los que se indican a continuación.
Componente de instalación | RAM | CPU | Disco duro mínimo |
---|---|---|---|
Cassandra | 16 GB | 8 núcleos | Almacenamiento local de 250 GB con SSD que admite 2,000 IOPS |
Procesador de mensajes o router en la misma máquina | 16 GB | 8 núcleos | 100GB |
Procesador de mensajes (independiente) | 16 GB | 8 núcleos | 100 GB |
Router (independiente) | 16 GB | 8 núcleos | 100 GB |
Analytics: Postgres/Qpid en el mismo servidor | 16 GB* | 8 núcleos* | Almacenamiento de red de 500 GB a 1 TB*****, preferentemente con backend SSD, Admite 1,000 IOPS o más* |
Analytics: Postgres principal o en espera (independiente) | 16 GB* | 8 núcleos* | Almacenamiento en red de 500 GB a 1 TB*****, preferiblemente con backend SSD, que admita 1,000 IOPS o más* |
Analytics: Qpid independiente | 8 GB | 4 núcleos | Almacenamiento local de 30 GB a 50 GB con SSD
El tamaño predeterminado de la cola de Qpid es de 1 GB, que se puede aumentar a 2 GB. Si necesitas más capacidad, agrega nodos Qpid adicionales. |
Servidor de administración/IU/OpenLDAP | 8 GB | 4 núcleos | 60 GB |
Servidor de IU o administración | 4 GB | 2 núcleos | 60 GB |
OpenLDAP (independiente) | 4 GB | 2 núcleos | 60 GB |
* Ajusta los requisitos del sistema de Postgres según la capacidad de procesamiento:
** El valor del disco duro de Postgres se basa en las estadísticas listas para usar que captura Edge. Si agregas valores personalizados a los datos de Analytics, estos valores deben aumentarse según corresponda. Usa la siguiente fórmula para estimar el almacenamiento requerido:
Por ejemplo:
*** Se recomienda el almacenamiento en red para la base de datos de PostgreSQL por los siguientes motivos:
|
Además, a continuación, se indican los requisitos de hardware si deseas instalar los servicios de monetización (no se admiten en la instalación todo en uno):
Componente con monetización | RAM | CPU | Disco duro |
---|---|---|---|
Servidor de administración (con servicios de monetización) | 8 GB | 4 núcleos | 60 GB |
Analytics: Postgres/Qpid en el mismo servidor | 16 GB | 8 núcleos | Almacenamiento en red de 500 GB a 1 TB, preferentemente con backend SSD, que admite 1,000 IOPS o más arriba o usa la regla de la tabla que aparece arriba. |
Analytics: Instancia principal o en espera independiente de Postgres | 16 GB | 8 núcleos | Almacenamiento en red de 500 GB a 1 TB, preferentemente con backend SSD, que admite 1,000 IOPS o más arriba o usa la regla de la tabla que aparece arriba. |
Analytics: Qpid independiente | 8 GB | 4 núcleos | De 40 GB a 500 GB de almacenamiento local con SSD o HDD rápido
Para instalaciones superiores a 250 TPS, se recomienda un HDD con almacenamiento local que admite 1,000 IOPS se recomienda. |
Requisitos del sistema operativo y software de terceros
Estas instrucciones de instalación y los archivos de instalación suministrados se probaron en el sistemas operativos y software de terceros que se mencionan en Software y versiones compatibles.
Java
Necesitas tener instalada una versión compatible de Java 1.8 en cada máquina antes de la instalación. Los JDK admitidos se enumeran en Software y versiones compatibles.
Asegúrate de que la variable de entorno JAVA_HOME
apunte a la raíz del JDK para el usuario que realiza la instalación.
SELinux
Según la configuración de SELinux, Edge puede tener problemas para instalar y iniciar los componentes de Edge. Si es necesario, puedes inhabilitar SELinux o configurarlo en modo permisivo durante instalación y volver a habilitarla después de la instalación. Consulta Instala la utilidad apigee-setup de Edge para obtener más información.
Crea el usuario "apigee"
El procedimiento de instalación crea un usuario del sistema Unix llamado "apigee". Los directorios y archivos de Edge son propiedad de "apigee", al igual que los procesos de Edge. Eso significa que los componentes de Edge se ejecutan como el usuario "apigee". Si es necesario, puedes ejecutar componentes como un usuario diferente.
Directorio de instalación
De forma predeterminada, el instalador escribe todos los archivos en el directorio /opt/apigee
. No puedes cambiar la ubicación de este directorio. Si bien no puedes cambiar este directorio, puedes crear un symlink para asignar /opt/apigee
a otra ubicación, como se describe en Cómo crear un symlink desde /opt/apigee.
En las instrucciones de esta guía, el directorio de instalación se indica como /opt/apigee
.
Crea un symlink desde /opt/apigee
Antes de crear el symlink, primero debes crear un usuario y grupo llamados “apigee”. Este es el mismo grupo y usuario que creó el instalador de Edge.
Para crear el symlink, sigue estos pasos antes de descargar el archivo bootstrap_4.52.01.sh. Debes realizar todos estos pasos como raíz:
- Crea el usuario y el grupo "apigee":
groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
- Crea un symlink de
/opt/apigee
a la raíz de instalación deseada:ln -Ts /srv/myInstallDir /opt/apigee
Donde /srv/myInstallDir es la ubicación deseada de los archivos de Edge.
- Cambiar la propiedad de la raíz de instalación y el symlink a “apigee” usuario:
chown -h apigee:apigee /srv/myInstallDir /opt/apigee
Configuración de la red
Apigee recomienda que verifiques la configuración de red antes de la instalación. El instalador espera que todas las máquinas tengan direcciones IP fijas. Usa los siguientes comandos para validar parámetro de configuración:
hostname
muestra el nombre de la máquina.hostname -i
: Muestra la dirección IP del nombre de host desde el que se puede establecer la dirección. otras máquinas.
Según el tipo y la versión de tu sistema operativo, es posible que debas editar
/etc/hosts
y /etc/sysconfig/network
si el nombre de host no es
correctamente. Para obtener más información, consulta la documentación de tu sistema operativo específico.
Si un servidor tiene varias tarjetas de interfaz, el “nombre de host -i” el comando devuelve una imagen separada lista de direcciones IP. De forma predeterminada, el instalador de Edge usa la primera dirección IP que se devuelve, lo que puede no ser la correcta en todas las situaciones. Como alternativa, puedes configurar la siguiente propiedad en el archivo de configuración de instalación:
ENABLE_DYNAMIC_HOSTIP=y
Con esa propiedad establecida en “y”, el instalador te solicita que selecciones la dirección IP que se usará como parte de la instalación. El valor predeterminado es "n". Consulta la Referencia del archivo de configuración de Edge para obtener más información.
Wrappers de TCP
Los wrappers TCP pueden bloquear la comunicación de algunos puertos y afectar a OpenLDAP, Postgres y
Instalación de Cassandra. En esos nodos, marca /etc/hosts.allow
y
/etc/hosts.deny
para garantizar que no haya restricciones de puertos en los puertos
OpenLDAP, Postgres y Cassandra.
iptables
Valida que no haya políticas de iptables que impidan la conectividad entre nodos en el puertos Edge necesarios. Si es necesario, puedes detener iptables durante la instalación a través del :
sudo/etc/init.d/iptables stop
En CentOS 7.x:
systemctl stop firewalld
Acceso al directorio
En la siguiente tabla, se enumeran los directorios en los nodos de Edge que tienen requisitos especiales de los procesos de Edge:
Servicio | Directorio | Descripción |
---|---|---|
Router | /etc/rc.d/init.d/functions |
El router perimetral usa el router Nginx y requiere acceso de lectura para
Si tu proceso de seguridad requiere que establezcas permisos en
Puedes establecer los permisos en 744 para permitir el acceso de lectura a
|
Zookeeper | /dev/random |
La biblioteca cliente de Zookeeper requiere acceso de lectura al generador de números al azar
/dev/random Si /dev/random está bloqueado en la lectura, es posible que el servicio de Zookeeper no se inicie. |
Cassandra
Todos los nodos de Cassandra deben estar conectados a un anillo. Cassandra almacena réplicas de datos en varios nodos para garantizar la confiabilidad y la tolerancia a errores. La estrategia de replicación de cada espacio de claves de Edge determina los nodos de Cassandra en los que se colocan las réplicas. Para obtener más información, consulta Acerca de Cassandra factor de replicación y nivel de coherencia.
Cassandra ajusta automáticamente el tamaño del montón de Java en función de la memoria disponible. Para obtener más información, consulta Ajuste Recursos Java en caso de degradación del rendimiento o consumo de memoria elevado.
Después de instalar Edge para la nube privada, puedes verificar que Cassandra esté configurada correctamente examinando el archivo /opt/apigee/apigee-cassandra/conf/cassandra.yaml
. Por ejemplo, asegúrate de que la secuencia de comandos de instalación del perímetro para la nube privada establezca lo siguiente:
propiedades:
cluster_name
initial_token
partitioner
seeds
listen_address
rpc_address
snitch
Base de datos de PostgreSQL
Después de instalar Edge, puedes ajustar la siguiente configuración de la base de datos de PostgreSQL según la cantidad de RAM disponible en tu sistema:
conf_postgresql_shared_buffers = 35% of RAM # min 128kB conf_postgresql_effective_cache_size = 45% of RAM conf_postgresql_work_mem = 512MB # min 64kB
Para establecer estos valores, sigue estos pasos:
- Edita el archivo postgresql.properties:
vi /opt/apigee/customer/application/postgresql.properties
Si el archivo no existe, créalo.
- Configura las propiedades que se mencionaron anteriormente.
- Guarda los cambios.
- Reinicia la base de datos de PostgreSQL:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
Límites del sistema
Asegúrate de haber establecido los siguientes límites del sistema en Cassandra y Message Processor nodos:
- En los nodos de Cassandra, establece límites de espacio de dirección (como) y suave, nofile y de dirección
usuario de instalación (la configuración predeterminada es “apigee”) en
/etc/security/limits.d/90-apigee-edge-limits.conf
como se muestra a continuación:apigee soft memlock unlimited apigee hard memlock unlimited apigee soft nofile 32768 apigee hard nofile 65536 apigee soft as unlimited apigee hard as unlimited apigee soft nproc 32768 apigee hard nproc 65536
- En los nodos del procesador de mensajes, establece la cantidad máxima de descriptores de archivos abiertos en 64K en
/etc/security/limits.d/90-apigee-edge-limits.conf
, como se muestra a continuación:apigee soft nofile 32768 apigee hard nofile 65536
Si es necesario, puedes aumentar ese límite. Por ejemplo, si tienes una gran cantidad de archivos temporales abiertos a la vez.
Si ves el siguiente error en un
system.log
de router o procesador de mensajes, es posible que los límites de descriptor de archivos estén configurados demasiado bajos:"java.io.IOException: Too many open files"
Para verificar los límites de usuarios, ejecuta lo siguiente:
# su - apigee $ ulimit -n 100000
Si aún alcanzas los límites de archivos abiertos después de establecer los límites de descriptores de archivos en
100000
, abre un ticket con el equipo de Asistencia de Apigee Edge para obtener más información para solucionar el problema.
Servicios de seguridad de red (NSS)
Network Security Services (NSS) es un conjunto de bibliotecas que admite el desarrollo de aplicaciones cliente y servidor habilitadas para seguridad. Asegúrate de haber instalado NSS v3.19 o una versión posterior.
Para verificar tu versión actual, sigue estos pasos:
yum info nss
Para actualizar NSS, sigue estos pasos:
yum update nss
Consulta este artículo. de Red Hat para obtener más información.
Inhabilita la búsqueda de DNS en IPv6 cuando uses NSCD (demonio de caché de servicio de nombres).
Si instalaste y habilitaste NSCD (demonio de caché de servicio de nombres), los procesadores de mensajes realizan dos búsquedas de DNS: una para IPv4 y otra para IPv6. Debes inhabilitar la búsqueda de DNS en IPv6 cuando uses NSCD.
Para inhabilitar la búsqueda de DNS en IPv6, haz lo siguiente:
- En cada nodo del procesador de mensajes, edita
/etc/nscd.conf
. - Configura la siguiente propiedad:
enable-cache hosts no
Inhabilita IPv6 en Google Cloud Platform para Red Hat/CentOS 7
Si instalas Edge en Red Hat 7 o CentOS 7 en Google Cloud Platform, es posible que debas debe inhabilitar IPv6 en todos los nodos Qpid.
Consulta la documentación de Red Hat o CentOS de la versión específica de tu SO para obtener instrucciones sobre inhabilitar IPv6. Por ejemplo, puedes hacer lo siguiente:
- Abre
/etc/hosts
en un editor. - Inserta un carácter "#" en la columna uno de la siguiente línea para marcarla como comentario:
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- Guarda el archivo.
AMI de AWS
Si instalas Edge en una imagen de máquina de Amazon (AMI) de AWS para Red Hat Enterprise Linux 7.x, primero debes ejecutar el siguiente comando:
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
Herramientas
El instalador usa las siguientes herramientas de UNIX en la versión estándar que proporciona EL5 o EL6.
awk |
expr |
libxslt |
rpm |
unzip |
nombre base |
grep |
zócalo LUA |
rpm2cpio |
useradd |
Bash |
Nombre de host |
ls |
sed |
wc |
bc |
id |
net-tools |
sudo |
wget |
curl |
libaio |
perl (de procps) |
tar |
xerces-c |
cyrus-sasl | libdb4 | pgrep (de procps) | tr | yum |
fecha |
libdb-cxx |
ps |
uuid |
chkconfig |
dirname | libibverbio | pwd | uname | |
echo | librdmacm | python |
ntpdate
Apigee recomienda que los tiempos de tus servidores estén sincronizados. Si aún no lo hiciste,
la utilidad ntpdate
podría cumplir con este propósito, que verifica que
si los servidores están sincronizados en el tiempo. Puedes usar yum install ntp
para instalar la utilidad. Esto es particularmente útil para replicar configuraciones de OpenLDAP. Ten en cuenta que debes configurar la zona horaria del servidor en UTC.
openldap 2.4
La instalación local requiere OpenLDAP 2.4. Si el servidor tiene conexión a Internet,
Luego, la secuencia de comandos de instalación de Edge descarga e instala
OpenLDAP. Si tu servidor no tiene conexión a Internet, debes asegurarte de que OpenLDAP ya esté instalado antes de ejecutar la secuencia de comandos de instalación de Edge. En RHEL/CentOS, puedes ejecutar yum install openldap-clients openldap-servers
para instalar OpenLDAP.
Para las instalaciones de 13 hosts y las de 12 hosts con dos centros de datos, se requiere la replicación de OpenLDAP porque hay varios nodos que alojan OpenLDAP.
Firewalls y hosts virtuales
El término virtual
suele sobrecargarse en el ámbito de la TI, por lo que sucede con un
Apigee Edge para la implementación de nubes privadas y hosts virtuales. A modo de aclaración, existen dos usos principales del término virtual
:
- Máquinas virtuales (VM): No es obligatorio, pero algunas implementaciones usan la tecnología de VM para crear servidores aislados para sus componentes de Apigee. Los hosts de VM, al igual que los hosts físicos, pueden tener interfaces de red y firewalls.
- Hosts virtuales: Extremos web, similares a un host virtual de Apache
Un router en una VM puede exponer varios hosts virtuales (siempre que difieran entre sí en su alias de host o en su puerto de interfaz).
Como ejemplo, un solo servidor físico A
podría ejecutar dos VMs,
llamada “VM1” y "VM2". Supongamos que “VM1” expone una interfaz Ethernet virtual, que recibe el nombre
“eth0” dentro de la VM y a cuál se le asignará la dirección IP 111.111.111.111
la maquinaria de virtualización o un servidor DHCP de red; y, luego, supón que VM2 expone una configuración
La interfaz Ethernet también llamada “eth0” y se le asigna una dirección IP
111.111.111.222
Es posible que tengamos un router de Apigee en ejecución en cada una de las dos VMs. Los routers exponen como en este ejemplo hipotético:
El router de Apigee en VM1 expone tres hosts virtuales en su interfaz eth0 (que tiene algunos
dirección IP específica), api.mycompany.com:80
, api.mycompany.com:443
y
test.mycompany.com:80
El router en la VM2 expone api.mycompany.com:80
(el mismo nombre y puerto que expone la VM1).
Es posible que el sistema operativo del host físico tenga un firewall de red. Si es así, ese firewall debe configurarse para pasar el tráfico TCP destinado a los puertos que se exponen en las interfaces virtualizadas (111.111.111.111:{80, 443}
y 111.111.111.222:80
). Además, el sistema operativo de cada VM puede proporcionar su propio firewall en su interfaz eth0, y estos también deben permitir que se conecte el tráfico de los puertos 80 y 443.
La ruta base es el tercer componente involucrado en el enrutamiento de llamadas a la API a diferentes proxies de API
que hayas implementado. Los paquetes de proxy de API pueden compartir un extremo si tienen diferentes
basepaths. Por ejemplo, una ruta de acceso base se puede definir como http://api.mycompany.com:80/
y otra como http://api.mycompany.com:80/salesdemo
.
En este caso, necesitas un balanceador de cargas o un director de tráfico de algún tipo que divida el
tráfico http://api.mycompany.com:80/ entre las dos direcciones IP
(111.111.111.111
en VM1 y 111.111.111.222
en VM2). Esta función es específica de tu instalación en particular y la configura tu grupo de redes local.
La ruta base se establece cuando implementas una API. En el ejemplo anterior, puedes implementar dos APIs.
mycompany
y testmycompany
para la organización
mycompany-org
por el host virtual que tiene el alias de host de
api.mycompany.com
y el puerto configurado como 80
. Si no declaras una ruta de acceso base en la implementación, el router no sabe a qué API enviar las solicitudes entrantes.
Sin embargo, si implementas la API testmycompany
con la URL base de
/salesdemo
, los usuarios acceden a esa API con
http://api.mycompany.com:80/salesdemo
. Si implementas tu API en mycompany con la
URL base de /
, los usuarios podrán acceder a la API mediante la URL
http://api.mycompany.com:80/
Licencias
Cada instalación de Edge requiere un archivo de licencia único que obtienes de Apigee. Lo que harás proporcionar la ruta al archivo de licencia cuando instalas el servidor de administración, por ejemplo, /tmp/license.txt.
El instalador copia el archivo de licencia en
/opt/apigee/customer/conf/license.txt
Si el archivo de licencia es válido, el servidor de administración valida el vencimiento y el recuento permitido de procesadores de mensajes (MP). Si venció alguno de los parámetros de configuración de la licencia, puedes encontrar los registros en la siguiente ubicación: /opt/apigee/var/log/edge-management-server/logs
.
En este caso, puedes comunicarte con el equipo de Asistencia de Apigee Edge para conocer los detalles de la migración.
Si aún no tienes una licencia, comunícate con Ventas de Apigee.