<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Gitops on Konstantinos (Kostas) Dichalas</title><link>https://www.kdichalas.net/tags/gitops/</link><description>Recent content in Gitops on Konstantinos (Kostas) Dichalas</description><generator>Hugo</generator><language>en-gb</language><lastBuildDate>Mon, 22 Jun 2026 09:34:43 +0000</lastBuildDate><atom:link href="https://www.kdichalas.net/tags/gitops/feed.xml" rel="self" type="application/rss+xml"/><item><title>Provisioning Multi-Region AWS Infrastructure with Crossplane</title><link>https://www.kdichalas.net/posts/provisioning-multi-region-aws-infrastructure-with-crossplane/</link><pubDate>Mon, 22 Jun 2026 09:34:43 +0000</pubDate><guid>https://www.kdichalas.net/posts/provisioning-multi-region-aws-infrastructure-with-crossplane/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Originally published on &lt;a href="https://medium.com/@kostasdihalas/provisioning-multi-region-aws-infrastructure-with-crossplane-c5010fb39b5f"&gt;Medium&lt;/a&gt; on 22 June 2026.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://www.kdichalas.net/images/posts/provisioning-multi-region-crossplane/01.png" alt="Crossplane multi-region AWS infrastructure diagram 1"&gt;&lt;/p&gt;
&lt;p&gt;Before we can deploy applications across multiple &lt;strong&gt;EKS&lt;/strong&gt; clusters, we need the infrastructure to exist. That sounds obvious, but it is where many platforms become fragmented.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;One team creates a VPC with Terraform.&lt;/li&gt;
&lt;li&gt;Another team creates EKS clusters manually.&lt;/li&gt;
&lt;li&gt;DNS records are created somewhere else.&lt;/li&gt;
&lt;li&gt;IAM roles are patched during incidents.&lt;/li&gt;
&lt;li&gt;A few resources are managed by scripts that only one person understands.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This works for a while, but it does not scale well. For a multi-region platform, we need infrastructure that is:&lt;/p&gt;</description></item><item><title>Building a Multi-Region EKS Platform with Crossplane, FluxCD, and GitOps</title><link>https://www.kdichalas.net/posts/building-a-multi-region-eks-platform/</link><pubDate>Thu, 18 Jun 2026 10:19:22 +0000</pubDate><guid>https://www.kdichalas.net/posts/building-a-multi-region-eks-platform/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Originally published on &lt;a href="https://medium.com/@kostasdihalas/building-a-multi-region-eks-platform-with-crossplane-fluxcd-and-gitops-c0b3ea4dd567"&gt;Medium&lt;/a&gt; on 18 June 2026.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://www.kdichalas.net/images/posts/multi-region-eks/01.png" alt="Multi-region EKS platform architecture diagram 1"&gt;&lt;/p&gt;
&lt;p&gt;Multi-region Kubernetes sounds simple until you try to operate it. At first, the problem looks like this: &lt;em&gt;“We need to deploy the same application to multiple EKS clusters.”&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;But very quickly, the real problem becomes much bigger:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Who creates the AWS infrastructure?&lt;/li&gt;
&lt;li&gt;Who owns the EKS clusters?&lt;/li&gt;
&lt;li&gt;How are applications onboarded?&lt;/li&gt;
&lt;li&gt;How do we avoid configuration drift?&lt;/li&gt;
&lt;li&gt;How do we promote changes safely?&lt;/li&gt;
&lt;li&gt;How do we know what version is running in each region?&lt;/li&gt;
&lt;li&gt;How do we recover when one region fails?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In this series, I want to describe a platform architecture for managing multi-region deployments on &lt;strong&gt;AWS EKS&lt;/strong&gt; using &lt;strong&gt;Crossplane&lt;/strong&gt;, &lt;strong&gt;FluxCD&lt;/strong&gt;, &lt;strong&gt;GitOps&lt;/strong&gt;, and &lt;strong&gt;GitHub Deployments&lt;/strong&gt;.&lt;/p&gt;</description></item></channel></rss>