Como configurar um servidor WildFly

Como configurar um servidor WildFly

1. Introdução

Neste tutorial, exploramos os diferentes modos de servidor e configurações doJBoss WildFly application server. O WildFly é um servidor de aplicativos leve, com uma CLI e um console administrativo.

Antes de começarmos, no entanto,we need to make sure we have a JAVA_HOME variable set to a JDK. Qualquer coisa após a versão 8 funcionará para o WildFly 17.

2. Modos de servidor

O WildFly vem com modos autônomo e de domínio por padrão. Vamos dar uma olhada no autônomo primeiro.

2.1. Estar sozinho

Depois de baixar e extrair o WildFly para um diretório local, precisamos executar o script do usuário.

Para Linux, faríamos:

~/bin/add-user.sh

Ou para Windows:

~\bin\add-user.bat

O usuárioadmin já existirá; no entanto, queremos atualizar a senha para algo diferente. Updating the default admin password is always best practice even when planning to use another account for server management.

A interface do usuário solicitará a atualização da senha na opção (a):

Enter the details of the new user to add.
Using realm 'ManagementRealm' as discovered from the existing property files.
Username : admin
User 'admin' already exists and is enabled, would you like to...
 a) Update the existing user password and roles
 b) Disable the existing user
 c) Type a new username
(a):

Após alterar a senha, precisamos executar o script de inicialização apropriado para o sistema operacional:

~\bin\standalone.bat

Após a saída do servidor parar, vemos que o servidor está em execução.

Agora podemos acessar o console de administração emhttp://127.0.0.1:9990 conforme solicitado na saída. Se acessarmos a URL do servidorhttp://127.0.0.1:8080/,, devemos receber uma mensagem informando que o servidor está em execução:

Server is up and running!

Essa configuração rápida e fácil é ótima para uma instância isolada em execução em um único servidor, mas vamos verificar o modo de domínio para várias instâncias.

2.2. Domínio

As mentioned above, the domain mode has multiple server instances being managed by a single host controller. O número padrão é dois servidores.

De forma semelhante à instância autônoma, adicionamos um usuário por meio do scriptadd-user. No entanto, o script de inicialização é apropriadamente chamado dedomain em vez destandalone.

Depois de executar as mesmas etapas para o processo de inicialização, agora atingimos as instâncias individuais do servidor.

Por exemplo, podemos visitar o mesmo URL de instância única para o primeiro servidor emhttp://127.0.0.1:8080/

Server is up and running!

Da mesma forma, podemos visitar o servidor dois emhttp://127.0.0.1:8230

Server is up and running!

Vamos dar uma olhada nesseodd port configuration for server two a bit later.

3. Desdobramento, desenvolvimento

Para implantar nosso primeiro aplicativo, precisamos de um bom exemplo de aplicativo.

Vamos usarSpring Boot Hello World. Com uma pequena modificação, funcionará no WildFly.

Primeiro, vamos atualizar opom.xml para construir um WAR. Vamos mudar a seleçãopackaging e adicionarmaven-war-plugin:

war
...

  
    
      org.apache.maven.plugins
      maven-war-plugin
      
        
          
            jdk.unsupported
          
        
      
    
  

Em seguida, precisamos alterar a classeApplication paraextend SpringBootServletInitializer:

public class Application extends SpringBootServletInitializer

E substitua o métodoconfigure:

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }

Finalmente, vamos construir o projeto:

./mvnw package

Agora, podemos implantá-lo.

3.1. Implantar um aplicativo

Vamos ver como é fácil implantar nosso novo aplicativo WildFly por meio do console.

Primeiro, efetuamos login no console usando o usuário administrador e a senha definidos anteriormente.

CliqueAdd → Upload Deployment → Choose a file…

Em segundo lugar, navegamos até o diretório de destino do aplicativo Spring Boot e carregamos o arquivo WAR. Clique emNext para continuar e edite o nome do novo aplicativo.

Por fim, acessamos a aplicação pela mesma URL -http://127.0.0.1:8080/. Agora vemos a saída do aplicativo como:

Greetings from Spring Boot!

Como resultado da implementação bem-sucedida do aplicativo, vamos revisar algumas das propriedades de configuração comuns.

4. Configuração do servidor

Para essas propriedades comuns, visualizá-las no console de administração é o mais conveniente.

4.1. Propriedades de configuração comuns

Em primeiro lugar, vamos dar uma olhada emSubsystems - cada um tem um valor habilitado para estatísticas que pode ser definido comotrue para estatísticas de tempo de execução:

image

Na seçãoPaths, vemos alguns dos caminhos de arquivo importantes sendo usados ​​pelo servidor:

image

Como exemplo, é útil usar valores específicos para o diretório de configuração e o diretório de log:

jboss.server.config.dir
jboss.server.log.dirw

Além disso, a seçãoDatasources and Drivers fornece o gerenciamento de fontes de dados externas e diferentes drivers para camadas de persistência de dados:

image

No subsistemaLogging, atualizamos o nível de registro de INFO para DEBUG para ver mais registros de aplicativo:

image

4.2. Arquivos de configuração do servidor

Lembra da URL do servidor dois no modo de domínio,http://127.0.0.1:8230? A porta ímpar8230  é devido a um valor de deslocamento padrão de150 no arquivo de configuraçãohost-slave.xml:



  
  

No entanto, podemos fazer uma atualização simples para o valorport-offset:

Consequentemente, agora acessamos o servidor dois na URLhttp://127.0.0.1:8090.

Outro ótimo recurso do uso e configuração do aplicativo em um console administrativo conveniente é que essas configurações podem ser exportadas como um arquivo XML. Using a consistent configuration through XML files simplifies managing multiple environments.

5. Monitoramento

A interface da linha de comandos do WildFly permite exibir e atualizar os valores de configuração iguais aos do console de administração.

Para usar a CLI, simplesmente executamos:

~\bin\jboss-cli.bat

Depois disso, digitamos:

[disconnected /] connect
[[email protected]:9990 /]

Como resultado, podemos seguir as instruções para conectar-se à nossa instância do servidor. Após a conexão, podemos acessar a configuração em tempo real.

Por exemplo, para visualizar toda a configuração atual como XML quando conectado à instância do servidor, podemos executar o comandoread-config-as-xml:

[[email protected]:9990 /] :read-config-as-xml

A CLI também pode ser usada para estatísticas de tempo de execução em qualquer um dos subsistemas do servidor. Mais importante, a CLI é ótima para identificar problemas diferentes por meio de métricas de servidor.

6. Conclusão

Neste tutorial, percorremos a configuração e a implantação de um primeiro aplicativo no WildFly, bem como algumas das opções de configuração do servidor.

O projeto de amostra Spring Boot e a exportação da configuração XML podem serviewed on GitHub.