Vou explicar aqui, resumidamente, como configurar um grupo de WebLogic Servers em cluster.
Primeiro vou configurar depois explico como funciona.
( Nos exemplos usarei windows 2003 server e o Oracle Weblogic 10.3.2 )
Passos:
– Primeiro instale weblogic em todas as maquinas que vc desejar;
– Depois escolha uma delas para ser a “Administrativa”, nela executaremos o AdminServer ( depois explico )
PASSO 1, Configurando o Admin do Cluster!
Acesse o configuration wizard…
> Primeiro crie um domínio… ( Create new WebLogic Domain )
> Na próxima tela apenas de “next”… ( Generate a Domain configured automatically … )
> Na tela para dar nome para o domínio dê um nome original, inovador como o sugerido “base_domain” hahahah
> Coloque uma senha para seu administrador, no meu caso coloquei “weblogic1”
> Em Optional Configuration escolha “Admin server” e “managed server”
> escolha a porta para seu servidor, aproveite e habilite a porta de ssl 🙂
Agora nos proximos passos o bixo pega:
> Crie um managed server ( veja na imagem como criei o meu )
> Criado um managed server crie seu cluster 🙂 [ sugiro fortemente o uso de multicast ]
> Jogue seu server dentro do Cluster ( vai ficar parecido com a imagem abaixo… )
> Crie uma “machine”
> Jogue a maquina no server ( vai ficar parecido com a imagem abaixo… )
> Dê um next e um CREATE 🙂
PRONTO SEU SERVIDOR ADMIN ESTÁ PRONTO!
————————————–
Agora que a parte fácil passou vamos pra parte chata 🙂
PASSO 2, Configurando um dos nós do Cluster!
( vai ser igual ao admin com algumas coisas a menos 🙂 )
> Crie um novo dominio weblogic;
> Next … ( Generate domain bla bla bla )
> Use o MESMO nome de domínio que o servidor admin ( no nosso caso base_domain )
> Informe uma senha para seu admin ( no meu caso foi weblogic1 )
> Production Mode ( exatamente como no server admin )
> Selecione apenas “Managed servers”( como na figura )
> Configure seu segundo ( ou sei la ) managed server 🙂 [ veja como ficou meu segundo server na figura ]
> Crie um cluster com o mesmo nome e config de seu admin server! [ vide imagem ]
> Jogue seu managed server para o cluster….
> Crie uma machine para o segundo server [ vide imagem ]
> Jogue seu managed server na machine ( como na imagem abaixo )
> Finalize a criação 🙂
PRONTO SEU MANAGED SERVER ESTÁ PRONTO!
————————————–
Mas não se iluda, vc tem um cluster só na teoria!
Vamos fazer ele rolar na pratica!
PASSO 3, Iniciando o admin do cluster!
Me permita explicar algo antes.
No nosso cluster, apenas um servidor fará os deploys e a disponibilização de jndis e tal. Portanto, executaremos apenas o Admin server em uma
máquina.
Não se preocupe, o weblogic fará o trabalho duro de copiar os jars, wars, ears e tudo mais para os outros servidores.
Inicie o servidor AdminServer na máquina Admin ( vide imagem )
( provavelmente irá pedir o usuario e senha do admin, pois colocamos como production server )
Veja na imagem abaixo o start do servidor… irá aparecer (RUNNING) no meio do texto.
PASSO 4, Iniciando os nós do cluster!
Apesar de não parecer, nosso admin server também é um nó do cluster. Se ele cair o resto continuará em pé e o resto cair e ele estiver de pé tudo
funcionará também.
Partindo do suporto que ele é um nó, explicarei como iniciar os managed servers.
o comando é mais ou menos assim: $WEB_LOGIC_HOME/user_projects/domains/base_domain/bin/startManagedWebLogic.cmd
( no meu caso é : C:OracleMiddlewareuser_projectsdomainsbase_domainbinstartManagedWebLogic.cmd )
Para iniciar o managed server do primeiro servidor digite o comando:
startManagedWebLogic.cmd Server_1 http://[IP_SERVER_1]:7001
( localhost pq é a mesma maquina que roda o admin server )
E para iniciar o managed server do segundo servidor digite:
startManagedWebLogic.cmd Server_2 http://[IP_SERVER_1]:7001
Agora sim voce tem um cluster funcionando 😉
EXPLICANDO
Se o servidor admin cair não tem problema, pois ele é utilizado basicamente para deployar ( instalar ) pacotes no seu cluster, se quiser desligar ele logo depois de deployar um pacote, voce verificará que a outra máquina ainda estará respondendo aos chamados.
Observe também que cada máquina do cluster responde por seu próprio IP, nenhuma máquina “pegará” o IP da outra. Se voce quiser fazer um nome unico para ambas as máquina sugiro o uso de DNS.
Por ex, em seu arquivo de hosts ( windows ) [ usualmente em c:WindowsSystem32driversetchosts ] coloque:
[IP_SERVER_1] CLUSTER.COM
[IP_SERVER_2] CLUSTER.COM
Assim quando vc digitar CLUSTER.COM:7201 ele pegará o primeiro servidor ativo 🙂
Observações:
– As portas não precisam ser as mesmas que coloquei, podem ser variadas;
– Não precisa colocar os servidores em “production mode”, isto apenas torna mais burocratico para subir pacotes 🙂
– Os nomes dos servidor devem ser iguais em todos os nós do cluster e no admin server;
Instruções práticas e claras! Parabéns!
Creio que na parte de configuração do hosts, ficaria:
[IP_SERVER_1] CLUSTER.COM
[IP_SERVER_2] CLUSTER.COM (Aqui o IP estava repetido-SERVER_1). Correto?
Saudações!
Valeu Alexandre!
Atualizei o post, espero estar certo agora hehe 🙂
Estou usando a versão 10.3 do WebLogic, porém em nenhum momento aparece a tela Optional Configuration, onde posso escolher “Admin server” e “managed server”. (as demais telas aparecem)
Acredito que isso atrapalha a configuração.
O que posso fazer?
To com umas dúvidas.
Se eu estiver fazendo a instalação em servidores diferentes o weblogic vai ter que estar no ar em ambas as maquinas para eu poder startar o nó correto?
Outra pergunta
em qual servidor eu executo o comando “startManagedWebLogic.cmd Server_2 http://[IP_SERVER_1]:7001” ? é executado no servidor que ficou como admin?
obrigado
Wendell Gouveia Rodrigues
Buenas Wendell!
Se na primeira pergunta voce quis dizer instalar um pacote ear/war, a resposta é depende . 🙂
Quando fazemos o deploy ( instalação do pacote ) podemos informar em qual máquina do cluster o pacote estará disponível ou se ele será disponibilizado em todos os nós.
( Esta opção aparece logo após o fornecimento do caminho do pacote, se eu não me engano ehhehe )
Sobre a segunda pergunta, o comando “startManagedWebLogic.cmd” deve ser executado em todas as máquinas que você queira que façam parte do cluster. ( e que estejam configuradas tb )
Mas lembre-se que apenas uma máquina será a ADMIN SERVER e que o comando “startManagedWebLogic.cmd” que será executado em todos os nós do cluster deverá ter como parametro o nome do nó e o ip da máquina ADMIN.
Ahhh, o comando “startManagedWebLogic.cmd” pode ser executado também na máquina que roda o admin. Inclusive todos os clusters que montei usei uma das máquinas como admin 🙂
.Dart
Muito bom na verdade eu provavelmente vou fazer o download. Graças
Show… Bem explicado
Ola, bom dia e parabéns pelo post.
Eu posso usar o mesmo conceito em uma instalação do SOA e OSB?
Estou para montar um ambiente com 3 servidores onde um será admin e os outros dois jvms em cluster.
Obrigado