Requisitos de hardware
Você precisa atender aos seguintes requisitos mínimos de hardware para uma infraestrutura altamente disponível em um ambiente de nível de produção.
O vídeo a seguir fornece orientações de tamanho de alto nível 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 precisam ser acrescentados ao espaço em disco 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 | Mínimo de disco rígido |
---|---|---|---|
Cassandra | 16 GB | 8 núcleos | 250 GB de armazenamento local com SSD compatível com 2.000 IOPS |
Processador/roteador de mensagens na mesma máquina | 16 GB | 8 núcleos | 100GB |
Processador de mensagens (independente) | 16 GB | 8 núcleos | 100GB |
Roteador (independente) | 16 GB | 8 núcleos | 100GB |
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 SSD, com suporte a 1.000 IOPS ou mais* |
Analytics: mestre ou espera do Postgres (independente) | 16GB* | 8 núcleos* | 500 GB a 1 TB** de armazenamento de rede***, de preferência com back-end SSD, com suporte a 1.000 IOPS ou mais* |
Analytics: Qpid independente | 8 GB | 4 núcleos | 30 GB a 50 GB de armazenamento local 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 outros nós Qpid. |
OpenLDAP/UI/Servidor de gerenciamento | 8 GB | 4 núcleos | 60 GB |
UI/servidor de gerenciamento | 4 GB | 2 núcleos | 60 GB |
OpenLDAP (independente) | 4 GB | 2 núcleos | 60 GB |
* Ajuste os requisitos do sistema Postgres com base na capacidade de processamento:
** O valor do disco rígido do Postgres é baseado na análise pronta para uso capturada pelo Edge. Se você adicionar valores personalizados aos dados de análise, esses valores precisarão ser aumentados. Use a seguinte fórmula para estimar o armazenamento necessário:
Exemplo:
*** O armazenamento em rede é recomendado para o banco de dados Postgresql porque:
|
Além disso, a lista a seguir mostra os requisitos de hardware necessários para instalar os Serviços de monetização (incompatíveis com a instalação All-in-One):
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 | 500 GB a 1 TB de armazenamento de rede, de preferência com back-end SSD, com suporte a 1.000 IOPS ou mais, ou use a regra da tabela acima. |
Analytics: mestre do Postgres ou instância autônoma | 16 GB | 8 núcleos | 500 GB a 1 TB de armazenamento de rede, de preferência com back-end SSD, com suporte a 1.000 IOPS ou mais, ou use a regra da tabela acima. |
Analytics: Qpid independente | 8 GB | 4 núcleos | De 40 GB a 500 GB de armazenamento local com SSD ou HDD rápido
Para instalações maiores que 250 TPS, é recomendado um HDD com armazenamento local compatível com 1.000 IOPS. |
Requisitos do sistema operacional e de 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
Você precisa de uma versão com suporte do Java 1.8 instalada em cada máquina antes da instalação. Os JDKs compatíveis estão listados em Softwares e versões compatíveis.
Verifique se a variável de ambiente JAVA_HOME
aponta para a raiz do JDK para
o usuário que executa a instalação.
SELinux
Dependendo das suas configurações do SELinux, o Edge pode encontrar problemas ao instalar e iniciar componentes do Edge. Se necessário, é possível desativar o SELinux ou defini-lo para o modo permissivo durante a instalação e, em seguida, reativá-lo após a instalação. Consulte Instalar o utilitário de configuração da Apigee do Edge para mais informações.
Criando o usuário "apigee"
O procedimento de instalação cria um usuário do sistema Unix chamado "apigee". Os diretórios e arquivos de borda são de propriedade da "apigee", assim como os processos do Edge. Ou seja, os componentes do Edge são executados como o usuário "apigee". Se necessário, execute os 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 esse local do diretório. Não é possível alterar esse diretório, mas é possível criar um
link simbólico para mapear /opt/apigee
para outro local, conforme descrito em
Como criar um link simbólico a partir de /opt/apigee.
Nas instruções deste guia, o diretório de instalação é identificado como /opt/apigee
.
Criando um link simbólico de /opt/apigee
Antes de criar o link simbólico, crie um usuário e um grupo chamados "apigee". Esses são o mesmo grupo e usuário criados pelo instalador do Edge.
Para criar o link simbólico, siga estas etapas antes de fazer o download do arquivo bootstrap_4.52.00.sh. Realize 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/apigee
para 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 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 da 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:
hostname
retorna o nome da máquina.hostname -i
retorna o endereço IP do nome do host que pode ser endereçado de outras máquinas.
Dependendo do tipo e da versão do seu 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" retornará uma lista de endereços IP separada por espaços. Por padrão, o instalador do Edge usa o primeiro endereço IP retornado, 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 a Referência do arquivo de configuração de borda para saber mais.
Wrappers de TCP
Os TCP Wrappers podem bloquear a comunicação de algumas portas e podem afetar a instalação do OpenLDAP, Postgres e
Cassandra. Nesses nós, marque /etc/hosts.allow
e /etc/hosts.deny
para garantir que não haja restrições nas portas OpenLDAP, Postgres e Cassandra necessárias.
iptables
Verifique se não há políticas de iptables impedindo a conectividade entre nós nas portas de borda necessárias. Se necessário, interrompa o iptables durante a instalação usando este 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 nos nós do Edge que têm requisitos especiais dos processos do Edge:
Serviço | Diretório | Descrição |
---|---|---|
Roteador | /etc/rc.d/init.d/functions |
O roteador de borda usa o roteador Nginx e exige acesso de leitura a
Se o processo de segurança exigir que você defina permissões em
Você pode definir as permissões como 744 para permitir o acesso de leitura para |
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 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 de cada keyspace de borda determina os nós do Cassandra em que as réplicas são colocadas. Para saber mais, acesse Sobre o fator de replicação e o nível de consistência do Cassandra.
O Cassandra ajusta automaticamente o tamanho da pilha Java com base na memória disponível. Para saber mais, consulte Como ajustar recursos Java no 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_name
initial_token
partitioner
seeds
listen_address
rpc_address
snitch
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 suas edições.
- 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 de sistema nos nós do Cassandra e do processador de mensagens:
- Nos nós do Cassandra, defina limites flexíveis e rígidos de memlock, nãofile e endereço (como) 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
- Nos nós do processador de mensagens, defina o número máximo de descritores de arquivos abertos como 64 mil
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ê vir o seguinte erro em um roteador ou processador de mensagens
system.log
, é possível que os limites do descritor de arquivos estejam muito baixos:"java.io.IOException: Too many open files"
Para verificar os limites de usuários, execute:
# su - apigee $ ulimit -n 100000
Se você ainda estiver atingindo os limites de arquivos abertos depois de definir os limites do descritor de arquivos como
100000
, abra um tíquete com o suporte do Apigee Edge para mais soluções de problemas.
Serviços de segurança de rede (NSS, na sigla em inglês)
Os serviços de segurança de rede (NSS, na sigla em inglês) são um conjunto de bibliotecas compatíveis com o desenvolvimento de aplicativos cliente e servidor com segurança ativada. É necessário instalar o NSS v3.19 ou posterior.
Para verificar a versão atual:
yum info nss
Para atualizar o NSS:
yum update nss
Consulte este artigo (em inglês) da RedHat para saber mais.
Desativar a busca DNS no IPv6 ao usar o NSCD (Name Service Cache Daemon)
Se você instalou e ativou o NSCD (Name Service Cache Daemon), os processadores de mensagens farão duas buscas DNS: uma para IPv4 e outra para IPv6. Desative a busca DNS no IPv6 ao usar 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 CentOS 7 no Google Cloud Platform, será necessário desativar o IPv6 em todos os nós Qpid.
Consulte a documentação do RedHat ou do CentOS da sua versão específica do SO para instruções sobre como desativar o IPv6. Por exemplo, você pode:
- Abra
/etc/hosts
em um editor. - Para comentar, insira um caractere "#" na primeira coluna a seguir:
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- Salve o arquivo.
AWS AMI
Se você estiver instalando o Edge em uma AWS Amazon Machine Image (AMI) para o Red Hat Enterprise Linux 7.x, primeiro será necessário executar o seguinte comando:
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
Ferramentas
O instalador usa as seguintes ferramentas do UNIX na versão padrão, conforme fornecido pelo EL5 ou EL6.
awk |
expr |
libxslt |
rpm |
unzip |
basename |
grep |
Lua-socket |
rpm2cpio |
adição de usuário |
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 (de procps) | tr | delícia |
date |
libdb-cxx |
ps |
uuid |
chkconfig |
dirname | libibvérbios | pwd | nome de usuário | |
echo | Librdmacm | python |
ntpdate
A Apigee recomenda que os horários dos servidores sejam sincronizados. Se essa finalidade ainda não foi configurada,
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 é muito útil para replicar as configurações do OpenLDAP. Você configurou 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 com a Internet,
o script de instalação do Edge vai fazer o download e instalar o
OpenLDAP. Se o servidor não tiver uma conexão com a Internet, confirme 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 instalações de 12 hosts com dois data centers, a replicação OpenLDAP é necessária porque há vários nós hospedando o OpenLDAP.
Firewalls e hosts virtuais
O termo virtual
geralmente fica sobrecarregado na área de TI e, por isso, ocorre com um
Apigee Edge para implantação de 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 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 no alias de host ou na porta da interface.
Apenas como um exemplo de nomenclatura, um único servidor físico A
pode estar executando duas VMs,
denominadas "VM1" e "VM2". Vamos supor que "VM1" exponha uma interface Ethernet virtual, chamada de "eth0" dentro da VM, e que tenha o endereço IP 111.111.111.111
atribuído 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 "eth0" e receba o 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 os endpoints do host virtual, como no exemplo hipotético:
O roteador da Apigee na VM1 expõe três hosts virtuais na interface eth0 (que tem algum
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. Nesse caso, esse firewall
precisa ser configurado para transmitir tráfego TCP limitado para as 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, que
também precisa permitir a conexão do tráfego das portas 80 e 443.
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 poderão compartilhar um endpoint se tiverem caminhos
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 diretor de tráfego de algum tipo dividindo 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 específica e é configurada pelo grupo de rede local.
Ele é definido quando você implanta uma API. A partir do 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 de api.mycompany.com
e a porta definida como 80
. Se você não declarar um caminho 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 base de
/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 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 recebido da Apigee. Será necessário informar 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 validará a expiração e a contagem permitida do processador de mensagens (MP). Se alguma das configurações de licença expirar, você poderá encontrar os registros no seguinte local: /opt/apigee/var/log/edge-management-server/logs
.
Nesse caso, entre em contato com o suporte do Apigee Edge para mais detalhes.
Se você ainda não tem uma licença, entre em contato com a equipe de vendas da Apigee.