How to create any resource on the cloud using Kubernetes manifests and Crossplane.

In the Kubernetes era, all of your application blueprints are packaged into a lot of Kubernetes manifests files or maybe also packages as charts using tools like helm. So how do you create any cloud resource on the cloud? You can maybe use

  1. An external terraform module to create the resource.
  2. Use a Kubernetes Job and create the resources using AWS SDK’s.
  3. Use a bash / Python script and internally call AWS CLI commands.

But how reliable is this? Unlike Kubernetes manifests in which the yaml file…

How to store your secrets in GitHub using Sealed Secrets and Kubeseal

Nowadays in the Kubernetes era, all of our manifests are stored in an SCM tool like GitHub, Gitlab, BitBucket, etc. But where are your Kubernetes secrets stored? Do you store them in any SCM tool? If yes, then you may probably want to delete them from SCM right away. Because Kubernetes secrets are base64 encoded. Anyone knowing this command base64 -d can easily decode your secrets. So where do you want to store your secrets now? May be store all the manifests in GitHub and store the secrets…

How to automatically create DNS records in Kubernetes using External DNS

Are you running your workloads in GKE / EKS / AKS? Do you use Services of type LoadBalancer? If yes then this is the right article for you. Let us suppose you have a web application running in your Kubernetes Cluster. You might have a public-facing load balancer so that your application is accessible to the entire world. Imagine you have a domain name called and you want to map that to your public-facing load balancer provisioned by Kubernetes. For this, you can either use a gcloud command…

Getting started with Jenkins Operator in Kubernetes

Before we dive into Jenkins Operator, let us spare some time to understand what a Kubernetes operator actually is. As mentioned in RedHat’s Documentation page, a Kubernetes operator is an application-specific controller that extends the functionality of the Kubernetes API to create, configure, and manage instances of complex applications on behalf of a Kubernetes user. It is a method of packaging, deploying, and managing a Kubernetes application. The Kubernetes Operator concept was developed by engineers at CoreOS in 2016. There are numerous operators available in the market as of now. …

Automating Kubernetes Cluster creation and Bootstrapping using GitHub Actions

GitHub Actions allows you to design your CI and CD workflows directly in your GitHub repositories. GitHub actions are entirely integrated with GitHub. Build, Test, and Deploy can be done directly from GitHub. So your CI/CD workflows can be at the same place where your source code exists. The CI/CD Pipeline can be triggered with events like pull requests or merging of branches etc. …

How to create a Kubernetes cluster in 5 minutes using kind.

kind is a tool for running local Kubernetes clusters using Docker containers. It can create a Kubernetes cluster within minutes. With Kind as a tool to create a Kubernetes cluster, you can stop worrying about creating a Kubernetes cluster for the local development. The cluster can be spun up with just a command. All the long process of bootstrapping the clusters ( like installing kubeadm, setting the swap size, joining thee nodes, Installing cni, etc ) is handled by kind. Kind automatically bootstraps each node with kubeadm. …

Introduction to Flux

Flux is an Open and extensible continuous delivery solution for Kubernetes. Flux is a GitOps tool for Kubernetes that synchronizes the state of manifests in a Git repository to what is running in a cluster. So what is GitOps? Is it a new tool in the market? GitOps provides a way for developers to manage operational workflow for using Kubernetes using Git. It is all about using a version-controlled system for the deployment of applications in Kubernetes. So Developers can directly push the code into production from the version-controlled system like Git. Moreover, any changes made can be easily tracked…

How to use Kustomize to efficiently manage Your Kubernetes manifests.

What is Kustomize?

Kustomize is a standalone tool to customise the creation of Kubernetes objects through a file called kustomization.yaml. It introduces a template-free way to customize application configuration. It lets you customize an entire Kubernetes application without touching the actual YAML files. All the customization can be specified and can also be overridden in a special file called kustomization.yaml file. It is natively built into kubectl and follows a purely declarative approach to configuration customization. Without any further due, let's get into the hands-on section of Kustomize.

Image for post
Image for post

Install Kustomize:

curl -s "\
kubernetes-sigs/kustomize/master/hack/" …

What is Argo CD?

Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. So what is GitOps? Is it a new tool in the market? GitOps provides a way for developers to manage operational workflow for using Kubernetes using Git. It is all about using a version-controlled system for deployment of applications in Kubernetes. So Developers can directly push the code into the production from the version-controlled system like Git. And moreover, any changes made can be easily tracked and reverted back in case of any chaos. There are multiple tools in the market to run GitOps. …

What is an Istio Gateway?

An Istio Gateway describes a LoadBalancer operating at either side of the service mesh. Istio Gateways are of two types.

Istio Ingress Gateway: Controlling the traffic coming inside the Mesh.

Istio Egress Gateway: Controlling the traffic going outside the Mesh.

Now let us understand this thing with an example.

I have 2 versions of my application running in my cluster version:v1 and version:v2. The version v1 is available at http://<ingress-ip>/v1 and the second version is available at http://<ingress-ip>/v2. …

Pavan Kumar

Cloud DevOps-Associate at Informatica || CKA | CSA | CRO | AWS | ISTIO | AZURE | GCP | DEVOPS Linkedin:

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store