Red Hat Training
A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform
Capítulo 4. Configurando o JBoss EAP para Ser Executado como um Serviço
4.1. Configurando o JBoss EAP como um Serviço no Red Hat Enterprise Linux (Instalações ZIP e do Instalador)
Pré-requisitos
- Instale o JBoss EAP como uma instalação ZIP ou do Instalador.
- Privilégios de administrador no servidor.
Configurando o JBoss EAP como um Serviço no Red Hat Enterprise Linux
Personalize as opções de inicialização no arquivo
jboss-eap.conf.O script de inicialização e o arquivo de configuração associado a ele estão localizados no diretório
EAP_HOME/bin/init.d/. Abrajboss-eap.confem um editor de texto e defina as opções para a sua instalação do JBoss EAP.Há várias opções no arquivo
jboss-eap.confe você deve fornecer pelo menos os valores corretos para oJBOSS_HOMEe oJBOSS_USER.You can customize the other options provided in the configuration file by uncommenting and editing the respective lines. If you do not, the service will default to starting a standalone JBoss EAP server using the default configuration file,
standalone.xml.NotaIf you want the service to start JBoss EAP as a managed domain, add
JBOSS_MODE=domaintojboss-eap.conf.To specify custom domain configuration files, add
JBOSS_DOMAIN_CONFIG=DOMAIN_CONFIG_FILE.xmlandJBOSS_HOST_CONFIG=HOST_CONFIG_FILE.xml. By default, JBoss EAP usesdomain.xmlandhost.xmlas the domain configuration files.Copie os arquivos de serviço nos diretórios do sistema.
Copie o arquivo de configuração do serviço modificado ao diretório
/etc/default.sudo cp EAP_HOME/bin/init.d/jboss-eap.conf /etc/default
Copie o script de inicialização do serviço no diretório
/etc/init.de dê a ele permissões para execução:sudo cp EAP_HOME/bin/init.d/jboss-eap-rhel.sh /etc/init.d sudo chmod +x /etc/init.d/jboss-eap-rhel.sh
Adicione o novo serviço
jboss-eap-rhel.shà lista dos serviços iniciados automaticamente, usando o comando de gerenciamento do serviçochkconfig.sudo chkconfig --add jboss-eap-rhel.sh
Verifique se o serviço foi instalado corretamente usando um dos seguintes comandos:
Para o Red Hat Enterprise Linux 6:
sudo service jboss-eap-rhel.sh start
Para o Red Hat Enterprise Linux 7:
sudo service jboss-eap-rhel start
O serviço será iniciado. Caso você obtenha um erro, verifique os logs de erro e certifique-se de que as opções no arquivo de configuração estejam definidas corretamente.
Para que o serviço seja iniciado automaticamente ao iniciar o servidor do Red Hat Enterprise Linux, execute o seguinte comando:
sudo chkconfig jboss-eap-rhel.sh on
Caso deseje remover o serviço do JBoss EAP, use o procedimento a seguir:
Removendo o Serviço do JBoss EAP no Red Hat Enterprise Linux
Caso o serviço esteja em execução, abra um terminal e interrompa o serviço com um dos seguintes comandos:
Para o Red Hat Enterprise Linux 6:
sudo service jboss-eap-rhel.sh stop
Para o Red Hat Enterprise Linux 7:
sudo service jboss-eap-rhel stop
Remova o JBoss EAP da lista de serviços:
sudo chkconfig --del jboss-eap-rhel.sh
Exclua o arquivo de configuração do serviço e o script de inicialização:
sudo rm /etc/init.d/jboss-eap-rhel.sh sudo rm /etc/default/jboss-eap.conf
4.2. Configurando o JBoss EAP como um Serviço no Red Hat Enterprise Linux (Instalação RPM)
Pré-requisitos
- Instale o JBoss EAP como uma instalação RPM.
- Privilégios de administrador no servidor.
An RPM installation of JBoss EAP installs everything that is required to run JBoss EAP as a service. Use one of the following commands to activate the JBoss EAP service to start automatically at system boot.
For the commands below, replace EAP_SERVICE_NAME with either eap7-standalone for a standalone JBoss EAP server, or eap7-domain for a managed domain.
Para o Red Hat Enterprise Linux 6:
chkconfig EAP_SERVICE_NAME on
Para o Red Hat Enterprise Linux 7:
systemctl enable EAP_SERVICE_NAME.service
To start or stop an RPM installation of JBoss EAP on demand, see the RPM instructions in the JBoss EAP Configuration Guide.
See the RPM service configuration files appendix in the JBoss EAP Configuration Guide for further details and options.
4.3. Configurando o JBoss EAP como um Serviço no Microsoft Windows Server
Pré-requisitos
- Instale o JBoss EAP como uma instalação ZIP ou do Instalador.
- Privilégios de administrador no servidor.
-
A variável de ambiente do sistema
JAVA_HOMEdeve ser definida. - A instância do servidor do JBoss EAP não deve estar em execução.
O uso do comando set para a definição das variáveis de ambiente do sistema em um prompt de comando do Windows Server não definirá permanentemente a variável de ambiente. Você deve usar o comando setx ou a interface do Sistema no Painel de Controle.
Configurando o JBoss EAP como um Serviço no Microsoft Windows Server
Crie duas variáveis de ambiente do sistema:
-
JBOSS_HOMEapontando para o diretório de instalação do JBoss EAP. -
NOPAUSE=1
-
Instale o Pacote Jsvc no JBoss Core Services
Caso não esteja configurado ainda, baixe e extraia o pacote Jsvc do JBoss Core Services.
- Open a browser and log in to the Red Hat Customer Portal JBoss Software Downloads page.
- Select Apache Jsvc in the Product drop-down menu.
- Selecione a versão mais recente no menu suspenso Versão.
- Find Red Hat JBoss Core Services Apache Jsvc in the list, ensuring that you select the correct platform and architecture for your system, and click the Download link.
Extraia o arquivo ZIP baixado no diretório contendo o seu diretório de instalação do JBoss EAP.
Isto resultará em um diretório
jbcs-jsvc-<VERSION>com a mesma profundidade que o seu diretório de instalação do JBoss EAP. Por exemplo:C:\Program Files ├── jboss-eap-7.0 │ ├── bin │ └── ... └── jbcs-jsvc-<VERSION>
Instale o Serviço
Abra um terminal e mude os diretórios para
EAP_HOME\bin.Seguem abaixo exemplos de um comando básico
service.bat installpara a criação de um novo serviço tanto para um servidor autônomo como para um servidor em um domínio gerenciado. Para uma lista de todas as opções possíveis, executeservice.bat, sem argumento algum.Execute o comando a seguir, ajustando o nível de log para o serviço como necessário:
Para um servidor autônomo:
service.bat install /loglevel INFO
Para um servidor em domínio gerenciado:
Use the
/hostparameter to specify the name of the JBoss EAP host controller being controlled by the service. You can see valid values for the name by executingls /hostin the management CLI.Replace
EAP_HOST_NAMEin the command below with your JBoss EAP host controller name. If you specify the/hostparameter without providing a JBoss EAP host controller name, the name defaults tomaster.service.bat install /host EAP_HOST_NAME /loglevel INFO
Um novo serviço do Windows será criado com o nome
JBossEAP7.Verifique o novo serviço no console de
ServiçosAbra o console do Windows Services (
services.msc) e verifique se o serviço foi criado.Caso o nome do serviço padrão tenha sido usado, o novo serviço terá o nome de exibição na lista de serviços do Windows como:
JBossEAP7. A partir do console de Serviços, é possível iniciar e interromper o serviço, assim como alterar as suas configurações de como e quando ele deve ser iniciado.Iniciando e Interrompendo o Serviço do JBoss EAP a partir de um Terminal
Para iniciar o serviço a partir de um terminal, use o seguinte comando, alterando o nome do serviço caso necessário:
net start JBossEAP7
Para interromper o serviço a partir de um terminal, use o seguinte comando, alterando o nome do serviço caso seja necessário:
net stop JBossEAP7
Caso deseje remover o serviço do JBoss EAP, use o procedimento a seguir:
Removendo o Serviço do JBoss EAP no Microsoft Windows Server
Caso o serviço esteja em execução, primeiro abra um terminal e interrompa o serviço executando o comando
net stopcom o nome do serviço:net stop JBossEAP7
Em um terminal, mude os diretórios para
EAP_HOME\bine execute o seguinte comando:service.bat uninstall
4.4. Configurando o JBoss EAP como um Serviço Usando Jsvc
The Apache Jsvc component of the JBoss Core Services collection can be used to run JBoss EAP as a background service on Red Hat Enterprise Linux and Solaris.
No Red Hat Enterprise Linux, recomendamos que você use native methods para executar o JBoss EAP como um serviço.
O Jsvc é um conjunto de bibliotecas e aplicativos que permite a execução de aplicativos Java em plataformas do tipo UNIX como um serviço em segundo plano. Isto permite que os aplicativos executem operações como um usuário privilegiado e, depois, troquem a identidade para um usuário não privilegiado.
O Jsvc usa três processos: um processo inicializador, um processo controlador e um processo controlado. O processo controlado também é o thread principal do Java. Se o JVM falha, o processo controlador reinicia-o dentro de 60 segundos. O Jsvc é um processo daemon e, para o JBoss EAP, ele deve ser iniciado por um usuário privilegiado.
Instale o Pacote Jsvc no JBoss Core Services
- Para as instalações ZIP ou do instalador:
- Open a browser and log in to the Red Hat Customer Portal JBoss Software Downloads page.
- Select Apache Jsvc in the Product drop-down menu.
- Selecione a versão mais recente no menu suspenso Versão.
- Find Red Hat JBoss Core Services Apache Jsvc in the list, ensuring that you select the correct platform and architecture for your system, and click the Download link.
Extraia o arquivo ZIP baixado no diretório contendo o seu diretório de instalação do JBoss EAP.
Isto resultará em um diretório
jbcs-jsvc-<VERSION>com a mesma profundidade que o seu diretório de instalação do JBoss EAP. Por exemplo:/var/opt/ ├── jboss-eap-7.0 │ ├── bin │ └── ... └── jbcs-jsvc-<VERSION>
The command examples for using Jsvc to start JBoss EAP assume that a
jbossuser has been created. If you have not already created a user for JBoss EAP, run the following commands to create thejbossuser and group:# groupadd -f -g 185 -r jboss # useradd -r -u 185 -g jboss -d EAP_HOME -s /sbin/nologin -c "JBoss" jboss
- Para as instalações RPM no Red Hat Enterprise Linux:
- Faça o login no Red Hat Subscription Manager.
- Clique em Sistemas no Inventário do Assinante.
Subscreva-se para os repositórios CDN do JBoss Core Services para a arquitetura e versão do seu sistema operacional:
Para o Red Hat Enterprise Linux 6:
- jb-coreservices-1-for-rhel-6-server-rpms
Para o Red Hat Enterprise Linux 7:
- jb-coreservices-1-for-rhel-7-server-rpms
Execute o seguinte comando, como usuário root, para instalar o Jsvc:
# yum groupinstall jbcs-jsvc
Be sure to set the JAVA_HOME system environment variable.
Usando o Jsvc para Iniciar o JBoss EAP como um Servidor Autônomo
Os comandos a seguir são usados para iniciar e interromper o JBoss EAP em um modo autônomo usando o Jsvc. As tabelas abaixo apresentam os caminhos necessários para os comandos para uma instalação ZIP/do instalador do JBoss EAP ou uma instalação RPM.
Tabela 4.1. Localizações do Arquivo Jsvc para Instalações ZIP/do instalador - Servidor Autônomo
| Referência de Arquivo em Instruções | Localização do Arquivo |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Tabela 4.2. Localizações do Arquivo Jsvc para Instalações RPM - Servidor Autônomo
| Referência de Arquivo em Instruções | Localização do Arquivo |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Inicie um servidor autônomo do JBoss EAP usando o Jsvc:
JSVC_BIN \ -outfile LOG_DIR/jsvc.out.log \ -errfile LOG_DIR/jsvc.err.log \ -pidfile LOG_DIR/jsvc.pid \ -user jboss \ -D[Standalone] -XX:+UseCompressedOops -Xms1303m \ -Xmx1303m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true \ -Dorg.jboss.boot.log.file=LOG_DIR/server.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -cp EAP_HOME/jboss-modules.jar:JSVC_JAR \ -Djboss.home.dir=EAP_HOME \ -Djboss.server.base.dir=EAP_HOME/standalone \ @org.jboss.modules.Main -start-method main \ -mp EAP_HOME/modules \ -jaxpmodule javax.xml.jaxp-provider \ org.jboss.as.standalone
Interrompa um servidor autônomo do JBoss EAP usando o Jsvc:
JSVC_BIN \ -stop \ -outfile LOG_DIR/jsvc.out.log \ -errfile LOG_DIR/jsvc.err.log \ -pidfile LOG_DIR/jsvc.pid \ -user jboss \ -D[Standalone] -XX:+UseCompressedOops -Xms1303m \ -Xmx1303m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true \ -Dorg.jboss.boot.log.file=LOG_DIR/server.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -cp EAP_HOME/jboss-modules.jar:JSVC_JAR \ -Djboss.home.dir=EAP_HOME \ -Djboss.server.base.dir=EAP_HOME/standalone \ @org.jboss.modules.Main -start-method main \ -mp EAP_HOME/modules \ -jaxpmodule javax.xml.jaxp-provider \ org.jboss.as.standalone
Usando o Jscv para Iniciar o JBoss EAP como um Domínio Gerenciado
Os comandos a seguir são usados para iniciar e interromper o JBoss EAP em um domínio gerenciado usando o Jsvc. As tabelas abaixo apresentam os caminhos necessários para os comandos para uma instalação ZIP/do instalador do JBoss EAP ou uma instalação RPM.
Tabela 4.3. Localizações do Arquivo Jsvc para Instalações ZIP/do instalador - Domínio Gerenciado
| Referência de Arquivo em Instruções | Localização do Arquivo |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Tabela 4.4. Localizações do Arquivo Jsvc para Instalações RPM - Domínio Gerenciado
| Referência de Arquivo em Instruções | Localização do Arquivo |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Before you issue the following command, be sure to set the JAVA_HOME system environment variable.
Inicie o JBoss EAP em um domínio gerenciado usando o Jsvc:
JSVC_BIN \
-outfile LOG_DIR/jsvc.out.log \
-errfile LOG_DIR/jsvc.err.log \
-pidfile LOG_DIR/jsvc.pid \
-user jboss \
-nodetach -D"[Process Controller]" -server -Xms64m \
-Xmx512m -XX:MaxPermSize=256m \
-Djava.net.preferIPv4Stack=true \
-Djboss.modules.system.pkgs=org.jboss.byteman \
-Djava.awt.headless=true \
-Dorg.jboss.boot.log.file=LOG_DIR/process-controller.log \
-Dlogging.configuration=file:CONF_DIR/logging.properties \
-Djboss.modules.policy-permissions \
-cp "EAP_HOME/jboss-modules.jar:JSVC_JAR" \
org.apache.commons.daemon.support.DaemonWrapper \
-start org.jboss.modules.Main -start-method main \
-mp EAP_HOME/modules org.jboss.as.process-controller \
-jboss-home EAP_HOME -jvm "${JAVA_HOME}"/bin/java \
-mp EAP_HOME/modules -- \
-Dorg.jboss.boot.log.file=LOG_DIR/host-controller.log \
-Dlogging.configuration=file:CONF_DIR/logging.properties \
-Djboss.modules.policy-permissions \
-server -Xms64m -Xmx512m -XX:MaxPermSize=256m \
-Djava.net.preferIPv4Stack=true \
-Djboss.modules.system.pkgs=org.jboss.byteman \
-Djava.awt.headless=true -- -default-jvm "${JAVA_HOME}"/bin/java \
&Interrompa o JBoss EAP em um domínio gerenciado usando o Jsvc:
JSVC_BIN \ -stop \ -outfile LOG_DIR/jsvc.out.log \ -errfile LOG_DIR/jsvc.err.log \ -pidfile LOG_DIR/jsvc.pid \ -user jboss \ -nodetach -D"[Process Controller]" -server -Xms64m \ -Xmx512m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true \ -Dorg.jboss.boot.log.file=LOG_DIR/process-controller.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -cp "EAP_HOME/jboss-modules.jar:JSVC_JAR" \ org.apache.commons.daemon.support.DaemonWrapper \ -start org.jboss.modules.Main -start-method main \ -mp EAP_HOME/modules org.jboss.as.process-controller \ -jboss-home EAP_HOME -jvm $JAVA_HOME/bin/java \ -mp EAP_HOME/modules -- \ -Dorg.jboss.boot.log.file=LOG_DIR/host-controller.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -server -Xms64m -Xmx512m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true -- -default-jvm $JAVA_HOME/bin/java