JBoss EAP 6

27
JBoss EAP 6 Elvis Rocha Consultor JBoss [email protected]

description

JBoss EAP 6 Standalone x Domain

Transcript of JBoss EAP 6

Page 1: JBoss EAP 6

JBoss EAP 6

Elvis RochaConsultor [email protected]

Page 2: JBoss EAP 6

JBoss EAP 6

Estrutura de arquivosConfiguração e Administração

Subsistemas e PerfisModo Standalone

Modo Domain

Page 3: JBoss EAP 6

Estrutura de Arquivos

Page 4: JBoss EAP 6

Configuração

• Configuração centralizada – Arquivo únicoNão há mais arquivos de configuração espalhados.

Domain: domain.xmlStandalone: standalone.xml

• As alterações feitas nas ferramentas de administração são refletidas nos arquivos de configuração.

Page 5: JBoss EAP 6

Configuração

Page 6: JBoss EAP 6

Administração

• Console Line Interface (CLI)/jboss-eap-6.0/bin/jboss-cli.sh

• Console Webhttp://localhost:9990/console

Page 7: JBoss EAP 6

Administração

Page 8: JBoss EAP 6

JBoss-CLI

• Adicionando usuários:/jboss-eap-6.0/bin/add-user.sh

• Acessando a interface de administração:./jboss-eap-6.0/bin/jboss-cli.sh --connect Connected to standalone controller at localhost:9999 [standalone@localhost:9999 /] :read-attribute(name=server-state) { "outcome" => "success", "result" => "running" } [domain@localhost:9999 /] deploy -all-server-groups /home/helloworld.war

Page 9: JBoss EAP 6

Web Console

• Disponível por padrão em:http://localhost:9990/console

• Disponível tanto para o modo Standalone quanto para o modo Domain.

Page 10: JBoss EAP 6

Administração

• Standalone:Gerencia a instância JBoss atual

• Domain:Gerencia várias instâncias a partir de um único pontoFaz deploy em várias instâncias de uma vezFaz rollback em várias instâncias de uma vez

Page 11: JBoss EAP 6

Subsistemas

• Um subsistema é um serviço ou componente que existe no servidor e que tem sua configuração agrupada.Exemplo: Transaction Manager, Messaging, EJB, WebServer, JGroups, etc..

• Cada subsistema tem sua seção de configuração. (standalone.xml ou domain.xml)

Page 12: JBoss EAP 6

Perfis

• A quantidade de subsistemas que um grupo ou um servidor vai possuir depende do perfil escolhido.

Default: Perfil web do JavaEE com suporte a WebServices RestFul e EJB3Full – Suporte a tudo da especificação JavaEE sem clusterHa – Perfil default com suporte a clusterFull-ha – Perfil Full com suporte a cluster

Page 13: JBoss EAP 6

Perfis

• Exemplo da configuração de um perfil:<domain xmlns="urn:jboss:domain:1.0"> .... <profile name=”web”> .... <subsystem xmlns="urn:jboss:domain:web:1.0"> <connector name="http" protocol="HTTP/1.1" socket-binding="http" scheme="http"/> <virtual-server name="localhost"> <alias name="example.com"/> </virtual-server> </subsystem> <subsystem xmlns="urn:jboss:domain:weld:1.0"/> </profile> ....

Page 14: JBoss EAP 6

Modo Standalone

• Cada instância é gerenciada independentemente• O Usuário é responsável pelas mudanças nos

servidores• Semelhante às versões anteriores do JBoss

Page 15: JBoss EAP 6

Standalone em Cluster• Servidores Standalone em Alta Disponibilidade (HA)

O modo Standalone se difere do modo Domain somente no gerenciamento, os serviços continuam da mesma forma.

Page 16: JBoss EAP 6

Modo Domain

• Várias instâncias com a mesma configuração.• Política dos servidores definida no arquivo

domain.xml• Servidores podem ser heterogêneos no

domínio (conceito de grupos).

Page 17: JBoss EAP 6

Domain - Topologia

Page 18: JBoss EAP 6

Domain Controller

• É um Host Controller configurado para ser “master”, chamado de Domain Controller

• Os outros Host Controllers são contralados pelo Domain Controller

• A tarefa de administração é feita interagindo com o Domain Controller

• O DC coordena o push de configurações nos Host Controllers e nas instâncias

Page 19: JBoss EAP 6

Host Controller

• Um por máquina• Chamado via ./host-slave.sh• Quando iniciado contacta o Domain para obter

as configurações.• Controla as instâncias naquela máquina (a

gerência é feita pelo Domain)• Coordena as mudanças entre as instâncias• Não atende requisições

Page 20: JBoss EAP 6

Grupos

• Cada instância criada no Domain pertence a um Grupo (server-group)

• Um Domain pode ter vários Grupos• A maioria das configurações são feitas por

grupo: Deploy, Sockets, Datasources, etc..

Page 21: JBoss EAP 6

Domain - Instâncias

• Uma instância de JBoss no modo domain é derivada de dois lugares:

Configurações relativas ao domain: domain/configuration/domain.xml – no Domain Controller Configurações específicas do host:domain/configuration/host-slave.xml – No Host Controller

Page 22: JBoss EAP 6

Master (Domain Controller)<domain xmlns="urn:jboss:domain:1.0"> ...

<profiles><profile name="web">... details of the web profile</profile> <profile name=“jms">... details of the messaging profile</profile>

</profiles> <socket-binding-groups>

<socket-binding-group name="web-sockets" default-interface="local"> ...</socket-binding-group> <socket-binding-group name=“jms-sockets" default-interface="local"> ...</socket-binding-group>

</socket-binding-groups> <server-groups>

<server-group name="web-group" profile=“web"> <socket-binding-group ref="web-sockets"/> </server-group> <server-group name="jms-group" profile=“jms"> <socket-binding-group ref=“jms-sockets"/> </server-group>

</server-groups> </domain>

Page 23: JBoss EAP 6

Slave (Host Controller)<host name=“slave1" xmlns="urn:jboss:domain:1.3"> <interfaces> <interface name=“public"> <inet-address value="192.168.204.13"/> </interface> <servers> <server name="instancia-web-A" group="web-group" auto-start="false"/> <server name="instancia-jms-A" group="jms-group" auto-start="false"> <!-- para evitar conflitos de porta no socket-group --> <socket-bindings port-offset="100"/> </server> </servers></host>

Page 24: JBoss EAP 6

Domain - Topologia Física

Page 25: JBoss EAP 6

Domain – Topologia Lógica

Page 26: JBoss EAP 6

Passos• Domain:– Escolho um perfil (full-ha)– Escolho sockets do perfil (portas) (full-ha-sockets)– Crio um grupo: (grupo-fnde)

• Host Controllers (Slaves):– Conecto o host no domain– Crio as instâncias e defino um grupo para elas (hot add)

Page 27: JBoss EAP 6

Dúvidas?