|
12 | 12 | - Deployment |
13 | 13 | --- |
14 | 14 |
|
15 | | - |
| 15 | +# OCI Kubernetes Monitoring Solution |
| 16 | + |
| 17 | +OCI Kubernetes Monitoring Solution is a turn-key Kubernetes monitoring and management package based on OCI Logging Analytics cloud service, OCI Monitoring, OCI Management Agent and Fluentd. |
| 18 | + |
| 19 | +It enables DevOps, Cloud Admins, Developers, and Sysadmins to |
| 20 | + |
| 21 | +* Continuously monitor health and performance |
| 22 | +* Troubleshoot issues and identify their root causes |
| 23 | +* Optimize IT environment based on long term data |
| 24 | +* Identify configuration, and security issues |
| 25 | + |
| 26 | +across their entire environment - using Logs, Metrics, and Object metadata. |
| 27 | + |
| 28 | +It does extensive enrichment of logs, metrics and object information to enable cross correlation across entities from different tiers in OCI Logging Analytics. A collection of dashboards is provided to get users started quickly. |
| 29 | + |
| 30 | + |
| 31 | + |
| 32 | +# Architecture |
| 33 | +This architecture shows how you can use Oracle Cloud Infrastructure (OCI) Logging Analytics to monitor a Kubernetes platform and cloud native applications. |
| 34 | + |
| 35 | +Building a monitoring and troubleshooting system for this entire environment is a very challenging task, and may take away valuable time from development and IT teams. A large number of Kubernetes based initiatives fail to take off because of lack of a complementary monitoring solution, which is as robust, customizable, scalable, and is automatically deployable. OCI Logging Analytics bridges this monitoring gap by providing a one-click end-to-end Kubernetes monitoring solution for the underlying infrastructure, Kubernetes platform and cloud native applications. |
| 36 | + |
| 37 | +The following diagram is a sample topology of a Kubernetes Cluster in a single Oracle Cloud Infrastructure region, as discussed in Set up a Kubernetes cluster for deploying containerized applications on Oracle Cloud solution playbook. It shows the infrastructure tier and the second diagram highlights the kubernetes and application tiers. |
| 38 | + |
| 39 | +The architecture has the following components: |
| 40 | + |
| 41 | +* Tenancy |
| 42 | +A tenancy is a secure and isolated partition that Oracle sets up within Oracle Cloud when you sign up for Oracle Cloud Infrastructure. You can create, organize, and administer your resources in Oracle Cloud within your tenancy. A tenancy is synonymous with a company or organization. Usually, a company will have a single tenancy and reflect its organizational structure within that tenancy. A single tenancy is usually associated with a single subscription, and a single subscription usually only has one tenancy. |
| 43 | + |
| 44 | +* Region |
| 45 | +An Oracle Cloud Infrastructure region is a localized geographic area that contains one or more data centers, called availability domains. Regions are independent of other regions, and vast distances can separate them (across countries or even continents). |
| 46 | + |
| 47 | +* Compartment |
| 48 | +Compartments are cross-region logical partitions within an Oracle Cloud Infrastructure tenancy. Use compartments to organize your resources in Oracle Cloud, control access to the resources, and set usage quotas. To control access to the resources in a given compartment, you define policies that specify who can access the resources and what actions they can perform. |
| 49 | + |
| 50 | +* Virtual cloud network (VCN) and subnets |
| 51 | +A VCN is a customizable, software-defined network that you set up in an Oracle Cloud Infrastructure region. Like traditional data center networks, VCNs give you complete control over your network environment. A VCN can have multiple non-overlapping CIDR blocks that you can change after you create the VCN. You can segment a VCN into subnets, which can be scoped to a region or to an availability domain. Each subnet consists of a contiguous range of addresses that don't overlap with the other subnets in the VCN. You can change the size of a subnet after creation. A subnet can be public or private. |
| 52 | + |
| 53 | +* Load balancer |
| 54 | +The Oracle Cloud Infrastructure Load Balancing service provides automated traffic distribution from a single entry point to multiple servers in the back end. |
| 55 | + |
| 56 | +* Service gateway |
| 57 | +The service gateway provides access from a VCN to other services, such as Oracle Cloud Infrastructure Object Storage. The traffic from the VCN to the Oracle service travels over the Oracle network fabric and never traverses the internet. |
| 58 | + |
| 59 | +* Logging Analytics |
| 60 | +Logging Analytics is a fully managed SaaS regional service available in more than 27 regions that provides collection, indexing, enrichment, query, visualization, and alerting for logs from any IT component running on on-premises, OCI or 3rd party cloud. |
| 61 | + |
| 62 | +* Logging Analytics Source |
| 63 | +A configuration resource Logging Analytics that provides specifications for parsing, extractions, labeling, data masking, and other enrichment to ensure logs are properly ingested and indexed for analysis and monitoring. This architecture uses more than 30 pre-defined sources for Kubernetes services, applications, and objects. These sources are continuously enhanced to provide deeper analytics capabilities. |
| 64 | + |
| 65 | +* Kubernetes System Pods |
| 66 | +Kubernetes System Pods are small deployable units of computing that you can create and manage in Kubernetes. A Pod is one or more containers, with shared storage and network resources, and rules for running the containers. |
| 67 | + |
| 68 | +* User Pods |
| 69 | +Applications launched on the Kubernetes cluster. All the logs from application pods writing STDOUT/STDERR are typically available under /var/log/containers/. Applications that have custom log handlers may route their logs differently, but in general are available on the node (through a volume). |
| 70 | + |
| 71 | +* Control Plane Services & Pods |
| 72 | +Kubernetes platform Control Plane Services and pods. The Control Plane manages the worker nodes and the Pods in the Kubernetes cluster. The worker nodes run the containerized applications. Every cluster has at least one worker node. The worker node(s) host the Pods that are the components of the application workload. |
| 73 | + |
| 74 | +* Node OS Services |
| 75 | +Linux services running on the instance on which Kubernetes is installed. Logs are collected on OS services. |
| 76 | + |
| 77 | +Log & Object Collector Pods |
| 78 | +Log & Object Collector Pods are made up of replica sets, FluentD, and daemon sets. |
| 79 | + |
| 80 | +* FluentD Collector |
| 81 | +FluentD is an open-source data collector that provides a unified logging layer between data sources and backend systems. It allows unified data collection and consumption for a building data processing pipelines. This architecture uses containerized FluentD container that runs as daemon set and replicat set on kubernetes cluster. It uses logging analytics fluentd output plugin to upload logs to Oracle Cloud Logging Analytics. |
| 82 | + |
| 83 | +* Logging Analytics FluentD Plugin |
| 84 | +The FluentD output plugin that connects to Oracle Cloud Logging Analytics service in your tenancy to upload or ingest logs collected by FluentD collector. |
| 85 | + |
| 86 | +* Kubernetes Objects |
| 87 | +Kubernetes objects are persistent entities in the Kubernetes system. Kubernetes uses these entities to represent the state of your cluster. In this architecture, the following kubernetes object states are collected as logs for historical analysis and troubleshooting: |
| 88 | + |
| 89 | +* Kubernetes Daemon Set |
| 90 | +A Kubernetes DaemonSet is a type of workload that runs on Kubernetes and ensures that all (or some) Nodes run a copy of a Pod. As nodes are added to the cluster, Pods are added to them. As nodes are removed from the cluster, those Pods are garbage collected. |
| 91 | + |
| 92 | +* Kubernetes Replica Set |
| 93 | +A Kubernetes ReplicaSet is a type of workload that runs on Kubernetes. It maintains a stable set of replica Pods running at any given time. As such, it is often used to guarantee the availability of a specified number of identical Pods |
| 94 | + |
| 95 | +* Container Engine for Kubernetes |
| 96 | +Oracle Cloud Infrastructure Container Engine for Kubernetes is a fully managed, scalable, and highly available service that you can use to deploy your containerized applications to the cloud. You specify the compute resources that your applications require, and Container Engine for Kubernetes provisions them on Oracle Cloud Infrastructure in an existing tenancy. Container Engine for Kubernetes uses Kubernetes to automate the deployment, scaling, and management of containerized applications across clusters of hosts. |
| 97 | + |
| 98 | +* Service connectors |
| 99 | +Service Connector Hub is a cloud message bus platform. You can use it to move data between services in Oracle Cloud Infrastructure. Data is moved using service connectors. A service connector specifies the source service that contains the data to be moved, the tasks to perform on the data, and the target service to which the data must be delivered when the specified tasks are completed. One service connector is provisioned in this architecture to collect network and load-balancer logs. |
| 100 | + |
| 101 | +* OCI Services |
| 102 | +Oracle Cloud Infrastructure (OCI) services are a platform of cloud services that enable you to build and run a wide range of applications in a highly-available, consistently high-performance environment. |
| 103 | + |
| 104 | +* Service and Audit Logs |
| 105 | +Service and Audit Logs are captured in OCI Logging service. OCI Logging is a highly scalable and fully managed service that is used to access the VCN and Load Balancer service logs through the Service Connector. |
0 commit comments