diff --git a/docs/cheatsheets.md b/docs/cheatsheets.md index 93280c88..692d424d 100644 --- a/docs/cheatsheets.md +++ b/docs/cheatsheets.md @@ -23,6 +23,7 @@ - [Gradle Cheat Sheets](#gradle-cheat-sheets) - [Jenkins Cheat Sheets](#jenkins-cheat-sheets) - [JMeter Cheat Sheets](#jmeter-cheat-sheets) +- [Quarkus Cheat Sheet](#quarkus-cheat-sheet) ## Cheat Sheets * [lzone.de/cheat-sheet](https://lzone.de/cheat-sheet/) @@ -172,3 +173,6 @@ - [jmeter-testing-cheat-sheet-v10.pdf](https://martkos-it.co.uk/s/jmeter-testing-cheat-sheet-v10.pdf) - [Cheat Sheet for Regular Expression in Jmeter](http://performanceoptimize.blogspot.com/2017/04/RegularExpressionCheatSheet.html) +## Quarkus Cheat Sheet +- [Quarkus Cheat-Sheet](https://lordofthejars.github.io/quarkus-cheat-sheet/) + diff --git a/docs/customer.md b/docs/customer.md index 94ba555e..994c1fce 100644 --- a/docs/customer.md +++ b/docs/customer.md @@ -7,8 +7,8 @@ * CI/CD at BMW IT-Zentrum (2018): * Jenkins (CloudBees & OSS): Maven, Seed Job, Multibranch Pipelines, Merge BOTs, OpenShift Source-to-Image (S2I), Fabric8 Java Client Library for Kubernetes, JobDSL & Shared Libraries (groovy). * Requirements of each microservice defined in a single json file. - * Frameworks: SpringBoot, Jakarta EE and MicroProfile, angular, etc. - * Docker, Payara, HA-Proxy, SonarQube, Nexus3, JMeter, Selenium, etc. + * Java Frameworks: Jakarta EE and/or MicroProfile running on Payara + * Docker, HA-Proxy, SonarQube, Nexus3, JMeter, Selenium, etc. * Terraform, Packer, Ansible, Liquibase. * Private and Public Cloud: OpenStack, OpenShift 3.10 on-premise, AWS. * Atlassian: Confluence, Bitbucket, Jira, Crowd. diff --git a/docs/faq.md b/docs/faq.md index 0815cae9..7ef9bcb3 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -10,6 +10,7 @@ ## Kubernetes Native - [developers.redhat.com: Why Kubernetes native instead of cloud native? 🌟](https://developers.redhat.com/blog/2020/04/08/why-kubernetes-native-instead-of-cloud-native/) + ---
[![microservice arch](images/microservice_arch.png)](https://medium.com/javarevisited/10-free-spring-boot-tutorials-and-courses-for-java-developers-53dfe084587e) diff --git a/docs/ibm_cloud.md b/docs/ibm_cloud.md index a0a67602..f2474c99 100644 --- a/docs/ibm_cloud.md +++ b/docs/ibm_cloud.md @@ -3,6 +3,7 @@ - [WebSphere Liberty with support of Java Microservices and Cloud Native Apps](#websphere-liberty-with-support-of-java-microservices-and-cloud-native-apps) - [Open Liberty](#open-liberty) - [IBM Cloud Paks and OpenShift](#ibm-cloud-paks-and-openshift) + - [CloudPaks For Applications (CP4A)](#cloudpaks-for-applications-cp4a)
[![ibm cloud videos](images/ibm_cloud_logo.jpg)](https://www.youtube.com/user/IBMCloud) @@ -28,7 +29,9 @@ * [IBM Cloud Pak Playbook: cloudpak8s.io](https://cloudpak8s.io/) * **What are IBM Cloud Paks?** Beyond containers and Kubernetes, enterprises need to orchestrate their production topology, and to provide management, security and governance for their applications. They need to do this while improving efficiency and resiliency, reducing costs and maximizing ROI. * IBM Cloud® Paks are enterprise-ready, containerized software solutions that give clients an open, faster and more secure way to move core business applications to any cloud. Each IBM Cloud Pak® includes containerized IBM middleware and common software services for development and management, on top of a common integration layer — designed to **reduce development time by up to 84 percent and operational expenses by up to 75 percent**. **IBM Cloud Paks run wherever Red Hat® OpenShift® runs** and are optimized for productivity and performance on [Red Hat OpenShift on IBM Cloud](https://www.ibm.com/cloud/openshift). -* [IBM Cloud Pak Playbook Overview](https://cloudpak8s.io/apps/cp4a_overview/) The **Cloud Pak for Applications** provides product offerings to support **modernizing existing applications and building new cloud native applications**. The applications run within a **Kubernetes cluster** provided with the **Red Hat OpenShift Container Platform**. The focus provided here is on running application workloads as containers. The Cloud Pak for Applications is a bundle of multiple offerings. This diagram provides an overview of what offerings are included and what they would be used for: + +### CloudPaks For Applications (CP4A) +* [IBM Cloud Pak For Applications Overview](https://cloudpak8s.io/apps/cp4a_overview/) The **Cloud Pak for Applications** provides product offerings to support **modernizing existing applications and building new cloud native applications**. The applications run within a **Kubernetes cluster** provided with the **Red Hat OpenShift Container Platform**. The focus provided here is on running application workloads as containers. The Cloud Pak for Applications is a bundle of multiple offerings. This diagram provides an overview of what offerings are included and what they would be used for:
[![cp4a_overview](images/cloudpak8s-overview.png)](https://cloudpak8s.io/apps/cp4a_overview/) diff --git a/docs/images/when_to_choose_kubernetes.jpeg b/docs/images/when_to_choose_kubernetes.jpeg new file mode 100644 index 00000000..3e2aa1e2 Binary files /dev/null and b/docs/images/when_to_choose_kubernetes.jpeg differ diff --git a/docs/java_frameworks.md b/docs/java_frameworks.md index cce0232f..6a483470 100644 --- a/docs/java_frameworks.md +++ b/docs/java_frameworks.md @@ -3,12 +3,13 @@ - [Existing Java Implementations](#existing-java-implementations) - [Use Java 11](#use-java-11) - [Java Programming Models (Frameworks)](#java-programming-models-frameworks) +- [Jakarta EE](#jakarta-ee) +- [Eclipse MicroProfile](#eclipse-microprofile) - [Spring](#spring) - [SpringBoot](#springboot) - [SpringBoot with Docker](#springboot-with-docker) - [CI/CD for kubernetes with SpringBoot](#cicd-for-kubernetes-with-springboot) - [Quarkus](#quarkus) -- [Eclipse MicroProfile](#eclipse-microprofile) - [Spring Boot VS MicroProfile](#spring-boot-vs-microprofile) ## Java @@ -48,6 +49,24 @@ Java Programming Model|Technology|Cloud Native (microservices)|Platform [Quarkus](https://quarkus.io/)|Backend (RESTful)|Yes|OpenShift, Kubernetes, etc etc||| +## Jakarta EE +- [developers.redhat.com: Jakarta EE 8: The new era of Java EE explained](https://developers.redhat.com/blog/2019/09/12/jakarta-ee-8-the-new-era-of-java-ee-explained/) + +## Eclipse MicroProfile +- [Eclipse MicroProfile Project](https://projects.eclipse.org/projects/technology.microprofile) The Eclipse MicroProfile project is aimed at +optimizing Enterprise Java for the microservices architecture. + - Many innovative "microservice" Enterprise Java environments and frameworks already exist in the Java ecosystem. These projects are creating new features and capabilities to address microservice architectures -- leveraging both Java EE and non-Java EE technologies. + - The goal of the Eclipse MicroProfile project is to iterate and innovate in short cycles to propose new common APIs and functionality, get community approval, release, and repeat. Eventually, the outputs of this project could be submitted to the Eclipse Jakarta EE, JCP, OpenJDK or any relevant standards body. +- [MicroProfile.io](https://microprofile.io/) Optimizing Enterprise Java for a Microservices Architecture +- [developers.redhat.com: Eclipse MicroProfile for Spring Boot developers](https://developers.redhat.com/blog/2018/11/21/eclipse-microprofile-for-spring-boot-developers/) +- [Eclipse MicroProfile: 5 Things You Need to Know 🌟](https://medium.com/@alextheedom/eclipse-microprofile-5-things-you-need-to-know-e7a0bc9a3fb6) +- **Server Vendors providing MicroProfile runtimes**: + - [WebSphere Liberty from IBM](https://developer.ibm.com/wasdev/websphere-liberty/) + - [TomEE from Tomitribe](http://tomee.apache.org/) + - [Payara](https://www.payara.fish/) + - [RedHat’s WildFly Swarm](http://wildfly-swarm.io/) + - [KumuluzEE](https://ee.kumuluz.com/) + ## Spring - [Spring](https://spring.io/) - [SpringBoot](https://spring.io/projects/spring-boot) @@ -96,21 +115,7 @@ etc||| - [developers.redhat.com: How Quarkus brings imperative and reactive programming together](https://developers.redhat.com/blog/2019/11/18/how-quarkus-brings-imperative-and-reactive-programming-together/) - [developers.redhat.com: Migrating a Spring Boot microservices application to Quarkus](https://developers.redhat.com/blog/2020/04/10/migrating-a-spring-boot-microservices-application-to-quarkus/) - [Quarkus, a Kubernetes-native Java runtime, now fully supported by Red Hat](https://developers.redhat.com/blog/2020/05/28/quarkus-a-kubernetes-native-java-runtime-now-fully-supported-by-red-hat/) - -## Eclipse MicroProfile -- [Eclipse MicroProfile Project](https://projects.eclipse.org/projects/technology.microprofile) The Eclipse MicroProfile project is aimed at -optimizing Enterprise Java for the microservices architecture. - - Many innovative "microservice" Enterprise Java environments and frameworks already exist in the Java ecosystem. These projects are creating new features and capabilities to address microservice architectures -- leveraging both Java EE and non-Java EE technologies. - - The goal of the Eclipse MicroProfile project is to iterate and innovate in short cycles to propose new common APIs and functionality, get community approval, release, and repeat. Eventually, the outputs of this project could be submitted to the Eclipse Jakarta EE, JCP, OpenJDK or any relevant standards body. -- [MicroProfile.io](https://microprofile.io/) Optimizing Enterprise Java for a Microservices Architecture -- [developers.redhat.com: Eclipse MicroProfile for Spring Boot developers](https://developers.redhat.com/blog/2018/11/21/eclipse-microprofile-for-spring-boot-developers/) -- [Eclipse MicroProfile: 5 Things You Need to Know 🌟](https://medium.com/@alextheedom/eclipse-microprofile-5-things-you-need-to-know-e7a0bc9a3fb6) -- **Server Vendors providing MicroProfile runtimes**: - - [WebSphere Liberty from IBM](https://developer.ibm.com/wasdev/websphere-liberty/) - - [TomEE from Tomitribe](http://tomee.apache.org/) - - [Payara](https://www.payara.fish/) - - [RedHat’s WildFly Swarm](http://wildfly-swarm.io/) - - [KumuluzEE](https://ee.kumuluz.com/) +- [The road to Quarkus GA: Completing the first supported Kubernetes-native Java stack](https://developers.redhat.com/blog/2020/06/04/the-road-to-quarkus-ga-completing-the-first-supported-kubernetes-native-java-stack/) ## Spring Boot VS MicroProfile - [Dzone: Programming Styles Compared: Spring Framework vis-a-vis Eclipse MicroProfile 🌟🌟](https://dzone.com/articles/programming-styles-spring-boot-vis-a-vis-with-ecli) diff --git a/docs/kubernetes-alternatives.md b/docs/kubernetes-alternatives.md index 95054b0e..000bdc3f 100644 --- a/docs/kubernetes-alternatives.md +++ b/docs/kubernetes-alternatives.md @@ -1,9 +1,13 @@ # Kubernetes Alternatives +- [Why Not Use Kubernetes](#why-not-use-kubernetes) - [Nomad](#nomad) - [Portainer](#portainer) - [Docker Enterprise and Docker Universal Control Plane (UCP)](#docker-enterprise-and-docker-universal-control-plane-ucp) - [Docker Swarm](#docker-swarm) +## Why Not Use Kubernetes +- [medium: Why Not Use Kubernetes? 🌟](https://medium.com/better-programming/why-not-use-kubernetes-52a89ada5e22) Is Kubernetes really right for your stack? + ## Nomad * [Nomad](https://nomadproject.io/) * [Nomad an alternative to Kubernetes](https://blog.nobugware.com/post/2019/nomad_an_alternative_to_kubernetes/) @@ -27,8 +31,11 @@ * [galaxy.ansible.com: Docker Ansible Role](https://galaxy.ansible.com/atosatto/docker-swarm) Setup Docker on RHEL/CentOS and Debian/Ubuntu servers. The role supports Docker Engine's "Swarm Mode" to create a cluster of Docker nodes. * [Kubernetes vs Docker Swarm: A Comprehensive Comparison](https://www.cuelogic.com/blog/kubernetes-vs-docker-swarm) +--- +
[![Kubernetes vs Docker Swarm](images/kubernetes-vs-dockerswarm.png)](https://www.cuelogic.com/blog/kubernetes-vs-docker-swarm) - +[![when to choose kubernetes](images/when_to_choose_kubernetes.jpeg)](https://medium.com/better-programming/why-not-use-kubernetes-52a89ada5e22) +
diff --git a/docs/message-queue.md b/docs/message-queue.md index 31c1b75e..2806b5ae 100644 --- a/docs/message-queue.md +++ b/docs/message-queue.md @@ -22,6 +22,7 @@ - [Red Hat AMQ Streams](#red-hat-amq-streams) - [eBooks](#ebooks) - [Related](#related) +- [Questions and Answers](#questions-and-answers) ## Message Queue in Kubernetes. Event-driven Messaging. Real-Time Data Streaming - [Wikipedia: Message Broker](https://en.wikipedia.org/wiki/Message_broker) @@ -143,3 +144,12 @@ Red Hat AMQ 7|JBoss AMQ 7 (Broker) or Red Hat AMQ 7 Suite|Apache ActiveMQ Artemi ## Related - [Service meshes to the rescue: Load balancing and scaling long-lived connections in Kubernetes](https://learnk8s.io/kubernetes-long-lived-connections) + +## Questions and Answers +- [adambien.blog - 75th **airhacks.tv** Questions and Answers: Kafka, JAX-RS, MicroProfile, JSON-B, GSON, JWT, VSC, NetBeans, Java Fullstack](https://adambien.blog/roller/abien/entry/kafka_jax_rs_microprofile_json) "Kafka vs. JAX-RS / RPC, thoughts about APIs, JSON-B vs. GSON, Path.of over Paths.get, Java Records, MicroProfile JWT, beginners vs. expert content, best Java fullstack, code coverage, NetBeans in 2020, Visual Studio Setup for Java, screencast configuration, ReactJS / Angular over JSF?, JSON-P vs. JSON-B, security code scanning" + +--- + +
+ +
\ No newline at end of file diff --git a/docs/securityascode.md b/docs/securityascode.md index 237765d1..61d3e553 100644 --- a/docs/securityascode.md +++ b/docs/securityascode.md @@ -8,6 +8,7 @@ - [OPA Open Policy Agent 🌟](https://www.openpolicyagent.org/) - [Dzone: DevOps Security at Scale - Security Policy as Code](https://dzone.com/articles/devops-security-at-scale) - [searchitoperations.techtarget.com: Kubernetes policy project takes enterprise IT by storm](https://searchitoperations.techtarget.com/news/252467102/Kubernetes-policy-project-takes-enterprise-IT-by-storm) A Kubernetes-friendly compliance as code project hosted by the CNCF has caught on among large enterprises in the first half of 2019, largely through word of mouth. +- [magalix.com: Integrating Open Policy Agent (OPA) With Kubernetes 🌟](https://www.magalix.com/blog/integrating-open-policy-agent-opa-with-kubernetes-a-deep-dive-tutorial) ## Open Policy Agent in OpenShift - [blog.openshift.com: Fine-Grained Policy Enforcement in OpenShift with Open Policy Agent 🌟](https://blog.openshift.com/fine-grained-policy-enforcement-in-openshift-with-open-policy-agent/) diff --git a/docs/serverless.md b/docs/serverless.md index 0bc91877..52acb72b 100644 --- a/docs/serverless.md +++ b/docs/serverless.md @@ -45,6 +45,7 @@ ### Knative * [knative.dev](https://knative.dev/) +* [kn: knative client](https://github.com/knative/client) Knative developer experience, docs, reference Knative CLI implementation. The Knative client kn is your door to the Knative world. It allows you to create Knative resources interactively from the command line or from within Shell scripts. * [redhat.com: What is knative?](https://www.redhat.com/en/topics/microservices/what-is-knative) * [datacenterknowledge.com: Explaining Knative, the Project to Liberate Serverless from Cloud Giants](https://www.datacenterknowledge.com/open-source/explaining-knative-project-liberate-serverless-cloud-giants)