Este artigo apresenta detalhes de um projeto-piloto real de implementação de um modelo de implementação de nuvem privada recém-concluído pela equipe da IBM® Global Delivery. A iniciativa foi realizada aproveitando uma pilha de hardware e software IBM. Neste caso, o software foi o Tivoli®, como parte do roteiro estratégico. O objetivo deste artigo (criado para IT Specialists, arquitetos e líderes de equipes técnicas) é oferecer um guia de referência técnica para qualquer projeto relacionado à nuvem. Será possível encontrar neste artigo informações úteis para todos os níveis de experiência — de iniciantes a profissionais avançados.
Este artigo considera que o leitor tem conhecimento de conceitos básicos de computação em nuvem e operações, também deve estar familiarizado com conceitos de AIX ®, Power®VM e virtualização. Não é preciso conhecimento extenso de produtos WebSphere®, DB2®, ou Tivoli, mas o uso desses produtos é mencionado no artigo.
Os seguintes tópicos são abordados:
- Funções de usuário do Tivoli System Automation Manager e do Tivoli Directory Server.
- Um exemplo do processo de fornecimento na nuvem.
- Truques e dicas gerais aprendidos durante o projeto, incluindo soluções alternativas para heap do DB2, diversas URLs diferentes que facilitam os testes das suas instalações, testes de verificação, formas alternativas de iniciar o Tivoli System Automation Manager, uma solução alternativa para o problema de sendmail e recomendações de uso do navegador
- Uma lista de exercícios de amostra que o usuário pode executar para testar a implementação.
Usando a nuvem privada do Tivoli System Automation Manager
Vamos iniciar com uma observação sobre o gerenciamento de ID do usuário no Tivoli System Automation Manager.
Durante a instalação do Tivoli System Automation Manager, também é instalada automaticamente uma instância do Tivoli Directory Server (TSAM-TDS). A interface com o usuário de autoatendimento da Web 2.0 do Tivoli System Automation Manager permite que os administradores da nuvem incluam e removam usuários da nuvem. O Tivoli System Automation Manager é desenvolvido com base no Tivoli Process Automation Engine (TPAE). Quando um administrador da nuvem usa a interface com o usuário da Web 2.0 para incluir um usuário, o ID do usuário é incluído no TSAM-TDS. Além disso, as informações do usuário também são armazenadas em várias tabelas de banco de dados do Tivoli Process Automation Engine, incluindo MAXIMO.maxuser, MAXIMO.person e MAXIMO.email.
Em outras palavras, incluir um usuário envolve alterar os dados de TSAM-TDS e do Tivoli Process Automation Engine. Quando um usuário efetua login, ele é autenticado com o TSAM-TDS.
O Tivoli System Automation Manager fornece quatro tipos de funções de usuário e qualquer usuário deve ser mapeado em uma destas:
- Cloud admin: Pode visualizar e executar tudo. Cria, modifica e remove uma equipe ou usuário.
- Cloud manager: Tem recursos de somente leitura do cloud admin, pode visualizar tudo, mas não pode executar nada.
- Team admin: Pode visualizar tudo em sua área de equipe, pode executar todas as tarefas de administrador para sua área de equipe.
- Team user: Pode visualizar tudo em sua área de equipe, não pode executar tarefas de administrador para sua área de equipe.
Lembre-se de que um usuário só pode possuir uma dessas funções. E um usuário pode estar em zero ou mais equipes.
Processo de fornecimento na nuvem
A GUI da Web 2.0 do Tivoli System Automation Manager é autoexplicativa. O objetivo dessa interface com o usuário é proporcionar uma interface fácil de usar que não exige treinamento. A Figura 1 mostra o processo de fornecimento simples.
Figura 1. Processo de fornecimento na nuvem
Antes do fornecimento, é necessária a conclusão de um processo de registro para obter acesso ao portal de autoatendimento na nuvem. Isso significa que apenas usuários autorizados podem ter acesso ao portal e fazer um pedido de fornecimento.
Assim que o usuário da nuvem solicita um serviço, um fluxo de trabalho é acionado, por meio do qual uma notificação por e-mail é enviada aos administradores da nuvem, que podem validar a solicitação. Se aprovada, o fornecimento ocorre automaticamente.
São recebidas duas notificações por e-mail a respeito de seu fornecimento. A primeira indica que sua solicitação de serviço foi aceita. A segunda contém seu nome do host virtual e informações de conexão (amostra abaixo).
Amostra de notificação de detalhes da solicitação de fornecimento
Dear Joydipto Banerjee
You have started a new Project WAS_L2SOA with the following topology:
The server vioclient26ftp has been added with the following parameters:
Hostname of Server: vioclient26ftp
Number of CPU(s): 2
Number of tenths of physical CPUs: 2
Amount of Memory: 4096 MB
Swap Size: 0 MB
Disk Space Size: 20
Admin Password:XXXXXX
Link to the Server: http://vioclient26ftp:80
The user of group GBS USER has been notifed.
Regards,
Your Service Automation Team
|
Use esses detalhes para se conectar ao novo servidor via SSH.
Há mais detalhes sobre como usar as várias ofertas no portal de autoatendimento no guia do usuário do Tivoli System Automation Manager.
Truques e testes que podem ser usados
Aqui se encontram algumas dicas, truques e soluções alternativas aprendidas no andamento deste projeto, que podem ser úteis.
Solução alternativa para problemas de heap do DB2
Parece haver um problema em que o DB2 não recebe espaço de heap suficiente. Talvez apareçam erros como este:
9/7/09 3:13:01:956 EDT 0000002c SystemOut O 2009.09.07 03:13:01.955 com.tivoli.dms.common.DBOperation executeUpdate Tivoli Web Gateway Device_Manager_Server tsam72mgmt com.ibm.db2.jcc.b.SqlException: DB2 SQL Error: SQLCODE=-956, SQLSTATE=57011, SQLERRMC=null, DRIVER=3.53.70
ou
SQL0956C Not enough storage is available in the database heap to process the statement.
Uma solução alternativa é usar o seguinte procedimento:
- Pare o Tivoli Provisioning Manager (
./tio.sh stop). - Execute os seguintes comandos:
db2 connect to maxdb71
db2 update db cfg using dbheap 6144
db2 connect reset
db2stop force
db2start
URLs para ajudar a testar sua configuração de instalação
É aconselhável testar a configuração periodicamente durante a fase de instalação. Dependendo do qual estágio do processo de instalação, alguns desses links talvez não sejam ativados. Contudo, todos esses links devem funcionar após a conclusão da instalação.
- Cloud.ear: https://*hostname*:9443/cloud/rest/templates/
- TSAM REST: https://*hostname*:9443/maxrest/rest/mbo/PO
- IL REST: https://*hostname*:9443/ilrest/rest/os/TPV01IMGLIBENTRYMSTR
- MEAWeb UI: http://*hostname*:80/meaweb/verify
- Web2.0 UI: https://*hostname*:9443/SimpleSRM
Observação: Aqui, *hostname* se refere ao nome de host/endereço IP do servidor de gerenciamento.
12 testes de verificação úteis para checar a estabilidade da instalação
É possível executar esses testes no fim de cada segmento durante a fase de instalação para a verificação do status do middleware e do Tivoli Provisioning Manager, das URLs do WebSphere Application Server Console e do Agent Manager, entre outros.
Verificar o status do middleware
Local: servidor de gerenciamento
Script:
/images/install_images/TSAMBASE7200/install/tools/tsam_middleware.sh status
User Name / Password Details: tioadmin/<your password>
WAS: wasadmin/<your password>
Database (MAXDB71): maximo/<your password>
|
Verificar o status do Tivoli Provisioning Manager
Local: servidor de gerenciamento
Script:
/opt/IBM/tivoli/tpm/tools/tioStatus.sh |
Scripts usados para iniciar/parar o TPM
Local: servidor de gerenciamento
Scripts:
/opt/IBM/tivoli/tpm/tools/tio.sh <start/stop> /opt/IBM/tivoli/tpm/tools/tio.sh <start/stop> -t - TPM /opt/IBM/tivoli/tpm/tools/tio.sh <start/stop> -w - WAS |
Verificar a URL do WebSphere Application Server Console
https://*hostname*:9043/ibm/console/logon.jsp Username: wasadmin Password: <your password> |
Verificar a URL do Agent Manager
http://*hostname*:9513/AgentMgr/Info |
Verificar o console HMC
https://<your HMC server hostname>/hmc/connect Username: hscroot Password: <your password> |
Verificar a URL do Maximo
https:// *hostname*:9443/maximo/ui/login Username: maxadmin Password: <your password> |
Verificar a URL de Ajuda do Maximo
https:// *hostname*:9443/maximohelp/en/ |
Verificar o servlet de rastreamento do gerenciador de dispositivos
http:// *hostname*:9080/dmserver/TraceServlet?trace=set |
Verificar a URL de entrega de conteúdo dinâmico
http:// *hostname*:9080/admin/ Username: maxadmin Password: <your password> |
Login para verificar o servidor de gerenciamento após iniciar o Tivoli Provisioning Manager.
/usr/ibm/tivoli/common/COP/logs/tio_start.log /usr/ibm/tivoli/common/COP/logs/tio_start_service.log /opt/IBM/tivoli/tpm/lwi/logs /usr/IBM/WebSphere/AppServer/profiles/ctgDmgr01/logs/dmgr /usr/IBM/WebSphere/AppServer/profiles/ctgAppSrv01/logs/nodeagent /usr/IBM/WebSphere/AppServer/profiles/ctgAppSrv01/logs/MXServer /usr/IBM/WebSphere/AppServer/profiles/casprofile/logs/server1 |
Login para verificar o servidor de administração
/opt/IBM/SMP/logs |
Como verificar sua versão de instalação do Service Request Manager (SRM)
Sua instalação do SRM está adequada se for possível visualizar a versão instalada por meio de Help > System Information na GUI do Maximo (Figura 2).
Figura 2. Verificando a versão de instalação do SRM
Uma maneira mais adequada de iniciar o middleware do Tivoli System Automation Manager
Em vez de usar o script de início de middleware fornecido, o tsm_middleware.sh, é melhor iniciar o middleware e o Tivoli Provisioning Manager usando o seguinte procedimento (o modo manual de iniciá-lo):
Inicie o banco de dados como ctginst1, db2inst1 e idsccmdb: su - ctginst1 -c "db2start";su - db2inst1 -c "db2start";su - idsccmdb -c "db2start";
Inicie o LDAP como idsccmdb: /opt/IBM/ldap/V6.2/bin/idsdirctl -D cn=root -w <your password> start
Inicie o WebSphere Application Server e o Tivoli Provisioning Manager como tioadmin:
su - tioadmin cd $TIO_HOME/tools ./tio.sh start |
É recomendado, no mínimo, o Firefox 3.0.7.0
Versões mais antigas do Firefox não conseguem abrir a barra de ativação de instalação do Tivoli System Automation Manager. Use a versão 3.0.7.0 para obter resultados melhores.
Problema com sendmail
Se a funcionalidade de e-mail não estiver funcionando no servidor de gerenciamento, não se esqueça de verificar se o daemon de sendmail está em execução, se não, inicie manualmente o sendmail.
Algumas amostras de etapas de teste na nuvem
Por fim, apresento uma lista de casos de uso de amostra que podem ser executados por meio da GUI de autoatendimento quando a configuração da nuvem privada estiver concluída. A lista abrange a maioria das áreas nas quais se testa a funcionalidade. Novamente, as instruções sobre como executar essas tarefas são fornecidas no guia do usuário do Tivoli System Automation Manager.
- Gerenciamento de usuários
- Criação de equipes
- Modificação de informações da equipe
- Remoção de uma equipe
- Modificação de informações sobre o usuário
- Remoção de um usuário
- Criação de projeto e inclusão de servidores virtuais
- Processo de aprovação de solicitação
- Inclusão de servidores virtuais em um projeto existente
- Modificação de datas de reserva
- Cancelamento de projeto
- Modificação de servidor
- Reconfiguração de senha do servidor
- Reinicialização de servidor
- Remoção de servidor virtual
- Inicialização de servidor
- Parada de servidor
- Backup e restauração de imagens do servidor
- Criação de imagem do servidor
- Remoção de imagem do servidor virtual
- Restauração de servidor a partir da imagem
- Gerenciamento da biblioteca de imagens
- Registro de imagem na biblioteca de imagens
- Remoção de registro de imagem da biblioteca de imagens
Neste artigo final, forneci os conceitos de planejamento de segundo plano para uma implementação de projeto no mundo real, a fim de desenvolver uma nuvem IaaS/PaaS local, incluindo:
- Quais são as funções de usuário e as permissões designadas a cada um.
- As informações básicas de como o processo de fornecimento na nuvem funciona.
- O conhecimento (dicas e truques) que a equipe reuniu a partir de sua experiência no mundo real ao desenvolver um sistema na nuvem.
- Uma lista de verificação de exercícios que podem ser executados após a instalação, e durante o funcionamento, para testar completamente sua nuvem privada.
Na Parte 2, expliquei:
- As etapas gerais dos processos de instalação e configuração (os detalhes individuais podem ser encontrados nos guias de instalação/configuração dos componentes de software escolhidos). Isso inclui a preparação dos servidores de gerenciamento e administração, configuração do software na nuvem e realização de atividades de pós-instalação.
- A integração do Tivoli System Automation Manager com outros produtos Tivoli para aumentar a produtividade (como ITUAM para fornecer serviços de monitoramento/faturamento).
Na Parte 1, expliquei:
- As cinco fases de desenvolvimento: ID de requisitos, configuração de infraestrutura, modelos de arquitetura/implementação, desenvolvimento de infraestrutura, implementação.
- Alguns detalhes sobre as soluções exclusivas projetadas para este projeto: uma visualização de serviço para separar consumidor e provedor, como avaliar e desenvolver a definição de serviço e como componentes foram escolhidos.
- A estrutura típica de nuvem e como os componentes interagem.
- A lista de requisitos de software/hardware para este projeto.
Tendo esta série como guia, é possível planejar e implementar uma nuvem IaaS/PaaS local.
Gostaria de expressar minha gratidão aos seguintes membros da minha equipe que estiveram envolvidos nesse trabalho e contribuíram direta ou indiretamente para este artigo: Biswajit Mohapatra, Debasis R. Choudhuri, Santhosh Vandyil, Birla P. Raj.
Também gostaria de agradecer à equipe do India Cloud Lab e ao IBM Software Group, da Polônia e Alemanha, por suas orientações valiosas durante esse projeto.
Aprender
-
Para o Tivoli System Automation Manager, há manuais de produto, guias de instalação e outras documentações disponíveis no Centro de Documentação do IBM Tivoli System Automation Manager.
-
Nos recursos para desenvolvedores de nuvem do developerWorks, descubra e compartilhe o conhecimento e a experiência dos desenvolvedores de aplicativos e serviços que estão desenvolvendo os seus projetos de implementação de nuvem.
-
Próximas etapas: Descubra como acessar o IBM SmartCloud Enterprise.
-
Para obter conteúdo e recursos para desenvolvedores técnicos em computação em nuvem, consulte Cloud computing: Fundamentals.
-
Siga o developerWorks no Twitter.
Obter produtos e tecnologias
-
Consulte as imagens do produto disponíveis para IBM SmartCloud Enterprise.
Discutir
-
Participe de um grupo sobre computação em nuvem no developerWorks.
-
Leia todos os ótimos blogs sobre nuvem no developerWorks.
-
Participe da comunidade do developerWorks, uma rede profissional e conjunto de ferramentas comunitárias para conectar, compartilhar e colaborar.

Joydipto Banerjee é IT Specialist senior no grupo de Modernização de Aplicativos de Negócios da IBM. Ele foi um membro importante da equipe que desenvolveu uma solução de infraestrutura dinâmica de nuvem como uma primeira etapa para fornecer à IBM India Global Delivery um ambiente de computação em nuvem. Joydipto tem Bacharelado de Engenharia em Ciência da Computação e, em 2010, recebeu o prêmio IBM Global Technical Achievement.