<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>The Ops Community ⚙️: Charles Ndavu</title>
    <description>The latest articles on The Ops Community ⚙️ by Charles Ndavu (@cndavu).</description>
    <link>https://community.ops.io/cndavu</link>
    <image>
      <url>https://community.ops.io/images/cBONbL86xP0X_jce1l2O9hwXXfQkVB091D5Odcr1hy8/rs:fill:90:90/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL3Vz/ZXIvcHJvZmlsZV9p/bWFnZS8xNDAvMzZk/NGMzNmEtZjJiYS00/NDcwLWE5YmMtMTQy/YTUzOWM4YmM3Lmpw/Zw</url>
      <title>The Ops Community ⚙️: Charles Ndavu</title>
      <link>https://community.ops.io/cndavu</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://community.ops.io/feed/cndavu"/>
    <language>en</language>
    <item>
      <title>Why Docker For Data Engineers?</title>
      <dc:creator>Charles Ndavu</dc:creator>
      <pubDate>Mon, 28 Aug 2023 20:31:53 +0000</pubDate>
      <link>https://community.ops.io/cndavu/why-docker-for-data-engineers-1661</link>
      <guid>https://community.ops.io/cndavu/why-docker-for-data-engineers-1661</guid>
      <description>&lt;p&gt;Data engineering involves designing, building, and maintaining systems created for collecting, storing, processing, and analyzing data. Data engineers are the ones who create and manage the pipelines that allow organizations to handle large volumes of data collected from different sources, transforming them into various formats that can be useful for analysis, reporting, and conducting other data-driven tasks.&lt;/p&gt;

&lt;p&gt;Let's discuss.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Docker?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Docker is a virtualization containerization tool that stores your code files, applications, or software and ships it through the cloud. These files are guaranteed to reach the final destination in the same state or run similarly to what they ran on your computer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Docker?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Run anywhere:&lt;/strong&gt;You do not have to worry about shipping your models anywhere because of dependencies issues. The containers can standardize your software, making it easy to deploy anywhere. Just make sure your application or model has a complete environment configuration.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fast deployment:&lt;/strong&gt;Getting your applications or models to run on different platforms is always tedious. Docker containerization makes your code file compatible because it allows complete packaging of your dependencies.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cloud Agnostic:&lt;/strong&gt;Once you have your container set (stored in your codes or models), you can deploy it on any of your cloud vendors. This is helpful to a data engineer because you are not limited to deploying on operating systems.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Automation and Repeatability:&lt;/strong&gt;If you have heard of ci/cd, which stands for continuous integration continuous deployment, then docker containers allow you to experience these aspects. In this case, if one container fails, you can isolate it and address the problem, and this is important for data engineers to ensure their models remain up and running. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Setting Docker&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Step 1:Go to the official Docker Website&lt;/p&gt;

&lt;p&gt;Step 2:Follow Installation processes (whichever year you will be reading this, the docker version may be updated. Therefore, it is important to look at the current version and whether it is compatible with your operating system.)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.ops.io/images/sIsyJ6H6YnyxI0r_1-_PmHdgS1RFJyzn-RAiGRPR0KU/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL2Y4ZHVh/a3BzcWt5a3ZoYnJ1/c3prLnBuZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.ops.io/images/sIsyJ6H6YnyxI0r_1-_PmHdgS1RFJyzn-RAiGRPR0KU/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL2Y4ZHVh/a3BzcWt5a3ZoYnJ1/c3prLnBuZw" alt="Image 1" width="512" height="324"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Output:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.ops.io/images/58-pT0k6_4NUSrlYKwKB6X6vCfidz2WbdMXTNeNfC1U/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL3d1cmJh/a3U2cG5qdjU4cnVs/N2ljLnBuZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.ops.io/images/58-pT0k6_4NUSrlYKwKB6X6vCfidz2WbdMXTNeNfC1U/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL3d1cmJh/a3U2cG5qdjU4cnVs/N2ljLnBuZw" alt="Image 2" width="512" height="288"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Basic Docker commands&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You can decide to use your terminal to explore benefits. Grasping basic docker commands is important because it is almost impossible not to use the terminal. &lt;/p&gt;

&lt;p&gt;These are some of the basic commands that you will interact regularly with:&lt;/p&gt;

&lt;p&gt;docker pull-Used for pulling a docker image&lt;br&gt;
docker build-Used for building a Docker image&lt;br&gt;
docker container-Used to manage the containers&lt;br&gt;
docker events-Used to view the server events&lt;br&gt;
docker image-Used to manage the docker images&lt;br&gt;
docker images-Returns the list of docker images&lt;br&gt;
docker kill-Kills the running containers&lt;br&gt;
docker logout-Used to logout of docker hub&lt;br&gt;
docker login-Login to docker hub&lt;br&gt;
docker logs-It returns logs from a container&lt;br&gt;
docker port-Used to mention the running port number&lt;br&gt;
docker pull-Pull an image from the docker hub&lt;br&gt;
docker run-Run a new docker image&lt;br&gt;
docker rm-Remove container&lt;br&gt;
docker rmi-Remove the image&lt;br&gt;
docker tag-Tag an Image referring source image&lt;br&gt;
docker stop-Stop the running container&lt;/p&gt;




&lt;p&gt;These commands are just the tip of the ocean:) But you will interact more with others as you keep interacting with docker.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Docker is critical in data engineering because it handles and isolates complex data pipelines and applications, ensuring uniformity in the environments across development, testing, and production stages. You no longer have to worry about your application not working on other machines. Its usefulness in scalability, resource utilization, and version control makes  managing of diverse data processing tools and their dependencies simple. You can be able to collaborate among teams, speeding up development cycles and optimizing resource allocation, making it an essential tool for data engineering workflows.&lt;/p&gt;

</description>
      <category>devops</category>
      <category>docker</category>
      <category>cloudops</category>
      <category>tutorials</category>
    </item>
    <item>
      <title>How to Install and Use Kubernetes on Windows</title>
      <dc:creator>Charles Ndavu</dc:creator>
      <pubDate>Thu, 11 Aug 2022 09:52:00 +0000</pubDate>
      <link>https://community.ops.io/cndavu/how-to-install-and-use-kubernetes-on-windows-49nb</link>
      <guid>https://community.ops.io/cndavu/how-to-install-and-use-kubernetes-on-windows-49nb</guid>
      <description>&lt;p&gt;&lt;strong&gt;Content&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Introduction&lt;/li&gt;
&lt;li&gt;Requirements&lt;/li&gt;
&lt;li&gt;Installation Procedure&lt;/li&gt;
&lt;li&gt;Conclusion&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Kubernetes is an open source container-based platform used to manage cloud resources and develop web applications. The platform can help you scale your applications or system infrastructure, automating, and deploying, among other useful things. Also, it runs on all operating systems, including windows. This means all your clusters can be managed under cloud environments regardless of your computer operating system.&lt;/p&gt;

&lt;p&gt;This guide offers you a complete walkthrough on how to install Kubernetes for Windows 10 users. Also, the tutorial shows you how to deploy the official web GUI dashboard, to allow you to monitor and manage everything. &lt;/p&gt;

&lt;p&gt;Let’s get started!&lt;/p&gt;

&lt;h2&gt;
  
  
  Requirements
&lt;/h2&gt;

&lt;p&gt;In order for you to install Kubernetes in your computer system, you should pay attention to the software and hardware requirements discussed below.&lt;/p&gt;

&lt;h3&gt;
  
  
  Software requirements
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Docker Desktop&lt;/li&gt;
&lt;li&gt;MAC address&lt;/li&gt;
&lt;li&gt;Product UUID for nodes&lt;/li&gt;
&lt;li&gt;Hype-V&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Hardware requirements
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Worker node&lt;/li&gt;
&lt;li&gt;Master node&lt;/li&gt;
&lt;li&gt;Monitor navigation i.e mouse and keyboard&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Is a must to the above requirements to have in check in order to make the installation process of the platform successful.&lt;/p&gt;

&lt;h2&gt;
  
  
  Installation Procedure
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Step I: Set up Hyper -V
&lt;/h3&gt;

&lt;p&gt;Hyper -V is a Windows virtualization software that allows you to manage your virtual machines using the command line or Microsoft GUI tool. It is simple to enable Hyper - V in your system. Follow the following steps below:&lt;/p&gt;

&lt;p&gt;1.Open your Windows Control Panel.&lt;br&gt;
2.On the left side, &lt;strong&gt;select Programs&lt;/strong&gt;. &lt;br&gt;
3.Then, after selecting &lt;strong&gt;Programs&lt;/strong&gt;, go to &lt;strong&gt;Programs and features&lt;/strong&gt; and click on &lt;strong&gt;Turn Windows features on or off&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://community.ops.io/images/ZpTwvqZOXlUuFXjTMHG6aEf4K_Lwvc9aM3A-lItbs3E/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL204cGNq/aG91enU0Y3A0OTN4/ZWtsLnBuZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.ops.io/images/ZpTwvqZOXlUuFXjTMHG6aEf4K_Lwvc9aM3A-lItbs3E/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL204cGNq/aG91enU0Y3A0OTN4/ZWtsLnBuZw" alt="Image 3" width="800" height="326"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.ops.io/images/BrrMWSLl5iLbpRCnHXYGEOJK5f5sKjGiidQVv6IKFjQ/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL2Q1cWsz/bDM2M3ZpNHZjMmhj/ZTZwLnBuZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.ops.io/images/BrrMWSLl5iLbpRCnHXYGEOJK5f5sKjGiidQVv6IKFjQ/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL2Q1cWsz/bDM2M3ZpNHZjMmhj/ZTZwLnBuZw" alt="Image 4" width="800" height="320"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;4.Check or click to tick on Hyper-V and the Hypervisor Platform for Windows&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.ops.io/images/vJTZaTyeRRlaDP-EpLWKvYTq9hvZ-KDYoTySQbJQZLs/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL21jbjE3/amdlMndoaWlkNDFw/YTFlLnBuZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.ops.io/images/vJTZaTyeRRlaDP-EpLWKvYTq9hvZ-KDYoTySQbJQZLs/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL21jbjE3/amdlMndoaWlkNDFw/YTFlLnBuZw" alt="Image 5" width="797" height="516"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;5.Select Ok&lt;/p&gt;

&lt;p&gt;Do not worry if you do not see anything after selecting Ok. Your system is installing the Hyper- V in the background.&lt;/p&gt;

&lt;p&gt;To confirm if Hyper -V is enabled, open your Windows PowerShell and run the below commands.&lt;/p&gt;

&lt;p&gt;Run as Administrator&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;PS C:\Windows\system32&amp;gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If it is enabled, you’ll see an output like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;FeatureName: Microsoft-Hyper-V 
DisplayName: Hyper-V Platform
Description: Provides the services that you can use to create and manage virtual machines and their resources.
RestartRequired: Possible
State: Enabled 
CustomProperties:

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Step II: Downloading Docker for Windows
&lt;/h3&gt;

&lt;p&gt;Kubernetes is a container system built on Docker. This means Kubernetes is a tool that interacts with Docker, allowing you to manage your operations efficiently.&lt;/p&gt;

&lt;p&gt;To download Docker, simply &amp;gt;&amp;gt;&lt;a href="https://desktop.docker.com/win/main/amd64/Docker%20Desktop%20Installer.exe"&gt;click&lt;/a&gt;&amp;lt;&amp;lt; &lt;/p&gt;

&lt;p&gt;After downloading Docker, double-Click the Docker.exe file for windows to run its installer. Once the Docker installation process is complete, it will start automatically. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.ops.io/images/FGmHzV6effmaIKU1ehiYgcusvYg44HSdbZ46Q9ayp4g/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL2k2ZWlv/ZnBmZzJmdmE2Zzdh/MWh0LnBuZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.ops.io/images/FGmHzV6effmaIKU1ehiYgcusvYg44HSdbZ46Q9ayp4g/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL2k2ZWlv/ZnBmZzJmdmE2Zzdh/MWh0LnBuZw" alt="Image 2" width="723" height="476"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step III: Installing Kubernetes
&lt;/h3&gt;

&lt;p&gt;Docker allows you to enable Kubernetes because of its Graphical User Interface (GUI) interface.&lt;/p&gt;

&lt;p&gt;To install Kubernetes, follow the below instructions:&lt;/p&gt;

&lt;p&gt;1.Right-click the Docker tray icon and select Properties.&lt;br&gt;
2.Select "Settings" from the drop-down menu.&lt;br&gt;
3.On the left panel, select “Kubernetes”&lt;br&gt;
4.Enable Kubernetes and click "Apply"&lt;/p&gt;

&lt;p&gt;Then, wait for the docker to add some dependencies and packages. ‘Installation complete!’ will pop up on your screen to proof the installation was successful.&lt;/p&gt;
&lt;h3&gt;
  
  
  Step IV: Installing Kubernetes Dashboard
&lt;/h3&gt;

&lt;p&gt;Unfortunately Kubernetes web-based UI is not set up by default. However, it can be deployed using the CLI tool kubelctl, which enables you to interact with your cloud and manage different Pods, Clusters, and Nodes. YAML configuration file is perhaps the easiest resource to use to run Kubernetes. Get it &lt;a href="https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-rc7/aio/deploy/recommended.yaml"&gt;here&lt;/a&gt;!&lt;/p&gt;

&lt;p&gt;Follow the below commands to deploy the YAML configuration file:&lt;/p&gt;

&lt;p&gt;1.Paste this to deploy it&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
. kubectl apply -f .\recommended.yaml

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;2.Then, run the following command to confirm the YAML configuration file is up&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
 kubectl.exe get -f .\recommended.yaml.txt

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Step V: Accessing the Kubernetes dashboard
&lt;/h3&gt;

&lt;p&gt;The dashboard can be accessed by using a default token generated during the Kubernetes installation process. &lt;/p&gt;

&lt;p&gt;Follow the steps below:&lt;/p&gt;

&lt;p&gt;1.Paste this command on PowerShell&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;((kubectl -n kube-system describe secret default | Select-String "token:") -split " +")[1]


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Don’t forget to copy the generated token on the “token” part from the command&lt;/p&gt;

&lt;p&gt;2.Run&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;kubectl proxy.

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;3.Open the below link on your favorite browser&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;4.Sign in&lt;br&gt;
5.Finally&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.ops.io/images/_9G_Yasyg6_M1ryaEUFkm0FBN6kjfNPvXDlrkXSXPKw/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL3R6M3Bz/cG9jZzlkdXZweWxw/NnJxLlBORw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.ops.io/images/_9G_Yasyg6_M1ryaEUFkm0FBN6kjfNPvXDlrkXSXPKw/rt:fit/w:800/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkub3BzLmlv/L3JlbW90ZWltYWdl/cy91cGxvYWRzL2Fy/dGljbGVzL3R6M3Bz/cG9jZzlkdXZweWxw/NnJxLlBORw" alt="Image 1" width="609" height="303"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Conclusion
&lt;/h4&gt;

&lt;p&gt;In this tutorial, I have explained how to install Kubernetes on Windows 10. Also, I highlighted the process of enabling Hyper-V, installing Docker, and enabling the YAML configuration file.&lt;/p&gt;

&lt;p&gt;Kubernetes offers you a great chance to monitor your systems or applications effectively. This means it is important to ensure the cluster of nodes is fully functional to Kubernetes works properly. Make sure you follow the steps properly to have an easy installation process. &lt;/p&gt;

</description>
      <category>tutorials</category>
      <category>kubernetes</category>
      <category>devops</category>
      <category>docker</category>
    </item>
    <item>
      <title>What is Kubernetes ?</title>
      <dc:creator>Charles Ndavu</dc:creator>
      <pubDate>Sun, 31 Jul 2022 21:13:00 +0000</pubDate>
      <link>https://community.ops.io/cndavu/what-is-kubernetes--4352</link>
      <guid>https://community.ops.io/cndavu/what-is-kubernetes--4352</guid>
      <description>&lt;p&gt;&lt;strong&gt;Kubernetes&lt;/strong&gt; is a containerized management system that is usually hosted on Google Platform, but it is more of an open source system. These containerized systems allow developers to update or make changes in web application with any interruption on the front-side or provision of its services.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why use Kubernetes&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Kubernetes will help you manage traffic for microservices and cloud applications. What are microservices?  &lt;em&gt;It is an architectural style followed when developing application for effective testing, deployment, adopting the business models or capabilities, and can be managed by a small team&lt;/em&gt;.  Also, Kubernetes helps you use any tool you desire to work with for your application.  This means, you can use a custom resource that does not come with the Kubernetes itself.  &lt;/p&gt;

&lt;p&gt;In other words, if you launch containers on your servers, one container will save you the cost of downtime when the other fails… production remains functioning!&lt;/p&gt;

&lt;p&gt;Kubernetes allows your systems to run smoothly because it solves the problem of scalability, offers deployment patterns and more.&lt;/p&gt;

&lt;p&gt;Kubernetes of offers you helpful such as:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Storage configuration:&lt;/strong&gt;Kubernetes allows you to configure a storage system of your choice like cloud providers automatically.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Seamless rollouts and rollbacks:&lt;/strong&gt;Kubernetes enables you to change the state of deployed containers meaning you can remove your existing containers and transfer them to a new container.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Load balancing:&lt;/strong&gt;Kubernetes manages load balance that makes network traffic distribution effective so that the deployment process is stable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Self-healing:&lt;/strong&gt;Kubernetes solve any problem concerning containers, like restarting containers that may fail, replacing them, and killing those that do not suit your system or application check.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;-Bin packing:&lt;/strong&gt;Kubernetes has a cluster of nodes helpful in running containerized tasks. It is very useful when you need to make use of your resources.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Kubernetes is growing at a very first pace and arguably the second-largest open source project behind Linux, meaning it is here to stay. Adopting Kubernetes provides an interface that allows you to run a distributed system smoothly. It is high time to try and figure out if it suits your applications or system needs.&lt;/p&gt;

</description>
      <category>kubernetes</category>
      <category>cicd</category>
      <category>help</category>
      <category>devops</category>
    </item>
    <item>
      <title>Containerization in DevOps</title>
      <dc:creator>Charles Ndavu</dc:creator>
      <pubDate>Thu, 09 Jun 2022 14:55:28 +0000</pubDate>
      <link>https://community.ops.io/cndavu/containerization-in-devops-3k0k</link>
      <guid>https://community.ops.io/cndavu/containerization-in-devops-3k0k</guid>
      <description>&lt;p&gt;The modern world is full of software releases built on microservices architecture, meaning using containers is suitable for better and safe output. Architecture is a crucial aspect in the making of software, but it is not the main aspect- the organization’s culture and methodologies play a significant role in the entire software production process.&lt;/p&gt;

&lt;p&gt;DevOps practices make it easy for the production team to execute their roles properly to avoid irreversible on the software in the future. This is an indication containers, and DevOps complement each other. In this article, I’ll discuss how containers and DevOps relate and what containerization is all about in simple terms.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Is Containerization?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Containerization is putting together all an application’s dependencies into a single package (container). The single package can run on any server or in the cloud because the containerization aspect allows your system or application to be portable and flexible.&lt;/p&gt;

&lt;p&gt;Let’s dive into containers themselves and how they can benefit DevOps teams or engineers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Idea Behind Containers&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It wasn’t easy to install and run any system or software on any server because of different requirements like a compatible operating system and libraries or tools that should be installed to run the software. Also, you need to get permission for directories and files by ticking different checkboxes to run your software successfully.&lt;/p&gt;

&lt;p&gt;Despite meeting all these requirements, the problems don’t end. Even if you decide to run the application on a cloud environment, hoping it will protect the software from breaking, the results may remain the same. However, containers come in as the rescue for these problems.  &lt;/p&gt;

&lt;p&gt;Containers ensure the software runs properly without worrying about the libraries by isolating it from the cloud environment. Now, this concept may sound the same as using a virtual machine, but the difference is container virtualizes the operating system, whereas a VM is an entity of physical hardware.&lt;/p&gt;

&lt;p&gt;You can run containers in any operating system, including Linux and Windows, to achieve the isolation and portability aspects. On the Linux system, &lt;strong&gt;cgroups&lt;/strong&gt;and &lt;strong&gt;namespace&lt;/strong&gt; are used to achieve the isolation, whereas Windows &lt;strong&gt;job objects&lt;/strong&gt; and &lt;strong&gt;Server Silos&lt;/strong&gt; are used to build the containers. These features can help you run your application without conflicts within the operating system or with other containers.&lt;/p&gt;

&lt;p&gt;So, how do these containers work? &lt;strong&gt;Cgroups&lt;/strong&gt; limit the hardware resources in a given process. This means you can limit CPU or RAM for one specific process. In contrast, Namespaces allow the isolation of scope for a process. These isolation processes can be tedious, and that’s where container runtime tools such as &lt;strong&gt;Docker&lt;/strong&gt; and &lt;strong&gt;podman&lt;/strong&gt; come in. However, they work differently, but the end goal is the same. They manage the namespace and cgroups for you; that’s why you could hear a DevOps engineer saying, “I want a container that can hold this amount of libraries.”&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benefits of Containers&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Do not stress yourself with all the conceptualization of containers. Just understand how the tools of container runtimes functions or their benefits, such as Docker. These containers have many benefits in different environments, including development, testing, and production. They include;&lt;/p&gt;

&lt;p&gt;• Flexibility&lt;br&gt;
• Addresses security concerns&lt;br&gt;
• Continuous Deployments&lt;br&gt;
• Efficient scheduling rules&lt;br&gt;
• Eases troubleshooting processes&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It is necessary to understand all aspects of containers to improve or be aware of monitoring environments to eliminate any obstacle that may cause downtime in your application. I hope this article has covered what you need to know about containerization.&lt;/p&gt;

</description>
      <category>devops</category>
      <category>career</category>
      <category>cicd</category>
      <category>secops</category>
    </item>
    <item>
      <title>7 Effective DevOps Monitoring Tools</title>
      <dc:creator>Charles Ndavu</dc:creator>
      <pubDate>Fri, 03 Jun 2022 12:25:54 +0000</pubDate>
      <link>https://community.ops.io/cndavu/7-effective-devops-monitoring-tools-3h0</link>
      <guid>https://community.ops.io/cndavu/7-effective-devops-monitoring-tools-3h0</guid>
      <description>&lt;p&gt;What is DevOps Monitoring? DevOps monitoring refers to the continuous process of identifying, planning, developing, testing, deploying, and reviewing feedback to prepare for potential threats facing systems, networks, or databases. This involves the viewing of important infrastructures in a production environment. ( &lt;em&gt;I covered this in my &lt;a href="https://community.ops.io/cndavu/10-things-every-devops-engineer-should-know-3pbf"&gt;previous&lt;/a&gt; article in depth&lt;/em&gt;).&lt;/p&gt;

&lt;p&gt;It is important to have a suitable monitoring tool as a DevOps engineer to identify broken production changes or bugs before affecting the entire system. However, finding a good or a fit software instrument for monitoring can be a daunting task, but it can be this difficult because of the system’s complexity you’re developing.&lt;/p&gt;

&lt;p&gt;Let’s look into some effective DevOps monitoring tools for your phases of development.&lt;/p&gt;

&lt;p&gt;1.&lt;strong&gt;PagerDuty&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;PagerDuty is a simple but effective performance platform that should be used by DevOps engineer who seeks to work with a team (everyone does:)). It helps the entire or designated team members assess the system’s performance and address any error as soon as possible. &lt;/p&gt;

&lt;p&gt;It has timely alert features for the operations team to detect a problem in the entire development and production process. Data collected from multiple monitoring systems are incorporated into the PagerDuty to form a single view. You can configure settings to allow it to be a 24/7 monitoring software and keep sending alerts to team members. Overall, I believe PagerDuty is an excellent alerting system.&lt;/p&gt;

&lt;p&gt;2.&lt;strong&gt;Tasktop Integration Hub&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Tasktop Integration Hub is an all-around tool incorporating other monitoring tools into a single application. One of its unique aspects is handling all delivery software without reference from another tool, which acts as a single-point solution.&lt;/p&gt;

&lt;p&gt;Tasktop integration is an efficient tool to deliver information to your team because of the web-based interface aspect, connectivity with different tools of approximately 40, and quick software integration. &lt;/p&gt;

&lt;p&gt;3.&lt;strong&gt;Librato&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Librato is an easy-to-use monitoring tool because you can track your application in real-time and determine what is affecting your organization. Librato has all the necessary features needed for monitoring, including alerts and visualization. Also, Labrato can transform real-time data from any source-perhaps, the unique thing about this tool. Overall, It is an interface-based tool, meaning it is easy to use. &lt;/p&gt;

&lt;p&gt;4.&lt;strong&gt;Sensu&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sensu is another popular monitoring tool used to analyze and track the performance of applications. A DevOps engineer can use this platform to assess the condition of organizations’ infrastructure, KPIs, and apps. It is a good tool to solve current application difficulties but does not provide software-as-a-service (SaaS).&lt;/p&gt;

&lt;p&gt;5.&lt;strong&gt;Splunk&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Splunk is a good platform for machine-generated data that uses a web-based interface. It helps combine all available data into a central view that allows users to quickly find the information they need. Marketing departments can use this tool to check areas that need improvement because of its analysis capabilities.&lt;/p&gt;

&lt;p&gt;6.&lt;strong&gt;Nagios&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Nagios is an effective open-source continuous monitoring tool. You can use it to monitor apps, systems, and different business procedures or activities in a DevOps setup. When something is off in the system or infrastructure, it warns the users. Overall, it does not require a lot of expertise or experience to use it. &lt;/p&gt;

&lt;p&gt;7.&lt;strong&gt;Dynatrace&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Dynatrace is perhaps the smallest library DevOps monitoring tool that can be installed in an application without taking much of the server’s space. After complete installation, the app records or data can be monitored without severe conflicts, which is crucial in reducing server overhead.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;The above article gives you a sneak peek of your DevOps monitoring tools in your DevOps activities. I believe they are the most effective DevOps monitoring tools to get you started as a DevOps engineer.&lt;/p&gt;

</description>
      <category>devops</category>
      <category>productivity</category>
      <category>tutorials</category>
    </item>
    <item>
      <title>10 Things Every DevOps Engineer Should Know</title>
      <dc:creator>Charles Ndavu</dc:creator>
      <pubDate>Mon, 30 May 2022 10:09:31 +0000</pubDate>
      <link>https://community.ops.io/cndavu/10-things-every-devops-engineer-should-know-3pbf</link>
      <guid>https://community.ops.io/cndavu/10-things-every-devops-engineer-should-know-3pbf</guid>
      <description>&lt;p&gt;My perspective is - when you work and manage different IT professionals with diverse backgrounds, including system operators, software developers, UI and UX developers, and other IT “knowledge-based” staff during the drafting, planning, developing, and deployment of a functional system or application, then you’re a DevOps engineer. &lt;/p&gt;

&lt;p&gt;Others claim at least fifteen years of IT proven practice would qualify a person to be called a DevOps engineer, but I believe three or five years in the industry and depth understanding of deployments and releases you’re pretty qualified (leave a comment on this).&lt;/p&gt;

&lt;p&gt;Let’s dive into what you should know as a DevOps engineer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.Your attitude&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sounds weird, right?! For this role, you have to figure out yourself, how to interact with other people and what makes you worked up so quickly. If you do not know your traits ( I know you know you:) ), you will have difficulty handling different personas because you’d be managing and working with different professionals in IT-related work.&lt;/p&gt;

&lt;p&gt;The team members will sometimes depend on your expertise, and a senior or a junior will not understand your input and can get you infuriated. Figure out how you will handle your annoyance because lashing out at someone will affect the development or slow down on whatever you’re working on. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2.Communication&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After working on your attitude, having good communication skills will get the team on your side or what objectives and goals you’re trying to achieve. DevOps is all about working with a team as a family, meaning you want the family members to work in one direction. Your ability to communicate would enhance the collaboration aspect. You would not want an application created under your watch throw all sorts of code errors during production because of poor communication. It is a must-have virtue or trait for DevOps engineers to be successful. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3.Observability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What will you communicate to your team members if you do not have that little observability trait? It is a crucial trait you need to have as a DevOps engineer. You should know what code or a JSON script the software developer is shipping to the application for you to communicate your thoughts. If it is debugging, ensure the cleaning process is done correctly to avoid repetition or that everything is within the stipulated time frame. In other words, be aware of what is going on. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4.Coding and Scripting&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Being aware of what is going on means you should possess coding and scripting skills. At least you should have three widely used programming and scripting at your fingertips: PHP, Javascript, Node.js, Java, and Python. You can not offer input or experience gained to a software developer if you do not understand the language used in the development process.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5.Infrastructure as code&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As a DevOps Engineer, it is important to ensure that the application or system under your watch is built in a structured manner for ease in future reference. You have to learn to use Infrastructure as Code (IaC) tools such as Terraform and AWS CDKs (Cloud Development Kit). &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6.Automation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Automating things means you have to be conversant with the scripting language, as I mentioned above, such as Javascript and python. As much as you’re a Linux person, you should know how to use PowerShell for windows. In simple words, understand most of the DevOps toolsets available to be on the safe side and succeed in your role.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;7.Cloud Skills&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You can’t miss Cloud-related stuff as DevOps Engineer. They are related. Your production team may require your expertise on cloud platforms or services that are suitable for automation. Therefore, it is important to know these services to simplify the processes of monitoring, performing tests, code checks, and release and deployment. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;8.Continuous delivery&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Many companies are adopting DevOps methodologies and approaches in their system development and management. As a DevOps is necessary to understand continuous delivery (CD) theories to help these companies move towards cloud-world and automation because it is not easy. Knowing CD tools and systems will allow your team to create functional delivery pipelines.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;9.Operations&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It is another aspect of the Ops Engineer to understand different operations such as logging, monitoring, and alerting. It would help if you balanced these aspects in order to manage the entire process of production systems. Also, you’ll need to have experience working or using operating systems like Centos, Linux, Ubuntu, Windows, and RedHat Linux. Not to forget, familiarize yourself with web servers like Nginx and Apache.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;10.Time management&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Last (but not the end:), know how to manage your time. The production cycle works in phases, and you can’t be dealing with designing and development at once. Delegate duties or have a schedule that you’ll follow to ensure you monitor, test, and deploy without the pressure of completion.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;DevOps practices are a never-ending discussion, meaning you have to learn every day taking this role. Technology never dies. It keeps growing or evolving. You’ll need to be flexible and be open to any changes that may occur in the future. Remember to be successful in tech; you have to watch out for the new tech in the block :).&lt;/p&gt;

</description>
      <category>devops</category>
      <category>productivity</category>
      <category>secops</category>
    </item>
    <item>
      <title>DevOps</title>
      <dc:creator>Charles Ndavu</dc:creator>
      <pubDate>Thu, 26 May 2022 08:56:50 +0000</pubDate>
      <link>https://community.ops.io/cndavu/devops-2380</link>
      <guid>https://community.ops.io/cndavu/devops-2380</guid>
      <description>&lt;p&gt;Hi DevOps, I am planning to come up with an ebook covering most things we need to know as DevOps lover. &lt;/p&gt;

&lt;p&gt;Please share which area you would like me to cover in depth.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Already started drafting the content.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>devops</category>
    </item>
    <item>
      <title>What is DevOps Monitoring?</title>
      <dc:creator>Charles Ndavu</dc:creator>
      <pubDate>Wed, 25 May 2022 21:48:12 +0000</pubDate>
      <link>https://community.ops.io/cndavu/what-is-devops-monitoring-30hc</link>
      <guid>https://community.ops.io/cndavu/what-is-devops-monitoring-30hc</guid>
      <description>&lt;p&gt;DevOps monitoring refers to the continuous process of identifying, planning, developing, testing, deploying, and reviewing feedback to prepare for potential threats facing systems, networks, or databases. This involves the viewing of important infrastructures in a production environment.  &lt;/p&gt;

&lt;p&gt;In many ways, DevOps monitoring may be similar to monitoring any structured IT operations. However, DevOps monitoring analyzes the IT service or product deeper. It focuses on setting up reliable services and immediately testing its capabilities, usually in the production lifecycle. This is a form of proactive monitoring that emphasizes quality in the stages rather than reacting to a problem later. &lt;/p&gt;

&lt;p&gt;DevOps monitoring is also referred to as Continuous Monitoring (CM) or Continuous Control Monitoring (CCM) because it involves identifying any potential threats to the security of IT infrastructures in an automated manner.&lt;/p&gt;

&lt;p&gt;In this article, we’ll look at why we need DevOps monitoring and use cases to explain the reasons. Then, we’ll look at the features you should consider when selecting a DevOps monitoring platform.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why DevOps Monitoring?
&lt;/h2&gt;

&lt;p&gt;Technological transformations happen regularly, and organizations need to address these changes in real-time. You may have system complexity and development efficiency concerns, which will only be solved by effective monitoring. &lt;/p&gt;

&lt;p&gt;These concerns may be:&lt;/p&gt;

&lt;p&gt;• &lt;em&gt;Our code needs to be written and updated regularly, but how do we maintain the same quality without introducing vulnerabilities?&lt;br&gt;
• Our system is so complex, and everything part has an important function. How do we monitor everything?&lt;br&gt;
•  Comparing my KPIs seems like an uphill task because the entire project is complex. How do I get to manage these problems?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;So, if you were to build a messaging-passing system, an automated system, or rollback protocols, looking to ship code faster and safely, monitoring is inevitable. It ensures the code is clean because of regular updates or fix bugs. &lt;/p&gt;

&lt;p&gt;Working as a team is an important attribute to attaining the desired success. But, this success would be attainable if they respond to problems quickly. Now, DevOps monitoring comes in to help teams to collaborate in conceptualizing the security of applications or systems from development stages to operations.&lt;/p&gt;

&lt;p&gt;We’re now at a stage where technology is so advanced, and the conditions of applications change faster than the speed of request callbacks or Git commits. DevOps monitoring can help in the development of self-healing features to keep pace with the sudden changes.&lt;/p&gt;

&lt;p&gt;Monitoring allows you to determine criteria for Key performance indicators (KPIs), like:&lt;/p&gt;

&lt;p&gt;• Failures experienced in deployment&lt;br&gt;
• Code errors&lt;br&gt;
• Mean-time-between- failures(MTBF)&lt;br&gt;
• Mean-time-to-detect (MTTD) errors&lt;br&gt;
• Pull request cycle time&lt;br&gt;
• Change failure rate&lt;/p&gt;

&lt;p&gt;Customer satisfaction is a term mentioned in every meeting in an organization and can be an uphill task to actualize or achieve it. Monitoring offers you the desired insight into your project development process. &lt;/p&gt;

&lt;h2&gt;
  
  
  DevOps Monitoring Use Cases
&lt;/h2&gt;

&lt;p&gt;Monitoring is an important attribute and needs to be part of your development and deployment cycle. It helps you have a clear view of your applications or systems activities. But, it is not entirely why you need monitoring. &lt;/p&gt;

&lt;p&gt;Let’s cover some use case examples.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Basic code linting&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Linters are necessary code tools that help style your code and identify bugs and errors. In many ways, linters help you find best practices for a coding standard. Therefore, if you incorporate a linter tool in your application, it will fix hidden or unidentified problems in your code before they cause runtime errors or other serious issues.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Git workflow&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It is impossible to find any developer who has not done a Git commit. At a particular point in their coding life, they have attempted to work on a project resulting in code conflicts. With multiple features in Git, they can help developers resolve code-related conflicts, rollbacks, and commits. However, monitoring Git workflow ensures that the developers add commits consistently without affecting the project condition.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Monitoring Continuous Integration (CI)logs&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Continuous Integration (CI) can help you analyze the condition of your code and ensure they are running smoothly. If there are numerous errors, they’ll require tools to troubleshoot or debug. Change is inevitable for software success. Monitoring your logs can help you identify potential threats with your software delivery or applications that need quick fixing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Monitoring Continuous Deployment (CD) logs&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It is important to monitor your Continuous Deployment (CD) logs to better understand the application’s status. In many cases, logs give out information about the application’s behavior. It is simple to fix failed deployments and threats by continuously monitoring the logs. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Monitoring configuration management change logs&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Configuration management change logs may help you know the current status of your system and which parts require changes. When you integrate a monitoring culture of these logs, you can track changes made to your applications or system and troubleshoot issues. The ultimate goal is to maintain the integrity of the system or application.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Monitoring infrastructure deployment logs&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Deployment logs help identify any possible risks or failures and new stack builds. These logs are important in solving problems related to stack deployments and checking unauthorized changes that caused a runtime error of failure.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Code instrumentation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Code instrumentation refers to the process of including code into your application or system to measure its performance and diagnose any issues. You can use instrumentation to see messages on logs in case of an application run time failure. If you can monitor code instrumentation outputs, you can identify areas that may need changes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Distributed tracing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Distributed tracing is a method that DevOps and IT teams use to monitor microservices Applications. Usually, applications interact through APIs, which is significant for looking into when errors or failures occur. Distributed tracing helps you assess the performance of your application by observing service requests. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Application performance monitoring&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Application performance monitoring (APM) platforms help track the application’s performance. This process may include assessing response time, identifying errors, and tracking user experience. The overall goal of APM platforms is to identify and fix any small issues before they cause more problems to other parts of the system.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Network monitoring&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Network monitoring is a procedural process by a computer network used to identify failing components before they cause other problems. For example, failing routers or overloaded servers can cause serious outages or network failures. With network flogs, it may be simple for you to identify suspicious activities.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Synthetic monitoring&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Synthetic monitoring tests the performance and reliability of a system or some of its components. For instance, a client application can be installed in your device or application to test scripts on key areas offering you insights on areas that need improvement. &lt;/p&gt;

&lt;h2&gt;
  
  
  What to Look for In a Good DevOps Monitoring Platform?
&lt;/h2&gt;

&lt;p&gt;When looking for DevOps monitoring, it should be able to integrate with your practices and workflow. This means the platform you select should allow your team collaborates effectively. &lt;/p&gt;

&lt;p&gt;Consider these capabilities:&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Easier instrumentation and code tracing:&lt;/strong&gt; Tracing is an important way of monitoring your application in its production state or while it is up and running. DevOps or developers would want to add a tool or debugging instrumentation to their application and receive informative messages about errors during development and deployment. &lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Graphical code analysis:&lt;/strong&gt; It is the process of analyzing computer software without actually running the software. It is necessary to analyze security vulnerabilities in the code that can adversely affect the entire system, which is why graphical or visual analysis codes like visual studio, code graph, or Splunk may help identify the problem quickly.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Contextual information and dependency maps:&lt;/strong&gt; You should look for a monitoring platform that allows system continuity because serious issues can make it unusable or vulnerable to attacks. With a proper contextual information tool, you can manage your information carefully. &lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Integration with popular DevOps toolsets:&lt;/strong&gt; The monitoring platform should be able to integrate with popular toolsets like Git or TravisCI. DevOps itself is a set of practices that involves using software and IT operations to have a simple workflow and have quality results. Monitoring tools will make it easy for organizations and teams to yield better results.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Ability to capture, index, analyze, and correlate cloud and on-premise logs, metrics, traces, and events:&lt;/strong&gt;  When looking or selecting the best DevOps monitoring solution, it should have the ability to analyze, index, capture, trace, provide metrics, and capture events. This means the tool must allow you to capture these actions in a single dashboard.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Data availability:&lt;/strong&gt;Look for a monitoring tool to provide real-time data for the teams to identify performance issues. It should link back with an API call or a line function to access real-time data of end-user experience.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Integration with popular communication channels:&lt;/strong&gt; An integrated communication strategy is the connectivity that allows sharing of information consistently across all channels and aligns with teams’ objectives. A good monitoring platform should have the ability to send alerts to teams in case to reduce downtime or sharing of reports. &lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Automation:&lt;/strong&gt; You should consider a tool that can improve your existing automation mechanism without streamlining your development process or causing downtime. In most cases, DevOps teams always want to automate clusters, nodes, and pods to make the deployment process scalable. This means your choice of monitoring platform should be able to fit all these needs.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;DevOps practices have changed how we manage our systems development cycles and create a continuous delivery quality software environment. It is all about understanding why you need to monitor and what platform will do the work to suit your needs and attain your desired success.&lt;/p&gt;

&lt;p&gt;You should learn to incorporate these monitoring practices if you want to keep pace with technological advancements that bring all sorts of vulnerabilities affecting operations and customer satisfaction.&lt;/p&gt;

</description>
      <category>devops</category>
      <category>career</category>
    </item>
  </channel>
</rss>
