Base de conhecimento  /  Gerenciador de aplicativos em nuvem  /  Tutoriais
Base de conhecimento  /  Gerenciador de aplicativos em nuvem  /  Tutoriais

Exemplos de associação (binding)

Atualizado por Guillermo Sánchez em 16 de maio de 2019
Código do artigo: kb/72

Neste artigo:

Visão geral

As vinculações associam diferentes partes de um aplicativo de várias camadas através da rede. Esses componentes podem ser partes de uma stack de aplicativos, um pool de balanceamento de carga, um cluster e muito mais. As vinculações permitem que os serviços façam detecções automáticas e conexões dinâmicas em escala. Elas também reconfiguram as instâncias que precisam manter a própria configuração atualizada.

Público

Usuários do Cloud Application Manager que utilizam recursos de Application Lifecycle Management (ALM - gerenciamento de ciclo de vida de aplicativos).

Pré-requisitos

  • Acesso ao site Applications (módulo Application Lifecycle Management) do Cloud Application Manager como um usuário autorizado de uma conta ativa do Cloud Application Manager.

  • Um provedor já configurado no Cloud Application Manager. Ver provedores.

Breve recapitulação sobre as associações 

As vinculações são variáveis que você pode adicionar às caixas. Elas representam uma conexão entre uma caixa implementada e outras instâncias. A explicação detalhada sobre as associações pode ser encontrada neste artigo informativo.

Um exemplo simples

A forma mais fácil de entender a função das associações é usá-las. Esta parte do artigo usará a associação para estabelecer uma relação cliente-servidor simples entre duas instâncias. Este artigo vai guiá-lo pelo processo de configuração de um emparelhamento entre o servidor NFS e as caixas de cliente com associações.

Como criar uma script box de servidor NFS

Crie a caixa do servidor NFS no seu espaço de trabalho

Novo Script

Servidor de demonstração do NFS

Script de instalação
#!/bin/bash -e
if [[ -e /etc/redhat-release || -e /etc/system-release ]]; then
  yum -y install nfs-utils nfs-utils-lib
  else
  export DEBIAN_FRONTEND=noninteractive
  apt-get update
  apt-get -y install nfs-kernel-server
fi
Script de configuração
#!/bin/bash -e
mkdir -p 
echo 
# Configure etc/hosts
sed  -i '/# BEGIN NFS CONFIGURATION/,/# END NFS CONFIGURATION/d' /etc/exports
cat >> /etc/exports << \
EXPORTS_CONFIG
# BEGIN NFS CONFIGURATION
  (rw,sync,no_root_squash,no_subtree_check)
# END NFS CONFIGURATION
EXPORTS_CONFIG
if [[ -e /etc/redhat-release || -e /etc/system-release ]]
then
  service rpcbind start
  service nfs start
else
  service nfs-kernel-server restart
fi
echo "NFS Test OK" > /data/export2/NFS_test

Adicione duas variáveis à caixa do servidor NFS (instantâneo). EXPORT_HOST para a rede dos clientes NFS e EXPORT_DIRECTORY é o diretório do compartilhamento de arquivo.

Variável EXPORT_HOST

Variável EXPORT_DIRECTORY

caixa do cliente NFS

Novo Script
Use o script abaixo para o script de instalação:

if [[ -e /etc/redhat-release || -e /etc/system-release ]]; then
  yum update -y
  yum -y install nfs-utils nfs-utils-lib
else
  export DEBIAN_FRONTEND=noninteractive
  apt-get -y install nfs-kernel-server
fi

O script de configuração é o seguinte:

#!/bin/bash
{% if server %}
if mount | grep  > /dev/null; then
  echo "Folder already mounted"
else
  mkdir -p 
  mount : 
fi
{% endif %}
exit 0;

Configure duas novas variáveis para esta caixa. Uma é LOCAL_PATH para o ponto de montagem do cliente NFS e a outra é a variável da associação.

Variável LOCAL_PATH

Associação

Application box com o servidor e o cliente NFS

Quando as duas script boxes tiverem sido criadas, a criação da application box será o próximo passo.
Para criar uma caixa de aplicação, clique em "Novo" -> "Caixa de aplicativos", digite "Demonstração NFS"
Editar a recém-criada Caixa de Aplicação no Código de seção do portal, clicar em "Novo" e digitar "Demonstração NFS" na janela de pesquisa

Application Box
Editar topologia

Clique em "Servidor de demonstração do NFS" e adicione a tag "nfsserver" à caixa

Adicionar tag

Marcar as vinculações permite que os serviços detectem uns aos outros automaticamente. No momento da implementação, para as associações definidas nas caixas, precisamos aplicar tags de instâncias às quais elas podem ser vinculadas. Neste exemplo, pedimos que o cliente NFS associe-se às instâncias marcadas como nfsserver.
Repita o processo para adicionar o "Cliente de demonstração do NFS". Em Editar topologia da caixa, deve haver uma sugestão para a associação nfsserver. Selecione "nfsserver" e "Salvar".
Na página Topologia da application box, você deve ver a conectividade entre as duas caixas.

Adicionar associação

Associação

Uso dos parâmetros na associação

Parâmetros na associação 

A partir do script de configuração, o nfsserver.address.private e o nfsserver.EXPORT_DIRECTORY são transferidos da caixa nfsserver para a caixa nfsclient.
Este é um exemplo simples e pode ser usado em um ambiente mais complexo, como o exemplo de JBoss que será abordado na próxima seção.

Aplicativo de três camadas do catálogo

O próximo exemplo é do catálogo do Cloud Application Manager. Trata-se do aplicativo de amostra JBoss. Neste exemplo, as tags de associação estão sendo amplamente usadas. Para recapitular o conceito de tags de associação,  há duas formas de utilizá-las em um ambiente complexo:
- Vínculos dinâmicos: Associações dinâmicas: as associações com tags descobrem a conectividade da instância de forma dinâmica. Elas servem como um mecanismo de autodescoberta, em que as instâncias com tags de associação podem conectar-se automaticamente com outras instâncias que correspondem às tags. Uma para várias associações: as associações podem conectar um ou mais serviços uns aos outros, novamente, usando tags.

Este exemplo consiste de 0 caixas de script para criar um ambiente redundante de três camadas do aplicativo JBoss. O ambiente tem um emparelhamento de servidores MySQL no back-end, um emparelhamento de servidor de aplicativo JBoss e dois balanceadores de carga no DMZ.

Topologia do aplicativo JBoss

Para redundância de arquieve, duas tags são criadas para este ambiente, zona a e zona-b. As zonas são rotuladas para utilizar a capacidade de várias zonas dos provedores de nuvem, como Zonas de Disponibilidade em AWS e Azure. Quando a caixa de script é tag com zona a, apenas política de implantação com zona-a a reivindicação seria utilizada para criar uma instância na zona a.
serviços se conectam entre si usando tags de ligação durante a implantação. Neste exemplo, os balanceadores de carga Nginx são conectados aos servidores de aplicativo JBoss como segue:

Associação do aplicativo JBoss

Os servidores de aplicativos são marcados com tags de camada de aplicativo, aos quais os balanceadores de carga estão se conectando independente da localização das zonas (ver abaixo):

Marcação com tag do aplicativo JBoss

As etapas semelhantes são necessárias para que os servidores JBoss se associem aos servidores de banco de dados:

Marcação com tag do aplicativo JBoss para o banco de dados

Conforme mostra o diagrama acima, os servidores de aplicativos estão se associando ao banco de dados para criar o aplicativo de três camadas. Isso também permite que os servidores de aplicativos utilizem os parâmetros dentro do ambiente de associação, a partir da caixa de balanceador de carga ou da caixa de banco de dados. Para saber mais informações sobre as application boxes, consulte este artigo.
As caixas de aplicativo JBoss estão disponíveis aqui. Experimente a flexibilidade da associação no Cloud Application Manager.

Como contatar o suporte do Cloud Application Manager

Lamentamos que você tenha encontrado um problema com o Cloud Application Manager. Consulte as dicas de troubleshooting ou entre em contato com o suporte do Cloud Application Manager e apresente detalhes e capturas de tela, conforme possível.

Para problemas relacionados a chamadas de API, envie o corpo da solicitação junto com os detalhes referentes ao problema.

Em caso de erro de caixa, compartilhe a caixa no espaço de trabalho que sua organização e o Cloud Application Manager podem acessar e anexe os registros.

  • Linux: SSH e localize o registro em /var/log/elasticbox/elasticbox-agent.log
  • Windows: Windows: RDP na instância para localizar o registro em ProgramDataElasticBoxLogselasticbox-agent.log
Powered by Translations.com GlobalLink OneLink SoftwarePowered By OneLink