☸️ Kube Manager

Operation Title: Kube Manager

Over view: Manage Kubernetes Logs, Deployments, and Resources with Ease

Key Features:

List of Figures:

πŸ“‹ Overview & Introduction

⚑Overview:

The MNO (Mobile Network Operator) logs section provides a comprehensive overview of M-Pesa B2B transaction activity. It captures detailed records of both incoming requests and outgoing responses, allowing users to track the flow of transactions between systems in real time. These logs are essential for validating transaction data, performing audits, and resolving issues efficiently. By offering clear visibility into each step of the transaction process, the MNO logs enhance transparency and support effective monitoring. Overall, this section plays a crucial role in ensuring the reliability and accuracy of M-Pesa B2B operations.

⚑Introduction:

The MNO (Mobile Network Operator) logs section is designed to capture and display detailed records of M-Pesa B2B transactions. It includes both request and response data exchanged between systems, providing valuable insights into transaction flow. This information is essential for tracking activity, validating data, and identifying any issues in real time. The logs serve as a key resource for maintaining transparency and operational efficiency within the M-Pesa B2B integration.

βš™οΈ Functionality
Figure: 19.1
  • 1 Search Bar: Users can search for specific files by entering text like a case ID or filename. This makes it easier to quickly find the needed file without browsing through the whole list.
  • 2 Refresh button: Red Circular Arrows: Refreshes the table to display the latest updated data.
☸️ Kube Manager Form?
  • Select Source: Allows the user to choose the source system from which data will be retrieved or processed.
  • Choose Namespace: Enables the selection of a specific namespace that logically organizes and categorizes the data or services within the selected source.
Figure: 19.2
πŸš€ Pod Management

Pod Name: This section displays the names of the running Pods in the cluster.

➀ In a Kubernetes environment, a pod is the smallest deployable unit that can host one or more containers. Pods are the smallest deployable units in Kubernetes, hosting one or more containers. They enable isolated, scalable, and manageable environments for running application code efficiently.

Figure: 19.3
πŸ–₯️ Nodes Architecture

➀ Nodes: In this context, nodes refer to the machines either physical or virtual on which Kubernetes runs its workloads. The architecture consists of a master node (also known as the control plane) and multiple worker nodes. The master node is responsible for managing the overall cluster, including scheduling, maintaining the desired state, and handling the control logic. The worker nodes are responsible for running the application workloads inside pods. In this setup, there is one master node and two worker nodes, enabling effective distribution and management of deployed applications.

  • Nodes in Kubernetes: Nodes are the physical or virtual machines that run Kubernetes workloads.
  • Architecture Overview: The setup includes one master node and two worker nodes.
  • Master Node: Manages the cluster, schedules workloads, maintains cluster state, and handles control operations.
  • Worker Nodes: Execute the application workloads by running containers inside pods.
  • Purpose: This architecture ensures efficient deployment, resource distribution, and high availability of applications.
Figure: 19.4
πŸ”— Service Management

➀ Service: In Kubernetes, a Service provides a stable way to access a group of pods using a consistent IP and DNS name, enabling reliable communication within or between applications regardless of pod changes.

  • A Service in Kubernetes is an abstraction that defines a logical set of pods and a policy to access them.
  • Services provide a stable IP address and DNS name, allowing consistent access even when pod IPs change.
  • They enable communication between application components or between different applications.
  • Services decouple network communication from ephemeral cluster IP addresses.
  • Common service types include ClusterIP, NodePort, LoadBalancer, and ExternalName.
Figure: 19.5
🌐 Ingresses Management

➀ Ingresses: External users who want to access services inside the Kubernetes cluster must go through the Ingress.

Ingress in Kubernetes is a component that manages external access to services within the cluster, typically over HTTP or HTTPS. It provides routing rules to direct traffic to the appropriate service based on the request's URL, host, or path. Ingress can also handle SSL termination, load balancing, and virtual hosting, making it an efficient gateway for exposing services to the outside world.

  • Routes external traffic to internal services based on request rules (e.g., URL path or host).
  • Allows secure connections with SSL/TLS termination.
  • Supports virtual hosting (multiple domains on a single IP).
  • Reduces the need for creating individual NodePort or LoadBalancer services.
  • Works with Ingress Controllers (e.g., NGINX, Traefik) to enforce rules.
Figure: 19.6
πŸš€ Deployment Management

> The list is retrieved only when the application is deployed for the first time.

> In Kubernetes, a Deployment is used to manage the rollout of new application versions or services. During this process:

  • Fresh deployments refer to deploying an application for the first time.
  • New deployments (or updates) involve rolling out new versions or making changes to the existing setup.

> The deployment controller ensures zero downtime using strategies like rolling updates, and if needed, you can also perform rollbacks.

Figure: 19.7
πŸ” Secret Management

➀ Secret: In Kubernetes, a Secret securely stores sensitive data like passwords, API keys, and tokens, keeping them separate from application code and base64-encoded for added security.

  • Used to securely store sensitive data (e.g., passwords, API keys, tokens, certificates).
  • Helps avoid hardcoding sensitive information in application code or images.
  • Secrets are base64-encoded for secure storage and transmission.
Figure: 19.8
βš™οΈ ConfigMap Management

➀ ConfigMap: In Kubernetes, a ConfigMap is used to store non-sensitive configuration data in key-value pairs. It allows you to decouple configuration settings from your application code, making it easier to manage and update configurations without rebuilding containers.

  • Stores non-sensitive configuration data such as app settings, environment variables, and URLs.
  • Can be mounted as a volume, exposed as environment variables, or accessed by the app during runtime.
Figure: 19.9
πŸ’Ύ Persistent Volume Management

➀ Persistent Volume: A Persistent Volume is a piece of storage in a Kubernetes cluster that has been provisioned by an administrator or dynamically provisioned using Storage Classes.

  • Provides durable storage that outlives the lifecycle of individual pods.
  • Can be backed by local disk, NFS, cloud storage (like AWS EBS, GCP PD, Azure Disk), etc.
  • Abstracts the details of how storage is provided from how it is consumed.
  • Used with Persistent Volume Claims (PVCs), which request storage resources.
Figure: 19.10
πŸ“‹ Persistent Volume Claim Management

➀ Persistent Volume Claim (PVC): A Persistent Volume Claim (PVC) is a request made by a pod for storage in a Kubernetes cluster. It allows your application to use persistent storage without needing to know how or where the storage is provided.

  • PVC is a request for a specific size and access mode of storage (e.g., ReadWriteOnce).
  • It binds to a Persistent Volume (PV) that satisfies the request.
  • Pods use PVCs as volumes to store data that persists beyond pod restarts or failures.
  • PVCs can be used with static or dynamic provisioning depending on the storage class.
Figure: 19.11

🎯 Final Output:

The Kube Manager provides comprehensive Kubernetes cluster management capabilities through an intuitive interface. Users can efficiently manage pods, nodes, services, ingress controllers, deployments, secrets, ConfigMaps, and persistent storage resources. With integrated search and refresh functionality, namespace selection, and detailed visibility into all Kubernetes components, this tool ensures complete cluster monitoring and operational control. The system enables seamless management of containerized applications with proper resource allocation, security configurations, and storage persistence across the entire Kubernetes ecosystem.