A Complete Guide to MySQL Indexing
MySQL is a powerful relational database management system, and one of its most important features is indexing. Indexing significantly speeds up database queries by reducing the amount of data MySQL needs to scan. In this article, we’ll walk you through setting up MySQL indexes and demonstrate their impact on query performance using a simple Node.js application. What is MySQL Indexing?Indexing in MySQL is similar to the index in a book. It helps you quickly locate data without having to scan...
Configure SSO Authentication in ArgoCD using Okta
This guide walks you through configuring Single Sign-On (SSO) for ArgoCD with Okta as the Identity Provider (IdP) using the SAML protocol. ArgoCD is a declarative, GitOps continuous delivery tool for Kubernetes. It allows you to manage your Kubernetes resources using Git repositories as the source of truth. By configuring SSO with Okta, you can enable users to authenticate to ArgoCD using their Okta credentials. This provides a seamless and secure login experience for users....
Create a self-hosted GitHub Action Runner in EKS
One of my previous blog post, I have talked about how to create a self-hosted GitHub Action Runner in EC2 instance. GitHub Actions is a powerful CI/CD tool that enables developers to build, test, and deploy software using customizable workflows. It provides managed infrastructure for running actions, but there are instances when running workflows on your self-hosted infrastructure becomes essential. In this blog I am going to discuss about how to create GitHub Self Hosted Runner in...
How to Setup MySQL Master Slave Replication
Replication is the process of replicating data from one server to another simultaneously. Generally, it is used to boost data availability and recover data in the event of a failure. After deploying MySQL replication, you no longer need to perform regular database backups. All databases on the Master node will be automatically replicated to the Slave node. Replication can help minimise the strain on the master server by having the slave node handle application requests. In the event of a...
Integrating GitHub App with Jenkins for Automated Status Checks Before Branch Merging
In modern software development, automating status checks and enforcing branch protection is critical for ensuring code quaolty and preventing broken code from being merged into important branches llke main or develop. By integrating GitHub Apps with Jenkins, you can automate this process, using status checks to vaoldate the state of code before any branch merging. In this post, we’ll walk through how to create a GitHub App, configure Jenkins for status checks, and set up secrets in Jenkins...
A Comprehensive Guide to Setting Up VPC Peering in AWS
When designing a secure and scalable architecture in AWS, Virtual Private Clouds (VPCs) play a pivotal role in isolating resources. However, there are scenarios where resources across different VPCs need to communicate securely. This is where VPC Peering comes into play. VPC peering enables you to establish a direct network route between two VPCs, allowing instances in either VPC to communicate with each other. In this guide, we’ll walk you through the steps to set up a VPC peering...
Create a Self-Hosted GitHub Action runner
In the world of continuous integration and continuous deployment (CI/CD), automation is key. GitHub Actions provides a powerful platform to automate workflows directly from your repositories. While GitHub’s hosted runners are a convenient option, there are times when you might need more control over your environment. This is where self-hosted runners come into play. In this blog, we’ll walk you through the process of creating and managing a GitHub self-hosted runner. PrerequisitesAn...
How to push EC2 logs to Cloudwatch
Amazon CloudWatch is a monitoring and observability service that provides you with data and actionable insights to monitor your applications, respond to system-wide performance changes, optimize resource utilization, and get a unified view of operational health. In this tutorial, we are going to learn how to push EC2 logs to CloudWatch. Create an IAM role for CloudwatchFirst, we need to create and add a custom EC2 IAM role to your instance. This IAM role will have policies with write access...
Tekton triggers with GitHub integration
Continuous Integration (CI) is a cornerstone of modern software development, ensuring that code changes are tested and integrated into the main codebase frequently and reliably. Tekton Triggers, coupled with GitHub integration, offers a powerful solution for automating CI workflows in Kubernetes environments. In this tutorial, we’ll walk through the process of setting up Tekton Triggers with GitHub integration, enabling seamless automation of CI tasks in response to GitHub events. Let’s dive...
Build and push Docker images using Tekton and Buildah
In the fast-paced realm of containerization, optimizing the journey from code to container is a perpetual quest. In this blog post, we explore the synergy of Tekton and Buildah, showcasing how these tools team up to streamline the process of building and pushing Docker images. Join us for a concise guide on leveraging their power for a more efficient containerization workflow. Let’s dive in! SetupFirst we need to pull the latest changes from the git repository. Let’s assume that if we need...