<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Kubernetes on foojay.io - Friends of OpenJDK</title><link>https://foojayio.github.io/website/today/category/kubernetes/</link><description>Recent content in Kubernetes on foojay.io - Friends of OpenJDK</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Fri, 17 Jul 2026 08:02:07 +0000</lastBuildDate><atom:link href="https://foojayio.github.io/website/today/category/kubernetes/index.xml" rel="self" type="application/rss+xml"/><item><title>Warm Up Fast, Run Lean: Vertical Scaling for Java on Kubernetes with Azul Prime and Kedify</title><link>https://foojayio.github.io/website/today/warm-up-fast-run-lean-vertical-scaling-for-java-on-kubernetes-with-azul-prime-and-kedify/</link><pubDate>Fri, 17 Jul 2026 08:02:07 +0000</pubDate><guid>https://foojayio.github.io/website/today/warm-up-fast-run-lean-vertical-scaling-for-java-on-kubernetes-with-azul-prime-and-kedify/</guid><description>&lt;p&gt;Autoscaling on Kubernetes has evolved significantly, but many production systems still rely on reactive scaling based on CPU and memory utilization. The issue is that resource metrics often lag behind real demand. By the time the CPU rises, users may already be experiencing unacceptable latency.&lt;/p&gt;
&lt;p&gt;For most real services, horizontal scaling should be driven by proactive workload signals such as request rate, concurrency, or queue depth, rather than raw CPU alone. To learn more about this, see &lt;a href="https://kedify.io/resources/blog/autoscaling-delay-resource-based-hpa-vs-proactive-metrics" target="_blank" rel="noopener noreferrer"&gt;this post&lt;/a&gt;
 on autoscaling delay and proactive metrics.&lt;/p&gt;</description></item><item><title>From Zero to Full Observability with Dash0</title><link>https://foojayio.github.io/website/today/from-zero-to-full-observability-with-dash0/</link><pubDate>Sat, 04 Apr 2026 06:35:47 +0000</pubDate><guid>https://foojayio.github.io/website/today/from-zero-to-full-observability-with-dash0/</guid><description>&lt;p&gt;This guide walks through the complete process of deploying a minimal Spring Boot service to Kubernetes and adding full observability using the &lt;a href="https://www.dash0.com/docs/dash0/monitoring/kubernetes/about-kubernetes" target="_blank" rel="noopener noreferrer"&gt;Dash0 Kubernetes Operator&lt;/a&gt;
 &amp;mdash; without making any changes to the application code.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.dash0.com/docs/dash0" target="_blank" rel="noopener noreferrer"&gt;Dash0&lt;/a&gt;
 is an OpenTelemetry-native observability platform that collects and correlates traces, metrics, and logs, and provides infrastructure monitoring across Kubernetes resources &amp;mdash; pods, nodes, namespaces, deployments, daemonsets, statefulsets, jobs, and cronjobs &amp;mdash; as well as cloud infrastructure such as AWS. Its Kubernetes operator can automatically instrument workloads at the pod level, with no changes required to application code or container images.
&lt;img src="https://foojayio.github.io/website/today/from-zero-to-full-observability-with-dash0/kubernetes-dash0-1024x581.png" alt="" loading="lazy"&gt;
&lt;/p&gt;</description></item><item><title>Optimizing Java for the Cloud-Native Era with Quarkus</title><link>https://foojayio.github.io/website/today/optimizing-java-for-the-cloud-native-era-with-quarkus/</link><pubDate>Tue, 06 Jan 2026 21:09:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/optimizing-java-for-the-cloud-native-era-with-quarkus/</guid><description>&lt;p&gt;This article explores how Quarkus can help organizations reduce costs, streamline development, and modernize their Java applications for today&amp;rsquo;s cloud-native environments. It outlines the real-world benefits of adopting Quarkus and highlights how its core features address the performance and scalability challenges commonly associated with traditional Java frameworks.&lt;/p&gt;
&lt;p&gt;Quarkus is already being adopted across industries. One example is Orange, a global telecom provider that selected Quarkus to support its 5G API initiative, and benefited from fast startup times, a lightweight footprint, and seamless integration with Kubernetes.&lt;/p&gt;</description></item><item><title>Quarkus: A Runtime and Framework for Cloud-Native Java</title><link>https://foojayio.github.io/website/today/quarkus-a-runtime-and-framework-for-cloud-native-java/</link><pubDate>Tue, 06 Jan 2026 13:46:50 +0000</pubDate><guid>https://foojayio.github.io/website/today/quarkus-a-runtime-and-framework-for-cloud-native-java/</guid><description>&lt;p&gt;Public clouds such as AWS, Microsoft Azure, and Google Cloud, and platforms like Red Hat OpenShift, favor services that start fast and stay lean. Quarkus is engineered for exactly that.&lt;/p&gt;
&lt;p&gt;Build time processing reduces runtime overhead and results in rapid startup, a small memory footprint, and frictionless deployment across Kubernetes, OpenShift, serverless, and managed container services in any cloud. If your Java services need to start in milliseconds, run dense on shared nodes, and still feel great to build, Quarkus was made for that job.&lt;/p&gt;</description></item><item><title>Best Practices for Deploying MongoDB in Kubernetes</title><link>https://foojayio.github.io/website/today/best-practices-for-deploying-mongodb-in-kubernetes/</link><pubDate>Tue, 16 Sep 2025 19:01:34 +0000</pubDate><guid>https://foojayio.github.io/website/today/best-practices-for-deploying-mongodb-in-kubernetes/</guid><description>&lt;p&gt;&lt;a href="https://kubernetes.io/" target="_blank" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt;
, also known as K8s, is an open-source system that simplifies the deployment, scaling, and management of containerized applications. You define your application&amp;rsquo;s desired state, such as the number of instances (&lt;a href="https://kubernetes.io/docs/concepts/workloads/pods/" target="_blank" rel="noopener noreferrer"&gt;pods&lt;/a&gt;
) or how they communicate, and Kubernetes works continuously to ensure that state is met. It excels at running stateless workloads, where pods can be replaced at any time without impacting application state or user data. Think of web servers or REST APIs: If a pod crashes, Kubernetes simply spins up a replacement and everything continues as expected.&lt;/p&gt;</description></item><item><title>One giant Kubernetes cluster for everything</title><link>https://foojayio.github.io/website/today/one-giant-kubernetes-cluster-for-everything/</link><pubDate>Tue, 25 Mar 2025 10:33:50 +0000</pubDate><guid>https://foojayio.github.io/website/today/one-giant-kubernetes-cluster-for-everything/</guid><description>&lt;p&gt;The ideal size of your Kubernetes clusters is a day 0 question and demands a definite answer.&lt;/p&gt;
&lt;p&gt;You find one giant cluster on one end of the spectrum and many small-sized ones on the other, with every combination in between. This decision will impact your organization for years to come. Worse, if you decide to change your topology, you&amp;rsquo;re in for a time-wasting and expensive ride.&lt;/p&gt;
&lt;p&gt;I want to list each approach&amp;rsquo;s pros and cons in this post. Then, I&amp;rsquo;ll settle the discussion once and for all and argue why selecting the giant cluster option is better.&lt;/p&gt;</description></item><item><title>Easily containerize Java applications with cloud native buildpacks</title><link>https://foojayio.github.io/website/today/easily-containerize-java-applications-with-cloud-native-buildpacks/</link><pubDate>Mon, 07 Oct 2024 09:15:53 +0000</pubDate><guid>https://foojayio.github.io/website/today/easily-containerize-java-applications-with-cloud-native-buildpacks/</guid><description>&lt;p&gt;&lt;strong&gt;The concept of containers has helped to bring Java developers closer than ever to the cloud-native idiom of &amp;lsquo;write once, run anywhere.&amp;rsquo;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Effectively and efficiently containerizing your Java application can be much more of a challenge than you might originally expect, especially when you might not be a container expert. Having to write and maintain a dockerfile, run a Docker daemon as root, wait for all the builds to complete, and then finally push the image to a remote registry can be complex, time-consuming, and frustrating!&lt;/p&gt;</description></item><item><title>How to Run Neo4j on Kubernetes</title><link>https://foojayio.github.io/website/today/how-to-run-neo4j-on-kubernetes/</link><pubDate>Tue, 25 Jun 2024 19:34:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/how-to-run-neo4j-on-kubernetes/</guid><description>&lt;h3 id="h3-0-kubernetes-is-an-open-source-container-orchestration-platform-that-automates-the-deployment-scaling-and-management-of-containerized-applications-in-this-post-we-walk-through-how-to-run-the-neo4j-graph-database-on-kubernetes"&gt;Kubernetes is an open-source container orchestration platform that automates the deployment, scaling, and management of containerized applications. In this post, we walk through how to run the Neo4j graph database on Kubernetes.&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;For an upcoming event, I was asked to give a demo of how to run Neo4j on Kubernetes. I had very little experience with Kubernetes, so I decided to document my journey for later reference.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="_what_is_kubernetes"&gt;What is Kubernetes?&lt;/h2&gt;
&lt;p&gt;Kubernetes is an open-source container orchestration platform that automates the deployment, scaling, and management of containerized applications. It was originally developed by Google and is now maintained by the Cloud Native Computing Foundation.&lt;/p&gt;</description></item><item><title>Why is Kubernetes Debugging so Problematic?</title><link>https://foojayio.github.io/website/today/why-is-kubernetes-debugging-so-problematic/</link><pubDate>Thu, 20 Jun 2024 06:37:37 +0000</pubDate><guid>https://foojayio.github.io/website/today/why-is-kubernetes-debugging-so-problematic/</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="#the-immutable-nature-of-containers"&gt;The Immutable Nature of Containers&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#the-limitations-of-raw-kubectl-exec-endraw-"&gt;The Limitations of &lt;code&gt;kubectl exec&lt;/code&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#avoiding-direct-modifications"&gt;Avoiding Direct Modifications&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#enter-ephemeral-containers"&gt;Enter Ephemeral Containers&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="#using-raw-kubectl-debug-endraw-"&gt;Using &lt;code&gt;kubectl debug&lt;/code&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#practical-application-of-ephemeral-containers"&gt;Practical Application of Ephemeral Containers&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#security-considerations"&gt;Security Considerations&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#interlude-the-role-of-observability"&gt;Interlude: The Role of Observability&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#command-line-debugging"&gt;Command Line Debugging&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#connecting-a-standard-ide-for-remote-debugging"&gt;Connecting a Standard IDE for Remote Debugging&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#conclusion"&gt;Conclusion&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Debugging application issues in a Kubernetes cluster can often feel like navigating a labyrinth. Containers are ephemeral by design, intended to be immutable once deployed.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This presents a unique challenge when something goes wrong and we need to dig into the issue. Before diving into the debugging tools and techniques, it&amp;rsquo;s essential to grasp the core problem: why modifying container instances directly is a bad idea.&lt;/p&gt;</description></item><item><title>Debugging Kubernetes Part 1: An Introduction</title><link>https://foojayio.github.io/website/today/debugging-kubernetes-part-1-an-introduction/</link><pubDate>Wed, 05 Jun 2024 06:12:40 +0000</pubDate><guid>https://foojayio.github.io/website/today/debugging-kubernetes-part-1-an-introduction/</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="#introduction-to-kubernetes-and-distributed-systems"&gt;Introduction to Kubernetes and Distributed Systems&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="#the-evolution-of-deployment-technologies"&gt;The Evolution of Deployment Technologies&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#enter-virtualization"&gt;Enter Virtualization&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#rise-of-containers"&gt;Rise of Containers&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#rise-of-orchestration"&gt;Rise of Orchestration&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#enter-kubernetes"&gt;Enter Kubernetes&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="#why-kubernetes-stands-out"&gt;Why Kubernetes Stands Out&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#kubernetes-for-developers"&gt;Kubernetes For Developers&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="#kubernetes-basics-in-practice"&gt;Kubernetes Basics In Practice&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#final-word"&gt;Final Word&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;While debugging in an IDE or using simple command line tools is relatively straightforward, the real challenge lies in production debugging. Modern production environments have enabled sophisticated self-healing deployments, yet they have also made troubleshooting more complex. Kubernetes (aka k8s) is probably the most well known orchestration production environment. To effectively teach debugging in Kubernetes, it&amp;rsquo;s essential to first introduce its fundamental principles.&lt;/p&gt;</description></item><item><title>Reclaiming Persistent Volumes in Kubernetes</title><link>https://foojayio.github.io/website/today/reclaiming-persistent-volumes-in-kubernetes/</link><pubDate>Wed, 28 Sep 2022 09:55:19 +0000</pubDate><guid>https://foojayio.github.io/website/today/reclaiming-persistent-volumes-in-kubernetes/</guid><description>&lt;p&gt;&lt;a href="https://kubernetes.io/" target="_blank" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt;
 is a widely used open-source container management platform for running stateless, containerized applications at scale. In recent years, Kubernetes has been extended to also support stateful workloads, including databases and key-value stores.{#43de}&lt;/p&gt;
&lt;p&gt;There are three important API resources when it comes to managing stateful applications in Kubernetes:{#8e8a}&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/" target="_blank" rel="noopener noreferrer"&gt;StatefulSet&lt;/a&gt;
 (STS)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes/" target="_blank" rel="noopener noreferrer"&gt;PersistentVolume&lt;/a&gt;
 (PV)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kubernetes.io/docs/concepts/storage/storage-classes/" target="_blank" rel="noopener noreferrer"&gt;PersistentVolumeClaim&lt;/a&gt;
 (PVC)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;STSs schedule stateful pods, which can claim PVs through PVCs and mount them as volumes. Once a PV is claimed by an STS replica, Kubernetes will make sure that the volume stays with the replica, even if the pod gets rescheduled.{#e855}&lt;/p&gt;</description></item><item><title>How the world caught up with Apache Cassandra</title><link>https://foojayio.github.io/website/today/how-the-world-caught-up-with-apache-cassandra/</link><pubDate>Thu, 15 Sep 2022 16:50:50 +0000</pubDate><guid>https://foojayio.github.io/website/today/how-the-world-caught-up-with-apache-cassandra/</guid><description>&lt;p&gt;&lt;img src="https://foojayio.github.io/website/today/how-the-world-caught-up-with-apache-cassandra/hero-techcrunch.png" alt="" loading="lazy"&gt;
&lt;/p&gt;
&lt;p&gt;The O&amp;rsquo;Reilly book, &lt;em&gt;Cassandra: The Definitive Guide,&lt;/em&gt; features a quote from Ray Kurzweil, the noted inventor and futurist: {#speakable-summary}&lt;/p&gt;
&lt;p&gt;&amp;ldquo;An invention has to make sense in the world in which it is finished, not the world in which it is started.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;This quote has a prophetic ring to it, especially considering my co-author Eben Hewitt included it in the 2010 first edition of this book we wrote, back when Apache Cassandra, the open-source, distributed, and highly scalable NoSQL database, was just on its 0.7 release.&lt;/p&gt;</description></item><item><title>A Quick Glance at the Kubernetes Gateway API</title><link>https://foojayio.github.io/website/today/kubernetes-gateway-api/</link><pubDate>Mon, 12 Sep 2022 09:55:16 +0000</pubDate><guid>https://foojayio.github.io/website/today/kubernetes-gateway-api/</guid><description>&lt;p&gt;In &lt;a href="https://blog.frankel.ch/basics-access-kubernetes-pods/" target="_blank" rel="noopener noreferrer"&gt;one of my recent blog posts&lt;/a&gt;
, I described several ways to access Kubernetes pods. One can access a pod through its IP, but pods are naturally transient. The nominal way is to configure a &lt;code&gt;Service&lt;/code&gt;: its IP is stable, and Kubernetes&amp;rsquo; job is to keep the mapping between a &lt;code&gt;Service&lt;/code&gt; and its underlying pods up-to-date.&lt;/p&gt;
&lt;p&gt;Different kinds of services are available: internal only, &lt;code&gt;NodePort&lt;/code&gt; to finally allow access from outside the cluster, and &lt;code&gt;LoadBalancer&lt;/code&gt; that relies on a third-party component - in general, a cloud provider one.&lt;/p&gt;</description></item><item><title>Multi-cluster Cassandra with Google Kubernetes Engine (Pt. 2)</title><link>https://foojayio.github.io/website/today/multi-cluster-cassandra-deployment-with-google-kubernetes-engine-pt-2/</link><pubDate>Thu, 08 Sep 2022 17:20:08 +0000</pubDate><guid>https://foojayio.github.io/website/today/multi-cluster-cassandra-deployment-with-google-kubernetes-engine-pt-2/</guid><description>&lt;p&gt;This is the second in a series of posts examining patterns for using K8ssandra to create Cassandra clusters with different deployment topologies.&lt;/p&gt;
&lt;p&gt;In the &lt;a href="https://k8ssandra.io/blog/tutorials/deploy-a-multi-datacenter-apache-cassandra-cluster-in-kubernetes/" target="_blank" rel="noopener noreferrer"&gt;first article&lt;/a&gt;
 in this series, we looked at how you could create a Cassandra cluster with two datacenters in a single cloud region, using separate Kubernetes namespaces in order to isolate workloads. For example, you might want to create a secondary Cassandra datacenter to isolate a read-heavy analytics workload from the datacenter supporting your main application.&lt;/p&gt;</description></item><item><title>Running your Database on OpenShift and CodeReady Containers</title><link>https://foojayio.github.io/website/today/running-your-database-on-openshift-and-codeready-containers/</link><pubDate>Tue, 06 Sep 2022 09:43:57 +0000</pubDate><guid>https://foojayio.github.io/website/today/running-your-database-on-openshift-and-codeready-containers/</guid><description>&lt;p&gt;Let&amp;rsquo;s take an introductory run-through of setting up your database on OpenShift, using your own hardware and RedHat&amp;rsquo;s CodeReady Containers.&lt;/p&gt;
&lt;p&gt;CodeReady Containers is a great way to run OpenShift K8s locally, ideal for development and testing. The steps in this blog post will require a machine, laptop or desktop, of decent capability; preferably quad CPUs and 16GB+ RAM.&lt;/p&gt;
&lt;h2 id="h2-0-download-and-install-redhat-s-codeready-containers"&gt;Download and Install RedHat&amp;rsquo;s CodeReady Containers&lt;/h2&gt;
&lt;p&gt;Download and install RedHat&amp;rsquo;s CodeReady Containers as described in &lt;a href="https://developers.redhat.com/blog/2019/09/05/red-hat-openshift-4-on-your-laptop-introducing-red-hat-codeready-containers" target="_blank" rel="noopener noreferrer"&gt;Red Hat OpenShift 4 on your laptop: Introducing Red Hat CodeReady Containers&lt;/a&gt;
&lt;/p&gt;</description></item><item><title>Deploy a Multi-Datacenter Cassandra Cluster in Kubernetes</title><link>https://foojayio.github.io/website/today/deploy-a-multi-datacenter-apache-cassandra-cluster-in-kubernetes-pt-1/</link><pubDate>Wed, 10 Aug 2022 08:27:59 +0000</pubDate><guid>https://foojayio.github.io/website/today/deploy-a-multi-datacenter-apache-cassandra-cluster-in-kubernetes-pt-1/</guid><description>&lt;p&gt;The &lt;a href="https://k8ssandra.io/get-started/" target="_blank" rel="noopener noreferrer"&gt;Get Started&lt;/a&gt;
 examples on the K8ssandra site are primarily concerned with spinning up a single Apache Cassandra datacenter in a single Kubernetes cluster.&lt;/p&gt;
&lt;p&gt;However, there are many situations that can benefit from other deployment options.&lt;/p&gt;
&lt;p&gt;In this series of articles, we&amp;rsquo;ll examine different deployment patterns and show how to implement them using K8ssandra.&lt;/p&gt;
&lt;h2 id="h-flexible-topologies-with-cassandra"&gt;Flexible topologies with Cassandra&lt;/h2&gt;
&lt;p&gt;From its earliest days, Cassandra has included the ability to assign nodes to datacenters and racks. A rack was originally conceived as mapping to a single rack of servers connected to shared resources, like power, network, and cooling.&lt;/p&gt;</description></item><item><title>Kubernetes and the Data Centre: Is Full Scale Migration Possible?</title><link>https://foojayio.github.io/website/today/kubernetes-and-the-data-centre-is-full-scale-migration-possible/</link><pubDate>Thu, 21 Jul 2022 13:48:13 +0000</pubDate><guid>https://foojayio.github.io/website/today/kubernetes-and-the-data-centre-is-full-scale-migration-possible/</guid><description>&lt;p&gt;&lt;img src="https://foojayio.github.io/website/today/kubernetes-and-the-data-centre-is-full-scale-migration-possible/kubernetes-genric-169jpeg_51633.jpg" alt="" loading="lazy"&gt;
&lt;/p&gt;
&lt;p&gt;Data centres used to be exactly that - the centres of our data worlds, where all information, files and records would be kept and controlled.&lt;/p&gt;
&lt;p&gt;Today, that is no longer the case. More companies are moving to cloud services, whether this is dialling down on their traditional on-premises environments or never setting them up in the first place.&lt;/p&gt;
&lt;p&gt;This is not to say that data centres will be wholly abandoned for cloud, but the mix will continue to evolve and be very different to today. Gartner &lt;a href="https://www.gartner.com/smarterwithgartner/the-everywhere-enterprise-a-gartner-qa-with-david-cappuccio/" target="_blank" rel="noopener noreferrer"&gt;predicts&lt;/a&gt;
 that by 2025, 85% of infrastructure strategies will take a more hybrid approach, integrating on-premises, colocation, cloud and edge delivery options, compared with 20% in 2020.&lt;/p&gt;</description></item><item><title>Why a Cloud-Native Database Must Run on K8s</title><link>https://foojayio.github.io/website/today/why-a-cloud-native-database-must-run-on-k8s/</link><pubDate>Tue, 19 Jul 2022 17:44:09 +0000</pubDate><guid>https://foojayio.github.io/website/today/why-a-cloud-native-database-must-run-on-k8s/</guid><description>&lt;p&gt;We&amp;rsquo;ve been talking about migrating workloads to the cloud for a long time, but a look at the application portfolios of many IT organizations demonstrates that there&amp;rsquo;s still a lot of work to be done. In many cases, challenges with persisting and moving data in clouds continue to be the key limiting factor slowing cloud adoption, despite the fact that databases in the cloud have been available for years.&lt;/p&gt;
&lt;p&gt;For this reason, there has been a surge of recent interest in data infrastructure that is designed to take maximum advantage of the benefits that cloud computing provides. A &lt;a href="https://k8ssandra.io/blog/2021/03/23/the-search-for-a-cloud-native-database/" target="_blank" rel="noopener noreferrer"&gt;cloud-native database&lt;/a&gt;
 is one that achieves the goals of scalability, elasticity, resiliency, observability and automation; the &lt;a href="https://k8ssandra.io/" target="_blank" rel="noopener noreferrer"&gt;K8ssandra&lt;/a&gt;
 project is a great example. It packages Apache &lt;a href="https://containerjournal.com/?s=Cassandra" target="_blank" rel="noopener noreferrer"&gt;Cassandra&lt;/a&gt;
 and supporting tools into a production-ready Kubernetes deployment.&lt;/p&gt;</description></item><item><title>The End of the Beginning for Apache Cassandra</title><link>https://foojayio.github.io/website/today/the-end-of-the-beginning-for-apache-cassandra/</link><pubDate>Tue, 12 Jul 2022 17:43:39 +0000</pubDate><guid>https://foojayio.github.io/website/today/the-end-of-the-beginning-for-apache-cassandra/</guid><description>&lt;p&gt;&lt;img src="https://foojayio.github.io/website/today/the-end-of-the-beginning-for-apache-cassandra/1_xslbFHC3hRapwGV_wj17vg-1024x663.jpeg" alt="" loading="lazy"&gt;
 Image: &lt;a href="https://pixabay.com/photos/prairie-river-stream-curved-sunset-679014/" target="_blank" rel="noopener noreferrer"&gt;Pixabay&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Editor&amp;rsquo;s note: This story originally ran on July 27, 2021, the day that Apache Cassandra 4.0 was released.&lt;/em&gt;{#4bbb}&lt;/p&gt;
&lt;p&gt;Today is a big day for those of us in the &lt;a href="https://cassandra.apache.org/" target="_blank" rel="noopener noreferrer"&gt;Apache Cassandra&lt;/a&gt;
 community. After a long uphill climb, Apache Cassandra 4.0 has &lt;a href="https://thenewstack.io/apache-cassandra-4-0-comes-in-ready-for-production/" target="_blank" rel="noopener noreferrer"&gt;finally shipped&lt;/a&gt;
. I say finally, because it has at times seemed like an elusive goal. I&amp;rsquo;ve been involved in the Cassandra project for almost 10 years now and I have seen a lot of ups and downs.{#d6a4}&lt;/p&gt;</description></item><item><title>K8ssandra ramps up security features to match Kubernetes’ best practices</title><link>https://foojayio.github.io/website/today/k8ssandra-ramps-up-security-features-to-match-kubernetes-best-practices/</link><pubDate>Thu, 23 Jun 2022 19:54:58 +0000</pubDate><guid>https://foojayio.github.io/website/today/k8ssandra-ramps-up-security-features-to-match-kubernetes-best-practices/</guid><description>&lt;p&gt;&lt;img src="https://foojayio.github.io/website/today/k8ssandra-ramps-up-security-features-to-match-kubernetes-best-practices/1_qz4yqblkLUoJDL3t8xrsSg-1024x478.jpeg" alt="" loading="lazy"&gt;
&lt;/p&gt;
&lt;p&gt;&lt;em&gt;New security features are coming to the open-source data platform: K8ssandra. The goal? To align even more with the security best practices of Kubernetes. Here&amp;rsquo;s an introduction to the platform&amp;rsquo;s security mission and an update on current initiatives.&lt;/em&gt;{#e3b8}&lt;/p&gt;
&lt;p&gt;The security defaults applied by &lt;a href="https://k8ssandra.io/" target="_blank" rel="noopener noreferrer"&gt;K8ssandra&lt;/a&gt;
 are about to get even more aligned with&lt;a href="https://kubernetes.io/docs/concepts/security/overview/" target="_blank" rel="noopener noreferrer"&gt;Kubernetes&amp;rsquo; security practices&lt;/a&gt;
. In an upcoming release of K8ssandra, pod and container security configurations give users full customization capabilities and default values out of the box.{#c373}&lt;/p&gt;</description></item><item><title>Managing Distributed Applications in Kubernetes Using Cilium and Istio with Helm and Operator for Deployment</title><link>https://foojayio.github.io/website/today/managing-distributed-applications-in-kubernetes-using-cilium-and-istio-with-helm-and-operator-for-deployment/</link><pubDate>Tue, 07 Jun 2022 14:51:03 +0000</pubDate><guid>https://foojayio.github.io/website/today/managing-distributed-applications-in-kubernetes-using-cilium-and-istio-with-helm-and-operator-for-deployment/</guid><description>&lt;p&gt;&lt;img src="https://foojayio.github.io/website/today/managing-distributed-applications-in-kubernetes-using-cilium-and-istio-with-helm-and-operator-for-deployment/1_i26lEM7Wl5JA7FIMlhtKNA-1024x576.jpeg" alt="" loading="lazy"&gt;
&lt;/p&gt;
&lt;p&gt;&lt;em&gt;This post will show you the benefits of managing your distributed applications with Kubernetes in cross-cloud, multi-cloud, and hybrid cloud scenarios using Cilium and Istio with Helm and Operator for deployment.&lt;/em&gt;{#6864}&lt;/p&gt;
&lt;p&gt;In our recent post on &lt;a href="https://thenewstack.io/taking-your-database-beyond-a-single-kubernetes-cluster/" target="_blank" rel="noopener noreferrer"&gt;The New Stack&lt;/a&gt;
, we showed you how you can leverage &lt;a href="https://kubernetes.io/" target="_blank" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt;
 (K8s) and &lt;a href="https://cassandra.apache.org/_/index.html" target="_blank" rel="noopener noreferrer"&gt;Apache Cassandra&lt;/a&gt;
TM to manage distributed applications at scale, with thousands of nodes across both on-premises and in the cloud. In that example, we used &lt;a href="https://k8ssandra.io/" target="_blank" rel="noopener noreferrer"&gt;K8ssandra&lt;/a&gt;
 and &lt;a href="https://cloud.google.com/" target="_blank" rel="noopener noreferrer"&gt;Google Cloud Platform&lt;/a&gt;
 (GCP) to illustrate some of the challenges you might expect to encounter as you grow into a multi-cloud environment, upgrade to another K8s version, or begin working with different distributions and complimentary tooling. In this post, we&amp;rsquo;ll explore a few alternative approaches to using K8s to help you more easily manage distributed applications.{#fec3}&lt;/p&gt;</description></item><item><title>Developer Observability, KoolKits and Reliability</title><link>https://foojayio.github.io/website/today/interview-with-tom-granot-developer-observability-koolkits-and-reliability/</link><pubDate>Wed, 16 Mar 2022 14:01:52 +0000</pubDate><guid>https://foojayio.github.io/website/today/interview-with-tom-granot-developer-observability-koolkits-and-reliability/</guid><description>&lt;p&gt;In preparation for the upcoming &lt;a href="https://www.linkedin.com/events/developerobservabilitymastercla6909167343625482241/about/" target="_blank" rel="noopener noreferrer"&gt;Developer Observability Masterclass&lt;/a&gt;
 we&amp;rsquo;re hosting at Lightrun with &lt;a href="https://www.thoughtworks.com/" target="_blank" rel="noopener noreferrer"&gt;Thoughtworks&lt;/a&gt;
, &lt;a href="https://redmonk.com/" target="_blank" rel="noopener noreferrer"&gt;RedMonk&lt;/a&gt;
 and &lt;a href="https://jfrog.com/" target="_blank" rel="noopener noreferrer"&gt;JFrog&lt;/a&gt;
, I sat down for a brief interview with Tom Granot - the Director of Developer Relations at Lightrun.&lt;/p&gt;
&lt;p&gt;Tom will MC the event as he did for the &lt;a href="https://go.lightrun.com/developer-productivity-masterclass" target="_blank" rel="noopener noreferrer"&gt;Developer Productivity Masterclass&lt;/a&gt;
 we ran back in December.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Shai:&lt;/strong&gt; Tell us a bit about yourself and your background.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tom:&lt;/strong&gt; Before joining Lightrun, I worked as an SRE at Actyx. This drove home the importance of observability tools - I got a sense of the potential problems and, to some extent, the blindness that developers face in production.&lt;/p&gt;</description></item><item><title>OSS Debugging Toolkits for Kubernetes</title><link>https://foojayio.github.io/website/today/introducing-koolkits-debugging-toolkits-for-kubernetes/</link><pubDate>Mon, 28 Feb 2022 12:27:18 +0000</pubDate><guid>https://foojayio.github.io/website/today/introducing-koolkits-debugging-toolkits-for-kubernetes/</guid><description>&lt;p&gt;KoolKits (&lt;strong&gt;K&lt;/strong&gt; ubernetes t&lt;strong&gt;oolkits&lt;/strong&gt;) are highly-opinionated, language-specific, batteries-included debug container images for Kubernetes. In practice, they&amp;rsquo;re what you would&amp;rsquo;ve installed on your production pods if you were stuck during a tough debug session in an unfamiliar shell.&lt;/p&gt;
&lt;p&gt;To briefly give some background, note that these container images are intended for use with the new &lt;a href="https://kubernetes.io/docs/tasks/debug-application-cluster/debug-running-pod/#ephemeral-container" target="_blank" rel="noopener noreferrer"&gt;kubectl debug feature&lt;/a&gt;
, which spins up &lt;a href="https://kubernetes.io/docs/concepts/workloads/pods/ephemeral-containers/" target="_blank" rel="noopener noreferrer"&gt;Ephemeral containers&lt;/a&gt;
 for interactive troubleshooting. A KoolKit will be pulled by kubectl debug, spun up as a container in your pod, and have the ability to access the same process namespace as your original container.&lt;/p&gt;</description></item><item><title>Save Hours on your Setup of K8ssandra with the New Config Builder</title><link>https://foojayio.github.io/website/today/save-hours-on-your-setup-of-k8ssandra-with-the-new-config-builder/</link><pubDate>Thu, 24 Feb 2022 19:36:47 +0000</pubDate><guid>https://foojayio.github.io/website/today/save-hours-on-your-setup-of-k8ssandra-with-the-new-config-builder/</guid><description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;Setting up K8ssandra in your workflow just got a whole lot easier. With the new Config Builder you can be running Apache Cassandra® on Kubernetes in a matter of minutes.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The purpose of K8ssandra is to make it easy to run Apache Cassandra® on Kubernetes. We recently took another big step in that direction by releasing the &lt;a href="https://dtsx.io/3pIiPcR" target="_blank" rel="noopener noreferrer"&gt;K8ssandra config builder&lt;/a&gt;
.&lt;/p&gt;
&lt;p&gt;Even if you&amp;rsquo;ve created thousands of nodes or integrated K8ssandra in your stack, you&amp;rsquo;ll probably want to give the config builder a try. Walk through the interactive wizard defining the shape of your cluster, resource requirements, and toggle features to fit your needs. This is great for smoothing out the on-ramp for a production ready environment of K8ssandra.&lt;/p&gt;</description></item><item><title>Why we decided to build a K8ssandra Operator - Part 4</title><link>https://foojayio.github.io/website/today/why-we-decided-to-build-a-k8ssandra-operator-part-4/</link><pubDate>Tue, 22 Feb 2022 17:04:28 +0000</pubDate><guid>https://foojayio.github.io/website/today/why-we-decided-to-build-a-k8ssandra-operator-part-4/</guid><description>&lt;p&gt;In the &lt;a href="https://k8ssandra.io/blog/other/why_k8ssandra_operator_part_1/" target="_blank" rel="noopener noreferrer"&gt;first&lt;/a&gt;
, &lt;a href="https://k8ssandra.io/blog/articles/why-k8ssandra-operator-part-2/" target="_blank" rel="noopener noreferrer"&gt;second&lt;/a&gt;
, and &lt;a href="https://k8ssandra.io/blog/articles/why-we-decided-to-build-a-k8ssandra-operator-part-3/" target="_blank" rel="noopener noreferrer"&gt;third&lt;/a&gt;
 posts in this series, we&amp;rsquo;ve shared conversations with K8ssandra core team members on our journey to build a Kubernetes operator for K8ssandra. We&amp;rsquo;ve discussed the virtues of the Helm package manager versus Kubernetes operators for deploying and managing infrastructure in Kubernetes and some of our implementation choices for the operator.&lt;/p&gt;
&lt;p&gt;In this final post of the series, we pick up from the previous post with a discussion of how we decided to structure our projects in GitHub, how we test the K8ssandra operator, and our hopes for how the operator will expand the K8ssandra developer community.&lt;/p&gt;</description></item><item><title>Cassandra Database Migration to Kubernetes with Zero Downtime</title><link>https://foojayio.github.io/website/today/cassandra-database-migration-to-kubernetes-with-zero-downtime/</link><pubDate>Tue, 15 Feb 2022 15:22:15 +0000</pubDate><guid>https://foojayio.github.io/website/today/cassandra-database-migration-to-kubernetes-with-zero-downtime/</guid><description>&lt;p&gt;K8ssandra is a cloud-native distribution of the Apache Cassandra® database that runs on Kubernetes, with a suite of tools to ease and automate operational tasks. In this post, we&amp;rsquo;ll walk you through a database migration from a Cassandra cluster running in AWS EC2 to a K8ssandra cluster running in Kubernetes on AWS EKS, with zero downtime.&lt;/p&gt;
&lt;p&gt;As an Apache Cassandra user, your expectation should be that migrating to K8ssandra would happen without downtime. To make that happen with &amp;ldquo;classic&amp;rdquo; clusters running on virtual machines or bare metal instances, you will use the datacenter (DC) switch technique which is commonly used in the Cassandra community to transfer clusters to different hardware or environments. The good news is that it&amp;rsquo;s not very different for clusters running in Kubernetes as most Container Network Interfaces (CNI) will provide routable pod IPs.&lt;/p&gt;</description></item><item><title>Deploying to Multiple Kubernetes Clusters with the K8ssandra Operator</title><link>https://foojayio.github.io/website/today/deploying-to-multiple-kubernetes-clusters-with-the-k8ssandra-operator/</link><pubDate>Fri, 04 Feb 2022 22:10:56 +0000</pubDate><guid>https://foojayio.github.io/website/today/deploying-to-multiple-kubernetes-clusters-with-the-k8ssandra-operator/</guid><description>&lt;p&gt;&lt;img src="https://foojayio.github.io/website/today/deploying-to-multiple-kubernetes-clusters-with-the-k8ssandra-operator/0_cYkNr7XdB-MsJiu5-1024x674.png" alt="" loading="lazy"&gt;
&lt;/p&gt;
&lt;p&gt;We built the new K8ssandra Operator to simplify deploying multiple Apache Cassandra data centers in different regions and across multiple Kubernetes (K8s) clusters. We&amp;rsquo;re not at the finish line just yet, but we&amp;rsquo;ve hit the first major milestone. Now, it&amp;rsquo;s easier than ever to run Apache Cassandra® across multiple K8s clusters in multiple regions with the K8ssandraCluster!&lt;/p&gt;
&lt;p&gt;The K8ssandraCluster is a new custom resource for K8ssandra that covers all the bases necessary for installing a production-ready, multi-cluster K8ssandra deployment. Head over to the &lt;a href="https://medium.com/building-the-open-data-stack/deploying-to-multiple-kubernetes-clusters-with-the-k8ssandra-operator-f7562bee1841" target="_blank" rel="noopener noreferrer"&gt;DataStax Tech blog&lt;/a&gt;
 to learn more about how to specify your remote clusters with the K8ssandraCluster, its deployment architecture, and what&amp;rsquo;s coming next in our continued development of the K8ssandra operator.&lt;/p&gt;</description></item><item><title>Backing up K8ssandra with MinIO</title><link>https://foojayio.github.io/website/today/backing-up-k8ssandra-with-minio-2/</link><pubDate>Thu, 03 Feb 2022 22:50:09 +0000</pubDate><guid>https://foojayio.github.io/website/today/backing-up-k8ssandra-with-minio-2/</guid><description>&lt;p&gt;K8ssandra includes Medusa for Apache Cassandra® to handle backup and restore for your Cassandra nodes. Recently Medusa was upgraded to introduce support for all S3 compatible backends, including &lt;a href="https://min.io/" target="_blank" rel="noopener noreferrer"&gt;MinIO&lt;/a&gt;
, the popular k8s-native object storage suite. Let&amp;rsquo;s see how to set up K8ssandra and MinIO to backup Cassandra in just a few steps.&lt;/p&gt;
&lt;h2 id="deploy-minio"&gt;Deploy MinIO&lt;/h2&gt;
&lt;p&gt;Similar to K8ssandra, MinIO can be simply deployed through Helm.&lt;/p&gt;
&lt;p&gt;First, add the MinIO repository to your local list:&lt;/p&gt;</description></item><item><title>Unboxing K8ssandra: The Data Layer For Your Kubernetes-Powered Applications</title><link>https://foojayio.github.io/website/today/unboxing-k8ssandra-the-data-layer-for-your-kubernetes-powered-applications/</link><pubDate>Tue, 01 Feb 2022 17:51:35 +0000</pubDate><guid>https://foojayio.github.io/website/today/unboxing-k8ssandra-the-data-layer-for-your-kubernetes-powered-applications/</guid><description>&lt;h4 id="a-complimentary-live-webinar-sponsored-by-datastax"&gt;A Complimentary Live Webinar, Sponsored by DataStax&lt;/h4&gt;
&lt;p&gt;Kubernetes made it easy to deploy and scale out your cloud-native applications. With &lt;a href="https://k8ssandra.io/" target="_blank" rel="noopener noreferrer"&gt;K8ssandra&lt;/a&gt;
, you can now scale application data with the same simplicity and high availability. Join us as we unbox K8ssandra a cloud native data layer for Kubernetes and explore how you can deploy it alongside your applications.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://docs.k8ssandra.io/install/" target="_blank" rel="noopener noreferrer"&gt;Install k8ssandra&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Authenticate with &lt;a href="https://stargate.io/" target="_blank" rel="noopener noreferrer"&gt;Stargate&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Query your data via a convenient API (REST, document, or graphql)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Not familiar with Cassandra? &lt;a href="https://astra.dev/3f8QkAl" target="_blank" rel="noopener noreferrer"&gt;Astra DB&lt;/a&gt;
 is a great (free) place to learn without any of the infrastructure setup, or management headaches.&lt;/p&gt;</description></item><item><title>Introducing the GKE Autopilot Cluster</title><link>https://foojayio.github.io/website/today/introducing-the-gke-autopilot-cluster/</link><pubDate>Thu, 20 Jan 2022 08:28:34 +0000</pubDate><guid>https://foojayio.github.io/website/today/introducing-the-gke-autopilot-cluster/</guid><description>&lt;p&gt;&lt;strong&gt;Learn about Google Kubernetes Engine Autopilot features. Also, let&amp;rsquo;s find out if it is worth managing your Kubernetes worker nodes yourself!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The following is an excerpt from my book &lt;strong&gt;Effortless Cloud-Native App Development Using Skaffold&lt;/strong&gt; from Packt Publishing.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1636304168731/qHmKbqm_y.jpeg" alt="B17385_Mockup Cover_High Res.jpg" loading="lazy"&gt;
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The book is available for order from &lt;a href="https://www.amazon.com/Effortless-Cloud-Native-Development-using-Skaffold/dp/1801077118" target="_blank" rel="noopener noreferrer"&gt;Amazon.com&lt;/a&gt;
 and directly from &lt;a href="https://www.packtpub.com/product/effortless-cloud-native-apps-development-using-skaffold/9781801077118" target="_blank" rel="noopener noreferrer"&gt;Packt&lt;/a&gt;
. The excerpt below comes from chapter 8: &amp;ldquo;Deploying a Spring Boot Application to the Google Kubernetes Engine Using Skaffold&amp;rdquo;.&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Taking Your Database Beyond a Single Kubernetes Cluster</title><link>https://foojayio.github.io/website/today/taking-your-database-beyond-a-single-kubernetes-cluster/</link><pubDate>Wed, 19 Jan 2022 10:31:47 +0000</pubDate><guid>https://foojayio.github.io/website/today/taking-your-database-beyond-a-single-kubernetes-cluster/</guid><description>&lt;p&gt;&lt;img src="https://foojayio.github.io/website/today/taking-your-database-beyond-a-single-kubernetes-cluster/0_ntxtNVffHhl99weW-1-1024x535.jpg" alt="" loading="lazy"&gt;
&lt;/p&gt;
&lt;p&gt;By &lt;a href="https://www.linkedin.com/in/bradfordcp/" target="_blank" rel="noopener noreferrer"&gt;Christopher Bradford&lt;/a&gt;
 and &lt;a href="https://www.linkedin.com/in/ty-morton-2b55b82/" target="_blank" rel="noopener noreferrer"&gt;Ty Morton&lt;/a&gt;
{#31db}&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;Global applications need a data layer that is as distributed as the users they serve. &lt;a href="https://cassandra.apache.org/_/index.html" target="_blank" rel="noopener noreferrer"&gt;Apache Cassandra&lt;/a&gt;
 has risen to this challenge, handling data needs for the likes of Apple, Netflix and Sony. Traditionally, managing data layers for a distributed application was handled with dedicated teams to manage the deployment and operations of thousands of nodes &amp;mdash; both on-premises and in the cloud.&lt;/p&gt;</description></item><item><title>Kubernetes and Apache Cassandra: What Works (and What Doesn’t)</title><link>https://foojayio.github.io/website/today/kubernetes-and-apache-cassandra-what-works-and-what-doesnt/</link><pubDate>Fri, 14 Jan 2022 16:30:50 +0000</pubDate><guid>https://foojayio.github.io/website/today/kubernetes-and-apache-cassandra-what-works-and-what-doesnt/</guid><description>&lt;p&gt;&lt;img src="https://foojayio.github.io/website/today/kubernetes-and-apache-cassandra-what-works-and-what-doesnt/K15a-AdobeStock_459893049-1536x922-1-1024x615.jpeg" alt="" loading="lazy"&gt;
 &amp;ldquo;I need it now and I need it reliable&amp;rdquo;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ndash; ANYONE WHO HASN&amp;rsquo;T DEPLOYED APPLICATION INFRASTRUCTURE&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;If you&amp;rsquo;re on the receiving end of this statement, we understand you here in the &lt;a href="https://dtsx.io/3uZHFqS" target="_blank" rel="noopener noreferrer"&gt;K8ssandra community&lt;/a&gt;
. Although we do have reason for hope. Recent &lt;a href="https://dok.community/dokc-2021-report/" target="_blank" rel="noopener noreferrer"&gt;surveys&lt;/a&gt;
 have shown that &lt;a href="https://kubernetes.io/" target="_blank" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt;
 (K8s) is growing in popularity, not only because it&amp;rsquo;s powerful technology, but because it actually delivers on reducing the toil of deployment.&lt;/p&gt;</description></item><item><title>How to Put a Database in Kubernetes?</title><link>https://foojayio.github.io/website/today/how-to-put-a-database-in-kubernetes/</link><pubDate>Thu, 13 Jan 2022 09:18:38 +0000</pubDate><guid>https://foojayio.github.io/website/today/how-to-put-a-database-in-kubernetes/</guid><description>&lt;p&gt;&lt;img src="https://foojayio.github.io/website/today/how-to-put-a-database-in-kubernetes/0_aX8FjIfXNHJhbSWU.png" alt="" loading="lazy"&gt;
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Learn the key steps of deploying databases and stateful workloads in Kubernetes and meet the cloud-native technologies, like K8ssandra, that can streamline Apache Cassandra for K8s.&lt;/strong&gt;{#95cc}&lt;/p&gt;
&lt;p&gt;The idea of running a stateful workload in Kubernetes (K8s) can be intimidating, especially if you haven&amp;rsquo;t done it before. How do you deploy a database? Where is the actual storage? How is the storage mapped to the database or the application using it?{#6cde}&lt;/p&gt;</description></item><item><title>Requirements for Running K8ssandra for Development</title><link>https://foojayio.github.io/website/today/requirements-for-running-k8ssandra-for-development/</link><pubDate>Thu, 06 Jan 2022 12:15:27 +0000</pubDate><guid>https://foojayio.github.io/website/today/requirements-for-running-k8ssandra-for-development/</guid><description>&lt;br /&gt;
&lt;p&gt;The K8ssandra &lt;a href="https://k8ssandra.io/get-started/" target="_blank" rel="noopener noreferrer"&gt;Quick start&lt;/a&gt;
 is a excellent guide for doing a full installation of K8ssandra on a dev laptop and trying out the various components of the K8ssandra stack. While this is a great way to get your first hands-on experience with K8ssandra, let&amp;rsquo;s state the obvious: running K8ssandra locally on a dev laptop is not aimed at performance. In this blog post, we will start Apache Cassandra® locally then explain how to run benchmarks to help evaluate what level of performance (especially throughput) you can expect from a dev laptop deployment.&lt;/p&gt;</description></item><item><title>Why K8ssandra?</title><link>https://foojayio.github.io/website/today/why-k8ssandra/</link><pubDate>Thu, 06 Jan 2022 12:10:09 +0000</pubDate><guid>https://foojayio.github.io/website/today/why-k8ssandra/</guid><description>&lt;h2 id="the-problem-scalable-data-persistence-for-cloud-native-applications"&gt;The problem: scalable data persistence for cloud-native applications&lt;/h2&gt;
&lt;p&gt;The past decade and a half has brought tremendous change in how we in the software industry think about building and delivering internet applications. With the launch of Amazon Web Services (AWS) in 2006, companies of any size could access cloud computing infrastructure. The burst of creativity that followed gave birth to concepts like &lt;a href="http://pzf.fremantle.org/2010/05/cloud-native.html" target="_blank" rel="noopener noreferrer"&gt;cloud-native&lt;/a&gt;
 in 2010, and methodologies such as the &lt;a href="https://12factor.net/" target="_blank" rel="noopener noreferrer"&gt;twelve-factor app&lt;/a&gt;
 in 2011.&lt;/p&gt;</description></item><item><title>Building Stateful Microservices in the Cloud Native World</title><link>https://foojayio.github.io/website/today/different-approaches-to-building-stateful-microservices-in-the-cloud-native-world/</link><pubDate>Tue, 04 Jan 2022 09:34:13 +0000</pubDate><guid>https://foojayio.github.io/website/today/different-approaches-to-building-stateful-microservices-in-the-cloud-native-world/</guid><description>&lt;p&gt;&lt;img src="https://www.javaadvent.com/content/uploads/2021/11/pexels-photo-164170.jpeg" alt="Snow-capped mountains and landscape with clouds" loading="lazy"&gt;
Cloud Native computing is all about working with stateless data and serverless systems. But we all live in a stateful world, in which data flows through systems interconnected with one another through complex networks.&lt;/p&gt;
&lt;p&gt;So how can systems be able to manage and track the flow of data in a coherent fashion and in a stateless world?&lt;/p&gt;
&lt;h3 id="h3-0-navigating-the-maze-of-cloud-related-terminologies"&gt;Navigating the maze of cloud related terminologies&lt;/h3&gt;
&lt;p&gt;We will first iron out a few terminologies that some folks appear to be using almost interchangeably in the current cloud computing era:&lt;/p&gt;</description></item><item><title>New Survey Finds Data on Kubernetes Is No Longer a Pipe Dream</title><link>https://foojayio.github.io/website/today/new-survey-finds-data-on-kubernetes-is-no-longer-a-pipe-dream/</link><pubDate>Thu, 30 Dec 2021 15:52:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/new-survey-finds-data-on-kubernetes-is-no-longer-a-pipe-dream/</guid><description>&lt;p&gt;For people that work in infrastructure and application development, the pace of change is quick. Finish one project and it&amp;rsquo;s on to the next. Each iteration requires an evaluation asking if the right technology is being used and if it provides a new advantage. Kubernetes has been on the fast track of continuous evaluation. New projects and methodologies are continuously emerging and it can be hard to keep up. Then there is the question of running stateful services. The Data on Kubernetes community has &lt;a href="https://dok.community/dokc-2021-report/" target="_blank" rel="noopener noreferrer"&gt;released a report&lt;/a&gt;
 titled &amp;ldquo;Data on Kubernetes 2021&amp;rdquo; to give us a snapshot of where our industry sits with stateful workloads. Over 500 executives and tech leaders were asked some very direct and insightful questions about how they use Kubernetes. It turns out that there were a lot of surprising finds. Some that I would have never predicted. Let&amp;rsquo;s dig into some of the highlights that stood out to me.&lt;/p&gt;</description></item><item><title>The future of cloud-native databases begins with Apache Cassandra 4.0</title><link>https://foojayio.github.io/website/today/the-future-of-cloud-native-databases-begins-with-apache-cassandra-4-0/</link><pubDate>Wed, 29 Dec 2021 07:40:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/the-future-of-cloud-native-databases-begins-with-apache-cassandra-4-0/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;Reliability at massive scale is one of the biggest challenges we face at Amazon.com, one of the largest e-commerce operations in the world; even the slightest outage has significant financial consequences and impacts customer trust.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;This was the first line of the highly impactful &lt;a href="http://www.cs.cornell.edu/courses/cs5414/2017fa/papers/dynamo.pdf" target="_blank" rel="noopener noreferrer"&gt;paper&lt;/a&gt;
 titled &amp;ldquo;Dynamo: Amazon&amp;rsquo;s Highly Available Key-value Store.&amp;rdquo; Published in 2007, it was written at a time when the status quo of database systems was not working for the massive explosion of internet-based applications. A team of computer engineers and scientists at Amazon completely re-thought the idea of data storage in terms of what would be needed for the future, with a firm footing in the computer science of the past. They were trying to solve an immediate problem but they had unwittingly sparked a huge revolution with distributed databases and the eventual collision with cloud-native applications.&lt;/p&gt;</description></item><item><title>Why a Serverless Data API Might be Your Next Database</title><link>https://foojayio.github.io/website/today/why-a-serverless-data-api-might-be-your-next-database/</link><pubDate>Wed, 01 Dec 2021 14:53:44 +0000</pubDate><guid>https://foojayio.github.io/website/today/why-a-serverless-data-api-might-be-your-next-database/</guid><description>&lt;p&gt;App development stacks have been improving so rapidly and effectively that today there are a number of easy, straightforward paths to push code to production, on the cloud platform of your choice. But what use are applications without the data that users interact with? Persistent data is such an indispensable piece of the IT puzzle that it&amp;rsquo;s perhaps the reason the other pieces even exist.&lt;/p&gt;
&lt;p&gt;Enter cloud and internet scale requirements, essentially mandating that back-end services must be independently scalable / modular subsystems to succeed. Traditionally, this requirement has been difficult in the extreme for stateful systems. No doubt, database as-a-service (DBaaS) has made provisioning, operations, and security easier. But as anyone who has tried to run databases on Kubernetes will tell you: auto scaling databases, especially ones that are easy for developers to use, remain out of reach for mere mortals.&lt;/p&gt;</description></item><item><title>Port Management in Local Kubernetes Clusters</title><link>https://foojayio.github.io/website/today/port-management-in-local-kubernetes-clusters/</link><pubDate>Mon, 29 Nov 2021 08:44:25 +0000</pubDate><guid>https://foojayio.github.io/website/today/port-management-in-local-kubernetes-clusters/</guid><description>&lt;p&gt;Most of my talks contain a demo. A fair share of these demos require multiple &amp;ldquo;infrastructure&amp;rdquo; dependencies: a database (or more), Elasticsearch, you name it. To ease my setup and avoid messing up my machine, I use either Docker Compose or Kubernetes locally on my Mac. Both rely on Docker Desktop.&lt;/p&gt;
&lt;p&gt;To expose a cluster &lt;code&gt;Service&lt;/code&gt; on my host, I use &lt;code&gt;nodePort&lt;/code&gt;. Hence, I set a dedicated node port for each service. I need to remember each of them for each demo. Worse, services might be (are) declared across different manifest files.&lt;/p&gt;</description></item><item><title>K8ssandra: Production-Ready Platform for Cassandra on Kubernetes</title><link>https://foojayio.github.io/website/today/k8ssandra-production-ready-platform-for-running-apache-cassandra-on-kubernetes/</link><pubDate>Wed, 24 Nov 2021 09:45:12 +0000</pubDate><guid>https://foojayio.github.io/website/today/k8ssandra-production-ready-platform-for-running-apache-cassandra-on-kubernetes/</guid><description>&lt;p&gt;&lt;a href="https://k8ssandra.io/" target="_blank" rel="noopener noreferrer"&gt;K8ssandra&lt;/a&gt;
, an open-source distribution of Apache Cassandra for Kubernetes, aims to provide a &amp;ldquo;production-ready platform&amp;rdquo;, and this includes automation for operational tasks such as repairs, backups, and monitoring. Cassandra is a distributed NoSQL database designed for global scale and fault tolerance for the most demanding applications on the planet, written in Java.&lt;/p&gt;
&lt;p&gt;K8ssandra is deployed using Helm and supports stateful workloads out of the box, which enables database administrators (DBAs) and site reliability engineers (SREs) to set up and operate Cassandra clusters using best practices in a Kubernetes environment.&lt;/p&gt;</description></item><item><title>K8ssandra Performance Benchmarks on Cloud Managed Kubernetes</title><link>https://foojayio.github.io/website/today/k8ssandra-performance-benchmarks-on-cloud-managed-kubernetes/</link><pubDate>Thu, 30 Sep 2021 08:06:22 +0000</pubDate><guid>https://foojayio.github.io/website/today/k8ssandra-performance-benchmarks-on-cloud-managed-kubernetes/</guid><description>&lt;p&gt;Is there a cost to running Apache Cassandra in containers? How about on Kubernetes? We decided to answer those questions and benchmark K8ssandra on Amazon Web Services (AWS), Google Cloud Platform (GCP) and Azure managed Kubernetes services, comparing it to a Cassandra cluster running on AWS EC2 instances. The latter, being a very common setup for enterprises operating Cassandra clusters, serves as our baseline comparing apples to &amp;ldquo;apples in containers&amp;rdquo;.&lt;/p&gt;</description></item><item><title>Connect Stateful Workloads Across Kubernetes Clusters</title><link>https://foojayio.github.io/website/today/connect-stateful-workloads-across-kubernetes-clusters/</link><pubDate>Fri, 23 Jul 2021 08:44:32 +0000</pubDate><guid>https://foojayio.github.io/website/today/connect-stateful-workloads-across-kubernetes-clusters/</guid><description>&lt;p&gt;One of the biggest selling points of Apache Cassandra™ is its shared-nothing architecture, making it an ideal choice for deployments that span multiple physical datacenters. So when our &lt;a href="https://astra.datastax.com/" target="_blank" rel="noopener noreferrer"&gt;Cassandra as-a-service&lt;/a&gt;
 single-region offering reached maturity, we naturally started looking into offering it cross-region and cross-cloud.&lt;/p&gt;
&lt;p&gt;One of the biggest challenges in providing a solution that spans multiple regions and clouds is correctly configuring the network so that Cassandra nodes in different data centers can communicate with each other successfully, even as individual nodes are added, replaced, or removed. From the start of the cloud journey at DataStax, we selected Kubernetes as our orchestration platform, so our search for a networking solution started there. While we&amp;rsquo;ve benefited immensely from the ecosystem and have our share of war stories, this time we chose to forge our own path, landing on ad-hoc overlay virtual application networks (how&amp;rsquo;s that for a buzzword soup?).&lt;/p&gt;</description></item><item><title>The Search for a Cloud-Native Database</title><link>https://foojayio.github.io/website/today/the-search-for-a-cloud-native-atabase/</link><pubDate>Fri, 16 Jul 2021 07:40:06 +0000</pubDate><guid>https://foojayio.github.io/website/today/the-search-for-a-cloud-native-atabase/</guid><description>&lt;p&gt;The concept of &amp;ldquo;cloud-native&amp;rdquo; has come to stand for a collection of best practices for application logic and infrastructure, including databases. However, many of the databases supporting our applications have been around for decades, before the cloud or cloud-native was a thing. The data gravity associated with these legacy solutions has limited our ability to move applications and workloads.&lt;/p&gt;
&lt;p&gt;As we move to the cloud, how do we evolve our data storage approach? Do we need a cloud-native database? What would it even mean for a database to be cloud-native? Let&amp;rsquo;s take a look at these questions.&lt;/p&gt;</description></item><item><title>A Case for Databases on Kubernetes from a Former Skeptic</title><link>https://foojayio.github.io/website/today/a-case-for-databases-on-kubernetes-from-a-former-skeptic/</link><pubDate>Tue, 13 Jul 2021 09:12:18 +0000</pubDate><guid>https://foojayio.github.io/website/today/a-case-for-databases-on-kubernetes-from-a-former-skeptic/</guid><description>&lt;p&gt;Kubernetes is everywhere. Transactional apps, video streaming services and machine learning workloads are finding a home on this ever-growing platform. But what about databases?&lt;/p&gt;
&lt;p&gt;If you had asked me this question five years ago, the answer would have been a resounding &amp;ldquo;&lt;strong&gt;No!&lt;/strong&gt; &amp;quot; &amp;mdash; based on my experience in development and operations. In the following years, as more resources emerged for stateful applications, my answer would have changed to &amp;ldquo;&lt;em&gt;&lt;strong&gt;Maybe&lt;/strong&gt;,&amp;rdquo;&lt;/em&gt; but always with a qualifier: &amp;ldquo;It&amp;rsquo;s fine for development or test environments&amp;hellip;&amp;rdquo; or &amp;ldquo;If the rest of your tooling is Kubernetes-based, and you have extensive experience&amp;hellip;&amp;rdquo;&lt;/p&gt;</description></item><item><title>Ask Yourself: Do You Really Need Kubernetes?</title><link>https://foojayio.github.io/website/today/do-you-really-need-kubernetes/</link><pubDate>Wed, 07 Jul 2021 07:37:55 +0000</pubDate><guid>https://foojayio.github.io/website/today/do-you-really-need-kubernetes/</guid><description>&lt;p&gt;These days, it seems &lt;a href="https://kubernetes.io/" target="_blank" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt;
 is a topic that is never too far from people&amp;rsquo;s lips. The tool, and the associated tools built around it, are talked about so often it seems it&amp;rsquo;s the only subject important to developers these days - especially as the IT world becomes increasingly orientated towards cloud and microservices.&lt;/p&gt;
&lt;p&gt;But in spite of all the conversation around Kubernetes&amp;hellip; do you &lt;em&gt;really&lt;/em&gt; need Kubernetes for your environment? Or is it just another case of the next &amp;rsquo;new and shiny&amp;rsquo; object, with people distracted by the novelty and possibility, rather than the facts? In this article, I&amp;rsquo;ll take a closer look at why Kubernetes might be a case of the hype outweighing the helpfulness in most cases.&lt;/p&gt;</description></item><item><title>Kubernetes Is The Best Technology For Running A Cloud-Native Database</title><link>https://foojayio.github.io/website/today/why-kubernetes-is-the-best-technology-for-running-a-cloud-native-database/</link><pubDate>Wed, 30 Jun 2021 09:13:19 +0000</pubDate><guid>https://foojayio.github.io/website/today/why-kubernetes-is-the-best-technology-for-running-a-cloud-native-database/</guid><description>&lt;p&gt;We&amp;rsquo;ve been talking about migrating workloads to the cloud for a long time, but a look at the application portfolios of many IT organizations demonstrates that there&amp;rsquo;s still a lot of work to be done. In many cases, challenges with persisting and moving data in clouds continue to be the key limiting factor slowing cloud adoption, despite the fact that databases in the cloud have been available for years.&lt;/p&gt;
&lt;p&gt;For this reason, there has been a surge of recent interest in data infrastructure that is designed to take maximum advantage of the benefits that cloud computing provides. A &lt;a href="https://k8ssandra.io/blog/2021/03/23/the-search-for-a-cloud-native-database/?ref=hackernoon.com" target="_blank" rel="noopener noreferrer"&gt;cloud-native database&lt;/a&gt;
 is one that achieves the goals of scalability, elasticity, resiliency, observability, and automation; the &lt;a href="https://k8ssandra.io/?utm_medium=referral&amp;amp;utm_source=hackernoon&amp;amp;utm_campaign=k8ssandra&amp;amp;ref=hackernoon.com" target="_blank" rel="noopener noreferrer"&gt;K8ssandra&lt;/a&gt;
 project is a great example. It packages Apache Cassandra and supporting tools into a production-ready Kubernetes deployment.&lt;/p&gt;</description></item><item><title>Let's Optimize Relational Database Access</title><link>https://foojayio.github.io/website/today/optimizing-relational-database-access/</link><pubDate>Mon, 28 Jun 2021 07:42:54 +0000</pubDate><guid>https://foojayio.github.io/website/today/optimizing-relational-database-access/</guid><description>&lt;p&gt;Database performances have been massively documented in the literature. Every week, a new blog post or article explains why database X is better than database Y. And, no, this post is not about that. This article summarizes the interactions between your database client (sometimes called driver) and the database server. It is essential to understand the principles of these exchanges to comprehend the limitations of the API the driver can expose safely.&lt;/p&gt;</description></item><item><title>Jakarta EE Application Deployment to Kubernetes Cluster in Jelastic PaaS</title><link>https://foojayio.github.io/website/today/jakarta-ee-application-deployment-kubernetes-cluster-jelastic-paas/</link><pubDate>Wed, 16 Jun 2021 06:58:31 +0000</pubDate><guid>https://foojayio.github.io/website/today/jakarta-ee-application-deployment-kubernetes-cluster-jelastic-paas/</guid><description>&lt;p&gt;Recently, we were asked to sponsor cloud hosting of a Jakarta EE project, called &lt;a href="https://cargo-tracker.j.scaleforce.net/" target="_blank" rel="noopener noreferrer"&gt;Cargo Tracker&lt;/a&gt;
. Being a member of Jakarta EE Working Group, Jelastic wanted to support the community and thus we started to run this application at one of our service providers (&lt;a href="https://jelastic.cloud/details/scaleforce/" target="_blank" rel="noopener noreferrer"&gt;Scaleforce&lt;/a&gt;
).&lt;/p&gt;
&lt;figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"&gt;
 &lt;div class="wp-block-embed__wrapper"&gt;
 &lt;blockquote class="twitter-tweet" data-width="500" data-dnt="true"&gt;
 &lt;p lang="en" dir="ltr"&gt;Cargo Tracker is now deployed to Kubernetes on the cloud using GitHub Actions. Thanks sponsors Jelastic and Scaleforce! &lt;a target="_blank" href="https://t.co/zhnmj0TB7Z"&gt;https://t.co/zhnmj0TB7Z&lt;/a&gt; // &lt;a target="_blank" href="https://twitter.com/Jelastic?ref_src=twsrc%5Etfw"&gt;@Jelastic&lt;/a&gt;, &lt;a target="_blank" href="https://twitter.com/scaleforce?ref_src=twsrc%5Etfw"&gt;@scaleforce&lt;/a&gt; &lt;a target="_blank" href="https://t.co/BRGkwxban2"&gt;pic.twitter.com/BRGkwxban2&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Preventing YAML Parsing Vulnerabilities in Java</title><link>https://foojayio.github.io/website/today/preventing-yaml-parsing-vulnerabilities-in-java/</link><pubDate>Thu, 06 May 2021 16:09:24 +0000</pubDate><guid>https://foojayio.github.io/website/today/preventing-yaml-parsing-vulnerabilities-in-java/</guid><description>&lt;p&gt;YAML is a human-readable language to serialize data that&amp;rsquo;s commonly used for config files. The word YAML is an acronym for &amp;ldquo;YAML ain&amp;rsquo;t a markup language&amp;rdquo; and was first released in 2001. You can compare YAML to JSON or XML as all of them are text-based structured formats.&lt;/p&gt;
&lt;p&gt;YAML files are often used to configure applications, application servers, or clusters. It is a very common format in Spring Boot applications and, of course, to configure Kubernetes. However, similarly to JSON and XML, you can use YAML to serialize and deserialize data.&lt;/p&gt;</description></item><item><title>Why Java Developers Continue to Rely on Jakarta EE</title><link>https://foojayio.github.io/website/today/why-java-developers-continue-to-rely-on-jakarta-ee/</link><pubDate>Wed, 05 May 2021 07:53:59 +0000</pubDate><guid>https://foojayio.github.io/website/today/why-java-developers-continue-to-rely-on-jakarta-ee/</guid><description>&lt;p&gt;Over the past year, the Eclipse Foundation spoke to leading Java developers around the world to discuss why they rely on&lt;a href="https://jakarta.ee/" target="_blank" rel="noopener noreferrer"&gt;Jakarta EE&lt;/a&gt;
 and the unique benefits of using Jakarta EE technologies. Their input is captured in our white paper, which describes the important advantages Jakarta EE offers today and for the future.&lt;/p&gt;
&lt;figure class="aligncenter size-large is-resized"&gt;
 &lt;a href="https://outreach.jakartaee.org/white-paper-java-applications" target="_blank" rel="noopener"&gt;&lt;img fetchpriority="high" decoding="async" src="https://www.agilejava.eu/wp-content/uploads/2021/03/JakartaEEWhitepaper.png" alt="" class="wp-image-3727" width="222" height="288"&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;a href="https://outreach.jakartaee.org/white-paper-java-applications" target="_blank" rel="noopener noreferrer"&gt;Download the Jakarta EE white paper!&lt;/a&gt;
&lt;/p&gt;
&lt;h4 id="they"&gt;&lt;strong&gt;They&amp;rsquo;re Looking Ahead, Not Back&lt;/strong&gt;&lt;/h4&gt;
&lt;p&gt;With Jakarta EE&amp;rsquo;s long history as Java EE, it&amp;rsquo;s sometimes easy for developers to dismiss the technology as yesterday&amp;rsquo;s approach. But Jakarta EE technologies are embedded, and relied upon, in a way no other technologies are. Here are some examples you might not be aware of:&lt;/p&gt;</description></item><item><title>Deploying Spring Boot Application on Kubernetes</title><link>https://foojayio.github.io/website/today/deploying-spring-boot-applications-on-kubernetes/</link><pubDate>Fri, 26 Feb 2021 17:51:44 +0000</pubDate><guid>https://foojayio.github.io/website/today/deploying-spring-boot-applications-on-kubernetes/</guid><description>&lt;p&gt;In this article, I will explain how you can create a pod, deploy a Spring Boot application, and manage the single node cluster with Lens IDE on Docker Desktop.&lt;/p&gt;
&lt;h3 id="h3-0-what-you-will-learn"&gt;What you will learn.&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;How to Enable Kubernetes With Docker Desktop for Mac&lt;/li&gt;
&lt;li&gt;How to Create a Pod&lt;/li&gt;
&lt;li&gt;How to Deploy a Working Spring Boot Application on Kubernetes&lt;/li&gt;
&lt;li&gt;How to Monitor and Manage Kubernetes Cluster with Lens IDE&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Moving on, you may not know this, but you can have a functional single-node Kubernetes cluster running locally with your Docker Desktop by following the below steps. But wait, What is Docker Desktop?&lt;/p&gt;</description></item><item><title>How to Create a Kubernetes Operator in Java</title><link>https://foojayio.github.io/website/today/creating-a-kubernetes-operator-in-java/</link><pubDate>Wed, 27 Jan 2021 08:46:27 +0000</pubDate><guid>https://foojayio.github.io/website/today/creating-a-kubernetes-operator-in-java/</guid><description>&lt;p&gt;Kubernetes is much more than a runtime platform for Docker containers.&lt;/p&gt;
&lt;p&gt;Through its API, you can not only create custom clients, but you can also extend Kubernetes. Those custom Controllers are called Operators and work with application-specific custom resource definitions. You can not only write those Kubernetes operators in Go, but you can do this also in Java.&lt;/p&gt;
&lt;p&gt;In this talk, delivered by Payara&amp;rsquo;s&lt;a href="https://twitter.com/rdebusscher" target="_blank" rel="noopener noreferrer"&gt;Rudy De Busscher&lt;/a&gt;
 at &lt;a href="https://jcon.one/en/" target="_blank" rel="noopener noreferrer"&gt;JCON 2020&lt;/a&gt;
, you will be guided through setting up your environment to your first explorations of the Kubernetes API within a plain Java program.&lt;/p&gt;</description></item><item><title>CI/CD Workflow for Spring Boot Applications on Kubernetes via Skaffold</title><link>https://foojayio.github.io/website/today/ci-cd-workflow-for-spring-boot-applications-on-kubernetes-via-skaffold/</link><pubDate>Tue, 19 Jan 2021 07:37:03 +0000</pubDate><guid>https://foojayio.github.io/website/today/ci-cd-workflow-for-spring-boot-applications-on-kubernetes-via-skaffold/</guid><description>&lt;p&gt;In this post, we will create a Local CI/CD workflow for a Spring Boot Application and deploy it to Kubernetes using Skaffold.&lt;br&gt;
&lt;img src="https://foojayio.github.io/website/today/ci-cd-workflow-for-spring-boot-applications-on-kubernetes-via-skaffold/Screenshot-2020-12-08-at-8.26.16-AM.png" alt="" loading="lazy"&gt;
&lt;/p&gt;
&lt;p&gt;It is a known fact that developing applications with Kubernetes is cumbersome. That is the reason there is an ecosystem being developed around it so that developers can focus on what matters most to them i.e. writing code. On that note, in this article, I will be covering another tool Skaffold developed by &lt;a href="https://skaffold.dev/" target="_blank" rel="noopener noreferrer"&gt;Google&lt;/a&gt;
.&lt;/p&gt;</description></item><item><title>Astra Service Broker: Tradeoff-Free Cassandra in Kubernetes</title><link>https://foojayio.github.io/website/today/announcing-the-astra-service-broker-tradeoff-free-cassandra-in-kubernetes/</link><pubDate>Thu, 19 Nov 2020 19:52:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/announcing-the-astra-service-broker-tradeoff-free-cassandra-in-kubernetes/</guid><description>&lt;p&gt;When you are designing and building a cloud-native application, you are probably thinking about deploying it with Kubernetes. What about the database? That can get a bit more complicated as you weigh out the tradeoffs of elasticity, scale, and self-healing requirements versus maintaining servers and the long term operations required. Apache Cassandra™ ticks the first three boxes easily, but what about the operational burden of managing Cassandra? That&amp;rsquo;s where the cloud-native Cassandra service, &lt;a href="https://www.datastax.com/products/datastax-astra" target="_blank" rel="noopener noreferrer"&gt;DataStax Astra&lt;/a&gt;
, helps both operators and developers. But what makes it easy for deployments on Kubernetes to access the Astra managed service?&lt;/p&gt;</description></item><item><title>Run Oracle WebLogic Server on Azure Kubernetes Service</title><link>https://foojayio.github.io/website/today/run-oracle-weblogic-server-on-azure-kubernetes-service/</link><pubDate>Mon, 16 Nov 2020 13:40:19 +0000</pubDate><guid>https://foojayio.github.io/website/today/run-oracle-weblogic-server-on-azure-kubernetes-service/</guid><description>&lt;p&gt;We are delighted to announce the initial release of solutions to run Oracle WebLogic Server (WLS) on the Azure Kubernetes Service (AKS) developed with the WebLogic team as part of a broad-ranging partnership between Microsoft and Oracle. The partnership includes joint support for a range of Oracle software running on Azure, including Oracle WebLogic, Oracle Linux, and Oracle DB, as well as interoperability between Oracle Cloud Infrastructure (OCI) and Azure.&lt;/p&gt;</description></item><item><title>Securing Microservices with Auth0 and MicroProfile in Kubernetes</title><link>https://foojayio.github.io/website/today/securing-microservices-with-auth0-and-microprofile-in-kubernetes/</link><pubDate>Tue, 03 Nov 2020 15:38:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/securing-microservices-with-auth0-and-microprofile-in-kubernetes/</guid><description>&lt;p&gt;In this day and age, securing enterprise platforms is a challenge that developers and consultants tackle in an uninformed manner, producing subpar solutions in most cases.&lt;/p&gt;
&lt;p&gt;To combat this pattern, third-party security services such as Auth0 have been devised to externalize the security of services, and they focus on stable implementations of common enterprise use cases (identity management, OAuth compatibility, and so on), and platforms such as &lt;a href="https://microprofile.io/" title="Eclipse MicroProfile" target="_blank" rel="noopener noreferrer"&gt;Eclipse MicroProfile&lt;/a&gt;
 allow for their easy integration with enterprise Java microservices.&lt;/p&gt;</description></item></channel></rss>