Como baixar Open Liberty
Você está procurando uma estrutura aberta e leve para criar microsserviços Java nativos de nuvem rápidos e eficientes? Nesse caso, talvez você queira conferir o Open Liberty, um projeto de software livre que fornece um tempo de execução de servidor flexível e modular para desenvolvedores Java. Neste artigo, mostraremos como baixar o Open Liberty e começar a desenvolver, implantar e monitorar seus microsserviços em qualquer ambiente de nuvem.
download open liberty
O que é liberdade aberta?
Open Liberty é uma estrutura aberta para o ecossistema Java que permite desenvolver microsserviços usando recursos das plataformas Eclipse MicroProfile e Jakarta EE. É um Java runtime flexível, rápido e leve que parece promissor para o desenvolvimento de microsserviços nativos da nuvem. A estrutura permite que você configure apenas os recursos de que seu aplicativo precisa, resultando em um consumo de memória menor durante a inicialização. Além disso, é implantável em qualquer plataforma de nuvem usando contêineres como Docker e Kubernetes. Ele oferece suporte ao desenvolvimento rápido por recarga ao vivo do código para iteração rápida. Ele também oferece migração zero, o que significa que você pode se concentrar no que é importante, não nas APIs que mudam sob você.
Por que usar o Open Liberty?
Há muitas razões pelas quais o Open Liberty é uma escolha ideal para desenvolver e implantar microsserviços. Aqui estão alguns deles:
É de código aberto e orientado para a comunidade, para que você possa se beneficiar das inovações e práticas recomendadas mais recentes.
É compatível com os padrões e APIs mais recentes, como Jakarta EE 9 e MicroProfile 5.
É modular e flexível, para que você possa adicionar ou remover recursos conforme necessário.
É rápido e leve, para que você possa inicializar rapidamente e usar menos recursos.
É nativo da nuvem e compatível com contêineres, para que você possa implantar e escalar facilmente em qualquer nuvem.
É amigável ao desenvolvedor e produtivo, para que você possa codificar mais rapidamente e testar com mais facilidade.
Pré-requisitos
Para baixar e usar o Open Liberty, você precisa ter os seguintes pré-requisitos:
Um Java Development Kit (JDK) versão 8 ou superior.
Uma ferramenta de compilação, como Maven ou Gradle.
Um editor de código ou IDE, como Eclipse ou Visual Studio Code.
Um mecanismo do Docker se você quiser usar contêineres do Docker.
Um cluster do Kubernetes se você quiser usar a orquestração do Kubernetes.
Comece com o Open Liberty
Há três maneiras de começar a usar o Open Liberty: criar um aplicativo inicial, adicionar a um aplicativo existente ou fazer download do pacote.
Criar um aplicativo inicial
A maneira mais fácil de criar um aplicativo inicial para desenvolver aplicativos Java nativos da nuvem no Open Liberty que usam APIs Jakarta EE e MicroProfile é usar o . Essa ferramenta permite selecionar as ferramentas de desenvolvimento que você prefere usar, como Maven ou Gradle, versão Java SE, versões Jakarta EE e MicroProfile, e os recursos que deseja incluir em seu aplicativo. Em seguida, você pode baixar um arquivo zip que contém o projeto inicial, que pode ser importado para seu editor de código ou IDE e começar a codificar.
Adicionar a um aplicativo existente
Se você já tiver um aplicativo Java existente que deseja executar no Open Liberty, poderá adicionar o plug-in Open Liberty Maven ou o plug-in Gradle ao arquivo de compilação do seu projeto. Esses plug-ins permitem que você crie, teste e implemente facilmente seu aplicativo no Open Liberty. Eles também fornecem um modo de desenvolvimento que permite recarga e implantação dinâmicas, teste de unidade, teste de integração e depuração.
Baixar pacote
Se você deseja fazer o download do pacote de tempo de execução do Open Liberty diretamente, acesse o página e escolha o pacote que se adapta às suas necessidades. Existem diferentes tipos de pacotes disponíveis, tais como:
Open Liberty Runtime: Este é o pacote de tempo de execução principal que contém o servidor Open Liberty e os recursos padrão.
Todos os recursos do GA: Este é um pacote de tempo de execução estendido que contém todos os recursos geralmente disponíveis para uso em produção.
Java EE 8 Web Profile: Este é um pacote de tempo de execução que contém apenas os recursos necessários para a especificação Java EE 8 Web Profile.
Java EE 8 Full Platform: Este é um pacote de tempo de execução que contém todos os recursos necessários para a especificação Java EE 8 Full Platform.
Depois de baixar o pacote, você pode descompactá-lo e começar a usar o servidor Open Liberty.
Desenvolva microsserviços Java nativos da nuvem com o Open Liberty
Depois de fazer o download do Open Liberty e criar ou adicionar seu aplicativo, você pode começar a desenvolver microsserviços Java nativos da nuvem usando os recursos do Jakarta EE e do MicroProfile. Aqui estão algumas dicas sobre como usar esses recursos de forma eficaz:
Usar recursos
Os recursos do Open Liberty são componentes modulares que fornecem funcionalidade específica para seu aplicativo. Por exemplo, existem recursos para aplicativos da Web, serviços RESTful, segurança, persistência, mensagens, tolerância a falhas, verificações de integridade, métricas e muito mais. Você pode ativar ou desativar recursos adicionando ou removendo-os de seu arquivo de configuração server.xml. Por exemplo, se você deseja usar CDI, JAX-RS, JSON-P e JSON-B em seu aplicativo, pode adicionar o seguinte recurso a seu server.xml:
cdi-2.0
jaxrs-2.1
jsonp-1.1
jsonb-1.0
Você também pode usar recursos de conveniência que agrupam recursos relacionados para facilitar a configuração. Por exemplo, se quiser usar todos os recursos necessários para a especificação Jakarta EE 8 Web Profile, você pode adicionar o seguinte recurso ao seu server.xml:
webProfile-8.0
Use recursos de conveniência
O Open Liberty também fornece recursos de conveniência que simplificam o desenvolvimento e o teste de seu aplicativo. Por exemplo, existem recursos de conveniência para:
Servlet: Este recurso habilita o suporte a servlet e adiciona automaticamente recursos como CDI, JSP, EL e JSF.
JDBC: Este recurso ativa o suporte JDBC e adiciona recursos automaticamente, como pool de conexões e gerenciamento de transações.
JPA: Este recurso ativa o suporte JPA e adiciona automaticamente recursos como provedores de persistência e validação de bean.
Jakarta RESTful Web Services: esse recurso habilita o suporte a JAX-RS e adiciona automaticamente recursos como JSON-P e JSON-B.
Jakarta Contexts and Dependency Injection: Este recurso habilita o suporte CDI e adiciona automaticamente recursos como interceptores e decoradores.
Autorização Jakarta: Este recurso permite o suporte de autorização e adiciona recursos automaticamente, como anotações de segurança e mapeamento de função.
Autenticação Jakarta: Este recurso permite o suporte de autenticação e adiciona recursos automaticamente, como anotações de segurança e armazenamento de identidade.
Jakarta Batch: Este recurso permite o suporte ao processamento em lote e adiciona recursos automaticamente, como operadores de trabalho e ouvintes.
Jakarta Bean Validation: Este recurso habilita o suporte à validação de bean e adiciona automaticamente recursos como provedores de validação e restrições.
Jakarta Enterprise Beans: Este recurso habilita o suporte EJB e adiciona automaticamente recursos como temporizadores e interfaces remotas.
Jakarta Expression Language: Este recurso habilita o suporte EL e adiciona automaticamente recursos como expressões lambda e operações de coleta.
Jakarta JSON Binding: Este recurso habilita o suporte JSON-B e adiciona automaticamente recursos como adaptadores e serializadores.
Jakarta JSON Processing: Este recurso habilita o suporte JSON-P e adiciona automaticamente recursos como analisadores e geradores.
Jakarta Mail: Este recurso permite o suporte a e-mail e adiciona automaticamente recursos como os protocolos SMTP, IMAP e POP3.
Jakarta Messaging: Este recurso ativa o suporte JMS e adiciona automaticamente recursos como filas, tópicos e ouvintes.
Jakarta Persistence: Este recurso habilita o suporte JPA e adiciona automaticamente recursos como gerenciadores de entidades e linguagens de consulta.
Jakarta Server Faces: Este recurso habilita o suporte JSF e adiciona automaticamente recursos como facelets, validadores e conversores.
Jakarta Server Pages: Este recurso ativa o suporte JSP e adiciona recursos automaticamente, como bibliotecas de tags e linguagem de expressão.
Jakarta Transactions: Este recurso habilita o suporte JTA e adiciona automaticamente recursos como gerenciadores de transações e transações de usuários.
Jakarta WebSocket: esse recurso habilita o suporte a WebSocket e adiciona automaticamente recursos como endpoints, codificadores e decodificadores.
Use o modo dev para iteração rápida
Um dos recursos de conveniência mais úteis do Open Liberty é o modo de desenvolvimento. Esse recurso permite que você execute seu aplicativo em um modo de desenvolvimento contínuo que detecta automaticamente alterações em seu código-fonte ou arquivos de configuração e recompila e reimplementa seu aplicativo. Ele também permite testes dinâmicos, o que significa que você pode executar testes de unidade ou testes de integração sob demanda ou automaticamente após cada alteração. Além disso, ele oferece suporte a hot debugging, o que significa que você pode anexar um depurador ao seu aplicativo e definir pontos de interrupção, observar variáveis e percorrer seu código.
Para usar o modo dev, você precisa ter o plug-in Open Liberty Maven ou o plug-in Gradle no arquivo de construção do seu projeto. Em seguida, você pode executar o seguinte comando no seu terminal:
liberdade mvn:dev
ou
Gradle LibertyDev
Isso iniciará o servidor Open Liberty no modo dev e observará as mudanças em seu projeto. Você também pode usar as seguintes opções para personalizar o comportamento do modo dev:
-DhotTests: Esta opção executará testes automaticamente após cada alteração.
-DskipTests: Esta opção irá pular os testes completamente.
-DskipUTs: Esta opção irá ignorar apenas os testes de unidade.
-DskipITs: Esta opção irá ignorar apenas os testes de integração.
-Ddebug.port: Esta opção especificará a porta para depuração.
Implante e monitore aplicativos Open Liberty em contêineres para qualquer nuvem
Depois de desenvolver seus microsserviços Java nativos de nuvem com o Open Liberty, você pode implantá-los e monitorá-los em contêineres para qualquer plataforma de nuvem de sua escolha. Aqui estão algumas dicas sobre como fazer isso:
Usar Docker
O Docker é uma ferramenta popular para criar, executar e gerenciar contêineres. Você pode usar o Docker para empacotar seu aplicativo Open Liberty em uma imagem de contêiner que pode ser implantada em qualquer lugar. Para usar o Docker com o Open Liberty, você precisa ter um Dockerfile que defina como construir sua imagem de contêiner. Você pode usar o como base para o seu Dockerfile, ou você pode criar o seu próprio do zero. Aqui está um exemplo de um Dockerfile simples que usa a imagem base do Open Liberty:
DE openliberty/open-liberty:kernel-java8-openj9-ubi COPY --chown=1001:0 src/main/liberty/config /config/ COPY --chown=1001:0 target/my-app.war /config/dropins/ RUN configure.sh
Esse Dockerfile copia o arquivo de configuração server.xml e o arquivo WAR do aplicativo para a imagem do contêiner e, em seguida, executa o script configure.sh para instalar os recursos necessários e otimizar o servidor. Você pode criar sua imagem de contêiner executando o seguinte comando em seu terminal:
docker build -t meu-aplicativo .
Isso criará uma imagem de contêiner chamada my-app com base em seu Dockerfile. Você pode executar seu contêiner executando o seguinte comando em seu terminal:
docker run -d -p 9080:9080 -p 9443:9443 meu-aplicativo
Isso iniciará um contêiner de sua imagem no modo separado e mapeará as portas 9080 e 9443 do contêiner para as mesmas portas da máquina host. Você pode acessar seu aplicativo visitando ou em seu navegador.
Usar Kubernetes
O Kubernetes é uma ferramenta popular para orquestrar e gerenciar contêineres em escala.Você pode usar o Kubernetes para implantar, dimensionar e atualizar seus aplicativos Open Liberty em clusters de nós que podem abranger várias nuvens ou regiões. Para usar o Kubernetes com o Open Liberty, você precisa ter um cluster Kubernetes ao qual possa se conectar usando a ferramenta de linha de comando kubectl. Você também precisa ter manifestos do Kubernetes que definam os recursos e configurações para seu aplicativo, como implantações, serviços, entradas, configmaps, segredos e muito mais. Você pode usar o para simplificar a criação e o gerenciamento desses manifestos, ou você pode criar o seu próprio usando arquivos YAML ou JSON. Aqui está um exemplo de um manifesto de implantação simples que implanta sua imagem de contêiner Open Liberty em um cluster Kubernetes:
apiVersion: apps/v1 tipo: Metadados de implantação: nome: especificação do meu aplicativo: réplicas: 3 seletor: matchLabels: aplicativo: modelo do meu aplicativo: metadados: rótulos: app: especificação do meu aplicativo: contêineres: - nome: imagem do meu aplicativo: portas do meu aplicativo: - containerPort: 9080 - containerPort: 9443
Esse manifesto cria uma implantação chamada my-app que executa três réplicas de sua imagem de contêiner e expõe as portas 9080 e 9443 do contêiner. Você pode então aplicar este manifesto executando o seguinte comando em seu terminal:
kubectl apply -f deployment.yaml
Isso criará o recurso de implantação em seu cluster. Em seguida, você pode criar outros recursos, como serviços, entradas, configmaps, segredos e muito mais, para expor seu aplicativo ao mundo externo, definir as configurações do aplicativo e proteger o acesso ao aplicativo.
Usar operador Open Liberty
O Open Liberty Operator é um operador do Kubernetes que automatiza a implantação e o gerenciamento de aplicativos Open Liberty no Kubernetes. Ele fornece uma definição de recurso customizada (CRD) chamada OpenLibertyApplication que permite especificar as propriedades e recursos de seu aplicativo de forma declarativa.Ele também fornece recursos de conveniência, como ligação de serviço, monitoramento de serviço, logon único e operações de 2 dias. Para usar o Open Liberty Operator com o Open Liberty, você precisa instalar o operador em seu cluster seguindo o . Em seguida, você pode criar um manifesto OpenLibertyApplication que defina seu aplicativo. Aqui está um exemplo de um manifesto OpenLibertyApplication simples que implanta sua imagem de contêiner Open Liberty em um cluster Kubernetes:
apiVersion: openliberty.io/v1beta1 kind: OpenLibertyApplication metadata: name: my-app spec: applicationImage: my-appposed: true service: port: 9080 portName: http targetPort: 9080 certificateSecretRef: my-tls-secret
Esse manifesto cria um OpenLibertyApplication chamado my-app que usa sua imagem de contêiner, expõe seu aplicativo usando um recurso de entrada e protege seu aplicativo usando um segredo TLS. Você pode então aplicar este manifesto executando o seguinte comando em seu terminal:
kubectl apply -f openlibertyapplication.yaml
Isso criará o recurso OpenLibertyApplication e os recursos associados em seu cluster. Em seguida, você pode usar o operador para gerenciar o ciclo de vida do aplicativo, como dimensionamento, atualização, reversão e exclusão.
Use ferramentas de observabilidade
A capacidade de observação é um aspecto essencial da execução de aplicativos nativos da nuvem na produção. Ele permite que você monitore o desempenho, a disponibilidade e o comportamento de seus aplicativos e solucione quaisquer problemas que possam surgir. O Open Liberty fornece várias ferramentas e recursos que permitem a observabilidade de seus aplicativos, como:
Métricas: esse recurso permite coletar e expor métricas sobre seu aplicativo e o servidor Open Liberty usando a API MicroProfile Metrics e o formato Prometheus.
Integridade: esse recurso permite verificar e relatar o status de integridade de seu aplicativo e do servidor Open Liberty usando a API MicroProfile Health e as análises Liveness e Readiness.
Rastreamento: esse recurso permite rastrear e correlacionar solicitações em seu aplicativo e outros serviços usando a API MicroProfile OpenTracing e o formato Jaeger ou Zipkin.
Criação de log: esse recurso permite registrar mensagens de seu aplicativo e do servidor Open Liberty usando vários formatos e destinos, como JSON, logstashCollector, console ou arquivo.
Painéis: esse recurso permite que você visualize e analise as métricas, a integridade, o rastreamento e os dados de registro de seu aplicativo e do servidor Open Liberty usando ferramentas como Grafana, Kiali ou Logstash.
Conclusão
Neste artigo, mostramos como baixar o Open Liberty e começar a desenvolver, implantar e monitorar microsserviços Java nativos da nuvem em qualquer plataforma de nuvem. Cobrimos como usar os recursos do Jakarta EE e do MicroProfile para criar microsserviços, como usar os recursos de conveniência para simplificar o desenvolvimento e o teste do seu aplicativo, como usar o Docker e o Kubernetes para implantar e gerenciar seu aplicativo em contêineres e como usar ferramentas de observabilidade para monitorar e solucionar problemas do seu aplicativo. Esperamos que este artigo tenha ajudado você a aprender mais sobre o Open Liberty e como usá-lo para seus projetos Java nativos da nuvem.
Próximos passos
Se você quiser saber mais sobre o Open Liberty e como usá-lo para seus projetos Java nativos da nuvem, aqui estão alguns recursos que você pode explorar:
: esta é a documentação oficial do Open Liberty que abrange tudo, desde a introdução até os tópicos avançados.
: são guias interativos e práticos que ensinam como usar os recursos e tecnologias do Open Liberty em vários cenários.
: Este é o blog oficial do Open Liberty que fornece atualizações, notícias, dicas e práticas recomendadas sobre o Open Liberty.
: este é o repositório GitHub oficial do Open Liberty que contém o código-fonte, problemas, solicitações pull e lançamentos do Open Liberty.
perguntas frequentes
Aqui estão algumas perguntas frequentes sobre o Open Liberty:
Qual é a diferença entre o Open Liberty e o WebSphere Liberty?
Open Liberty é a versão de software livre do WebSphere Liberty, que é a versão comercial. O WebSphere Liberty fornece recursos e suporte adicionais que não estão disponíveis no Open Liberty, como suporte Java EE 7 Full Platform, suporte IBM J9 JVM e serviços de suporte IBM.
Como posso migrar meus aplicativos Java existentes para o Open Liberty?
O Open Liberty fornece um kit de ferramentas de migração que ajuda você a analisar seus aplicativos Java existentes e identificar quaisquer possíveis problemas ou alterações necessárias para executá-los no Open Liberty. Você também pode usar a ferramenta de verificação binária que verifica os binários de seu aplicativo e gera um arquivo server.xml com os recursos necessários para seu aplicativo.
Como posso contribuir para o Open Liberty?
Open Liberty é um projeto de código aberto que aceita contribuições de qualquer pessoa interessada. Você pode contribuir relatando problemas, enviando solicitações, escrevendo documentação, criando guias ou ingressando nos fóruns e bate-papos da comunidade.
Como posso obter ajuda ou suporte para o Open Liberty?
O Open Liberty fornece vários canais para obter ajuda ou suporte para suas dúvidas ou problemas. Você pode usar o diretamente para qualquer feedback ou sugestões.
Como posso me manter atualizado com os últimos desenvolvimentos e notícias sobre o Open Liberty?
Você pode seguir o para se manter atualizado com os últimos desenvolvimentos e notícias sobre o Open Liberty.
0517a86e26
Comments