Requisitos de hardware
Você precisa atender aos seguintes requisitos mínimos de hardware para uma infraestrutura de alta disponibilidade em um ambiente de produção.
O vídeo a seguir fornece orientações gerais de dimensionamento para sua instalação:
Para todos os cenários de instalação descritos em Topologias de instalação, as tabelas a seguir listam os requisitos mínimos de hardware para os componentes de instalação.
Nessas tabelas, os requisitos de disco rígido são adicionais ao espaço em disco rígido exigido pelo sistema operacional. Dependendo dos aplicativos e do tráfego de rede, a instalação pode exigir mais ou menos recursos do que os listados abaixo.
| Componente de instalação | RAM | CPU | Disco rígido mínimo |
|---|---|---|---|
| Cassandra | 16 GB | 8 núcleos | Armazenamento local de 250 GB com SSD compatível com 2.000 IOPS |
| Processador/roteador de mensagens na mesma máquina | 16 GB | 8 núcleos | 100 GB |
| Processador de mensagens (independente) | 16 GB | 8 núcleos | 100 GB |
| Roteador (independente) | 16 GB | 8 núcleos | 100 GB |
| Analytics: Postgres/Qpid no mesmo servidor | 16GB* | 8 núcleos* | 500 GB a 1 TB de armazenamento de rede*****, de preferência com back-end de SSD, compatível com 1.000 IOPS ou mais* |
| Análise: Postgres mestre ou em espera (independente) | 16GB* | 8 núcleos* | 500 GB a 1 TB de armazenamento de rede*****, de preferência com back-end de SSD, compatível com 1.000 IOPS ou mais* |
| Analytics: Qpid independente | 8 GB | 4 núcleos | Armazenamento local de 30 GB a 50 GB com SSD
O tamanho padrão da fila do Qpid é de 1 GB, que pode ser aumentado para 2 GB. Se você precisar de mais capacidade, adicione mais nós do Qpid. |
| OpenLDAP/IU/servidor de gerenciamento | 8 GB | 4 núcleos | 60 GB |
| Servidor de interface/gerenciamento | 4 GB | 2 núcleos | 60 GB |
| OpenLDAP (independente) | 4 GB | 2 núcleos | 60 GB |
|
* Ajuste os requisitos do sistema do Postgres com base na capacidade de processamento:
** O valor do disco rígido do Postgres é baseado nas análises prontas para uso capturadas pelo Edge. Se você adicionar valores personalizados aos dados de análise, esses valores precisarão ser aumentados de acordo. Use a seguinte fórmula para estimar o armazenamento necessário:
Exemplo:
*** O armazenamento de rede é recomendado para o banco de dados Postgresql porque:
|
|||
Além disso, veja a seguir os requisitos de hardware para instalar os serviços de monetização (não compatíveis com a instalação completa):
| Componente com monetização | RAM | CPU | Disco rígido |
|---|---|---|---|
| Servidor de gerenciamento (com serviços de monetização) | 8 GB | 4 núcleos | 60 GB |
| Analytics: Postgres/Qpid no mesmo servidor | 16 GB | 8 núcleos | Armazenamento de rede de 500 GB a 1 TB, de preferência com back-end SSD, compatível com 1.000 IOPS ou mais, ou use a regra da tabela acima. |
| Análise: mestre do Postgres ou independente em espera | 16 GB | 8 núcleos | Armazenamento de rede de 500 GB a 1 TB, de preferência com back-end SSD, compatível com 1.000 IOPS ou mais, ou use a regra da tabela acima. |
| Analytics: Qpid independente | 16 GB | 8 núcleos | Armazenamento local de 40 GB a 500 GB com SSD ou HDD rápido
Para instalações com mais de 250 TPS, é recomendável usar HDD com armazenamento local compatível com 1.000 IOPS. |
Requisitos de sistema operacional e software de terceiros
Estas instruções de instalação e os arquivos de instalação fornecidos foram testados nos sistemas operacionais e softwares de terceiros listados em Softwares e versões compatíveis.
Java
É necessário ter uma versão compatível do Java 1.8 instalada em cada máquina antes da instalação. Os JDKs compatíveis estão listados em Software e versões compatíveis.
Verifique se a variável de ambiente JAVA_HOME aponta para a raiz do JDK do
usuário que está realizando a instalação.
SELinux
Dependendo das configurações do SELinux, o Edge pode ter problemas para instalar e iniciar os componentes do Edge. Se necessário, desative o SELinux ou defina-o como modo permissivo durante a instalação e reative-o após a instalação. Consulte Instalar o utilitário apigee-setup do Edge para mais informações.
Como criar o usuário "apigee"
O procedimento de instalação cria um usuário do sistema Unix chamado "apigee". Os diretórios e arquivos do Edge pertencem à "apigee", assim como os processos do Edge. Isso significa que os componentes do Edge são executados como o usuário "apigee". Se necessário, é possível executar componentes como um usuário diferente.
Diretório de instalação
Por padrão, o instalador grava todos os arquivos no diretório /opt/apigee. Não é possível mudar o local desse diretório. Embora não seja possível alterar esse diretório, você pode criar um
link simbólico para mapear /opt/apigee para outro local, conforme descrito em
Como criar um link simbólico de /opt/apigee.
Nas instruções deste guia, o diretório de instalação é indicado como
/opt/apigee.
Como criar um link simbólico de /opt/apigee
Antes de criar o link simbólico, é preciso criar um usuário e um grupo chamados "apigee". Esse é o mesmo grupo e usuário criado pelo instalador do Edge.
Para criar o link simbólico, siga estas etapas antes de fazer o download do arquivo bootstrap_4.51.00.sh. Você precisa executar todas estas etapas como raiz:
- Crie o usuário e o grupo "apigee":
groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
- Crie um link simbólico de
/opt/apigeepara a raiz de instalação desejada:ln -Ts /srv/myInstallDir /opt/apigee
Em que /srv/myInstallDir é o local desejado dos arquivos do Edge.
- Mude a propriedade da raiz de instalação e do link simbólico para o usuário "apigee":
chown -h apigee:apigee /srv/myInstallDir /opt/apigee
Configuração da rede
A Apigee recomenda que você verifique a configuração de rede antes da instalação. O instalador espera que todas as máquinas tenham endereços IP fixos. Use os seguintes comandos para validar a configuração:
hostnameretorna o nome da máquina.hostname -iretorna o endereço IP do nome do host que pode ser acessado por outras máquinas.
Dependendo do tipo e da versão do sistema operacional, talvez seja necessário editar
/etc/hosts e /etc/sysconfig/network se o nome do host não estiver
definido corretamente. Consulte a documentação do seu sistema operacional específico para mais informações.
Se um servidor tiver várias placas de interface, o comando "hostname -i" vai retornar uma lista de endereços IP separados por espaços. Por padrão, o instalador do Edge usa o primeiro endereço IP retornado, o que pode não estar correto em todas as situações. Como alternativa, é possível definir a seguinte propriedade no arquivo de configuração de instalação:
ENABLE_DYNAMIC_HOSTIP=y
Com essa propriedade definida como "y", o instalador solicita que você selecione o endereço IP a ser usado como parte da instalação. O valor padrão é "n". Consulte Referência do arquivo de configuração do Edge para mais informações.
Wrappers TCP
Os wrappers TCP podem bloquear a comunicação de algumas portas e afetar a instalação do OpenLDAP, do Postgres e do
Cassandra. Nesses nós, verifique /etc/hosts.allow e
/etc/hosts.deny para garantir que não haja restrições de porta nas portas necessárias
do OpenLDAP, Postgres e Cassandra.
iptables
Verifique se não há políticas de iptables que impeçam a conectividade entre nós nas portas do Edge necessárias. Se necessário, é possível interromper o iptables durante a instalação usando o comando:
sudo/etc/init.d/iptables stop
No CentOS 7.x:
systemctl stop firewalld
Acesso ao diretório
A tabela a seguir lista os diretórios em nós do Edge que têm requisitos especiais de processos do Edge:
| Serviço | Diretório | Descrição |
|---|---|---|
| Roteador | /etc/rc.d/init.d/functions |
O roteador do Edge usa o roteador NGINX e requer acesso de leitura a
Se o processo de segurança exigir que você defina permissões em
É possível definir as permissões como 744 para permitir o acesso de leitura a
|
| Zookeeper | /dev/random |
A biblioteca de cliente do Zookeeper requer acesso de leitura ao gerador de números aleatórios
/dev/random. Se /dev/random estiver bloqueado na leitura, o
serviço do Zookeeper poderá não ser iniciado. |
Cassandra
Todos os nós do Cassandra precisam estar conectados a um anel. O Cassandra armazena réplicas de dados em vários nós para garantir confiabilidade e tolerância a falhas. A estratégia de replicação para cada keyspace do Edge determina os nós do Cassandra em que as réplicas são colocadas. Para mais informações, consulte Sobre o fator de replicação e o nível de consistência do Cassandra.
O Cassandra ajusta automaticamente o tamanho do heap do Java com base na memória disponível. Para mais informações, consulte Como ajustar recursos do Java em caso de degradação do desempenho ou alto consumo de memória.
Depois de instalar o Edge para nuvem privada, verifique se o Cassandra está configurado
corretamente examinando o arquivo
/opt/apigee/apigee-cassandra/conf/cassandra.yaml. Por exemplo, verifique se o script de instalação do Edge para nuvem privada definiu as seguintes
propriedades:
cluster_nameinitial_tokenpartitionerseedslisten_addressrpc_addresssnitch
Banco de dados PostgreSQL
Depois de instalar o Edge, é possível ajustar as seguintes configurações do banco de dados PostgreSQL com base na quantidade de RAM disponível no 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 definir esses valores:
- Edite o arquivo postgresql.properties:
vi /opt/apigee/customer/application/postgresql.properties
Se o arquivo não existir, crie-o.
- Defina as propriedades listadas acima.
- Salve as mudanças.
- Reinicie o banco de dados PostgreSQL:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
Limites do sistema
Verifique se você definiu os seguintes limites do sistema nos nós do Cassandra e do processador de mensagens:
- Nos nós do Cassandra, defina os limites de memlock, nofile e espaço de endereço (as) flexíveis e rígidos para o
usuário de instalação (o padrão é "apigee") em
/etc/security/limits.d/90-apigee-edge-limits.conf, conforme mostrado abaixo: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
Para mais informações, consulte Configurações de produção recomendadas na documentação do Apache Cassandra.
- Nos nós do processador de mensagens, defina o número máximo de descritores do arquivo abertos como 64K
em
/etc/security/limits.d/90-apigee-edge-limits.conf, conforme mostrado abaixo:apigee soft nofile 32768 apigee hard nofile 65536
Se necessário, é possível aumentar esse limite. Por exemplo, se você tiver um grande número de arquivos temporários abertos ao mesmo tempo.
Se você encontrar o seguinte erro em um roteador ou processador de mensagens
system.log, talvez os limites do descritor do arquivo estejam muito baixos:"java.io.IOException: Too many open files"
Para verificar os limites de usuário, execute:
# su - apigee $ ulimit -n 100000
Se você ainda estiver atingindo os limites de arquivos abertos depois de definir os limites do descritor de arquivo como
100000, abra um tíquete com o suporte do Apigee Edge para mais solução de problemas.
Serviços de segurança de rede (NSS, na sigla em inglês)
O Network Security Services (NSS) é um conjunto de bibliotecas que oferece suporte ao desenvolvimento de aplicativos de cliente e servidor com segurança de rede. Verifique se você instalou o NSS v3.19 ou mais recente.
Para verificar sua versão atual:
yum info nss
Para atualizar o NSS:
yum update nss
Consulte este artigo da RedHat para mais informações.
Desativar a busca DNS no IPv6 ao usar o NSCD (Name Service Cache Daemon)
Se você tiver instalado e ativado o NSCD (Name Service Cache Daemon), os processadores de mensagens vão fazer duas buscas DNS: uma para IPv4 e outra para IPv6. Desative a busca DNS no IPv6 ao usar o NSCD.
Para desativar a busca DNS no IPv6:
- Em cada nó do processador de mensagens, edite
/etc/nscd.conf. - Defina a seguinte propriedade:
enable-cache hosts no
Desativar o IPv6 no Google Cloud Platform para RedHat/CentOS 7
Se você estiver instalando o Edge no RedHat 7 ou no CentOS 7 no Google Cloud Platform, desative o IPv6 em todos os nós do Qpid.
Consulte a documentação do RedHat ou do CentOS da sua versão específica do SO para ver instruções sobre como desativar o IPv6. Por exemplo, você pode:
- Abra
/etc/hostsem um editor. - Insira um caractere "#" na coluna um da linha a seguir para transformá-la em comentário:
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- Salve o arquivo.
AMI da AWS
Se você estiver instalando o Edge em uma Amazon Machine Image (AMI) da AWS para Red Hat Enterprise Linux 7.x, primeiro execute o seguinte comando:
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
Ferramentas
O instalador usa as seguintes ferramentas UNIX na versão padrão, conforme fornecido pelo EL5 ou EL6.
|
awk |
expr |
libxslt |
rpm |
unzip |
|
basename |
grep |
lua-socket |
rpm2cpio |
useradd |
|
bash |
nome do host |
ls |
sed |
wc |
|
bc |
ID |
net-tools |
sudo |
wget |
|
curl |
libaio |
perl (de procps) |
tar |
xerces-c |
| cyrus-sasl | libdb4 | pgrep (do procps) | tr | delícia |
|
data |
libdb-cxx |
ps |
uuid |
chkconfig |
| dirname | libibverbs | pwd | uname | |
| escola | librdmacm | python |
ntpdate
A Apigee recomenda que os horários dos seus servidores estejam sincronizados. Se ainda não estiver configurado,
o utilitário ntpdate pode servir para essa finalidade, que verifica
se os servidores estão sincronizados. Use yum install ntp para instalar o
utilitário. Isso é especialmente útil para replicar configurações do OpenLDAP. Configure o fuso horário do servidor em UTC.
openldap 2.4
A instalação no local requer o OpenLDAP 2.4. Se o servidor tiver uma conexão de Internet,
o script de instalação do Edge vai fazer o download e a instalação
do OpenLDAP. Se o servidor não tiver uma conexão de Internet, verifique se o OpenLDAP já está instalado antes de executar o script de instalação do Edge. No RHEL/CentOS, execute
yum install openldap-clients openldap-servers para instalar o OpenLDAP.
Para instalações de 13 hosts e de 12 hosts com dois data centers, a replicação do OpenLDAP é necessária porque há vários nós que hospedam o OpenLDAP.
Firewalls e hosts virtuais
O termo virtual geralmente é sobrecarregado na área de TI, assim como ocorre com uma
implantação do Apigee Edge para nuvem privada e hosts virtuais. Para esclarecer, há dois usos principais
do termo virtual:
- Máquinas virtuais (VM): não são obrigatórias, mas algumas implantações usam a tecnologia de VM para criar servidores isolados para os componentes da Apigee. Os hosts de VM, assim como os físicos, podem ter interfaces de rede e firewalls.
- Hosts virtuais: endpoints da Web, semelhantes a um host virtual do Apache.
Um roteador em uma VM pode expor vários hosts virtuais, desde que eles sejam diferentes entre si no alias de host ou na porta de interface.
Como exemplo de nomenclatura, um único servidor físico A pode estar executando duas VMs,
chamadas "VM1" e "VM2". Vamos supor que a "VM1" exponha uma interface Ethernet virtual, que é chamada de
"eth0" dentro da VM e que recebe o endereço IP 111.111.111.111 pela
máquina de virtualização ou por um servidor DHCP de rede. Em seguida, suponha que a VM2 exponha uma interface Ethernet
virtual também chamada de "eth0" e que receba um endereço IP
111.111.111.222.
Podemos ter um roteador da Apigee em execução em cada uma das duas VMs. Os roteadores expõem endpoints de host virtual, como neste exemplo hipotético:
O roteador da Apigee na VM1 expõe três hosts virtuais na interface eth0 (que tem um endereço IP específico), api.mycompany.com:80, api.mycompany.com:443 e test.mycompany.com:80.
O roteador na VM2 expõe api.mycompany.com:80 (mesmo nome e porta expostos pela
VM1).
O sistema operacional do host físico pode ter um firewall de rede. Se tiver, esse firewall
precisa ser configurado para transmitir o tráfego TCP destinado às portas que estão sendo expostas nas interfaces
virtualizadas (111.111.111.111:{80, 443} e 111.111.111.222:80). Além
disso, o sistema operacional de cada VM pode fornecer o próprio firewall na interface eth0, e eles
também precisam permitir que o tráfego das portas 80 e 443 se conecte.
O caminho base é o terceiro componente envolvido no roteamento de chamadas de API para diferentes proxies de API
que você pode ter implantado. Os pacotes de proxy de API podem compartilhar um endpoint se tiverem caminhos de base
diferentes. Por exemplo, um caminho de base pode ser definido como http://api.mycompany.com:80/
e outro como http://api.mycompany.com:80/salesdemo.
Nesse caso, você precisa de um balanceador de carga ou de um Traffic Director de algum tipo para dividir o tráfego http://api.mycompany.com:80/ entre os dois endereços IP (111.111.111.111 na VM1 e 111.111.111.222 na VM2). Essa função é
específica para sua instalação e é configurada pelo grupo de rede local.
O caminho base é definido quando você implanta uma API. No exemplo acima, é possível implantar duas APIs,
mycompany e testmycompany, para a organização
mycompany-org com o host virtual que tem o alias de host
api.mycompany.com e a porta definida como 80. Se você não declarar um
caminho de base na implantação, o roteador não saberá para qual API enviar as solicitações
recebidas.
No entanto, se você implantar a API testmycompany com o URL de base
/salesdemo, os usuários vão acessar essa API usando
http://api.mycompany.com:80/salesdemo. Se você implantar a API mycompany com o
URL de base /, os usuários vão acessar a API pelo URL
http://api.mycompany.com:80/.
Licenciamento
Cada instalação do Edge requer um arquivo de licença exclusivo que você recebe da Apigee. Você precisará fornecer o caminho para o arquivo de licença ao instalar o servidor de gerenciamento, por exemplo, /tmp/license.txt.
O instalador copia o arquivo de licença para
/opt/apigee/customer/conf/license.txt.
Se o arquivo de licença for válido, o servidor de gerenciamento vai validar a validade e a contagem permitida de processadores de mensagens (MP, na sigla em inglês). Se alguma das configurações de licença estiver expirada, os registros vão estar no
seguinte local: /opt/apigee/var/log/edge-management-server/logs.
Nesse caso, entre em contato com o suporte da Apigee Edge para saber mais detalhes sobre a migração.
Se você ainda não tiver uma licença, entre em contato com a equipe de vendas da Apigee.