Posts

Create CI & CD pipelines in Azure DevOps for .NET Core Application on Containers and Deploying to a Openshift Cluster

Image
Introduction In this article, we will show how to set up a CI/CD pipeline to deploy a containerized ASP.NET Core (5.0) Web API application into an OpenShift Kubernetes cluster using Azure DevOps. The following image will walk you through all the steps explained in this article. What is a CI/CD pipeline? A CI/CD pipeline is a series of steps that must be performed in order to deliver a new version of software. Continuous integration/continuous delivery (CI/CD) pipelines is one of the best practices for DevOps teams to implement, for delivering code changes more frequently and reliably. Continuous Integration Continuous Integration (CI) is the process of automating the build and testing of code every time a team member commits changes to version control. Continuous Delivery Continuous delivery is an extension of continuous integration since it automatically deploys all code changes to a testing and/or production environment after the build stage. Prerequisites & Setup Azure ...

Monitor Kubernetes Logs, Metrics, and Metadata with ELK and Beats Part -3

Image
  Installing MetricBeat Agent Metricbeat helps you monitor your servers and the services they host by collecting metrics from the operating system and services. You deploy Metricbeat as a DaemonSet to ensure that there’s a running instance on each node of the cluster. These instances are used to retrieve most metrics from the host, such as system metrics, Docker stats, and metrics from all the services running on top of Kubernetes. Kube-state-metrics kube-state-metrics is a simple service that listens to the Kubernetes API server and generates metrics about the state of the objects. It is not focused on the health of the individual Kubernetes components, but rather on the health of the various objects inside, such as deployments, nodes and pods. Download the yaml file from my git repository. https://github.com/darshanadinushal/rabbitmq-cluster/blob/master/deployment/elk-cluster/kube-state-metrics.yaml Run the following command to execute "kube-state-metrics". oc create -f  ku...

Monitor Kubernetes Logs, Metrics, and Metadata with ELK and Beats Part -2

Image
  Installing Filebeat Agent Filebeat is the agent that we are going to use to ship logs to Logstash. The configMap that holds the Filebeat configuration, we specify  output.logstash:hosts: '${LOGSTASH_URL}'  that it needs to ship the log data to Logstash. We’re specifying the Service short URL since both resources live in the same namespace. We are using a DaemonSet for this deployment. A DaemonSet ensures that an instance of the Pod is running each node in the cluster. To deploy Filebeat, we need to create a service account, a cluster role, and a cluster role binding. After install the FileBeat , Logstash ,Elasticsearch and Kibana will show on the Openshift Topology. Monitor OpenShift with Elastic Observability Now that we have Filebeat shipping OpenShift logs to Elasticsearch, we can open up Kibana and start monitoring system health from Elastic Observability. 1. Create Index Patten   Login to kibana using elastic username and password. Then Navigate to the Stack M...