Documentation Index

Fetch the complete documentation index at: https://resources.realtheory.io/llms.txt

Use this file to discover all available pages before exploring further.

K8sRecommendations: Recommendation

Prev Next

This model describes a recommendation, related to a Kubernetes objects, such as a Cluster, Node, Service, Deployment, Pod, etc.

Example:

{
  "id": "3e67fe00-fdbf-e2cd-e9aa-2cc1ccdba978",
  "key": "PodLivenessProbeGovernanceAdvisory::9e57e04b2855454196285ad879daef08::queue",
   "metadata": {
        "objectType": "Pod",
        "objectId": "9e57e04b-2855-4541-9628-5ad879daef08",
        "objectName": "queue-767b8d9c88-rwvjx",
         "clusterId": "f99e055f-b35d-208b-63b1-f4222b80151a",
         "clusterName": "realtheory-cluster-01",
         "nodeId": "00000000-0000-0000-0000-000000000000",
         "nodeName": "",
         "customResourceDefinitionId": "00000000-0000-0000-0000-000000000000",
         "customResourceDefinitionName": "",
         "namespaceId": "0b3c50fe-5116-44bd-b229-543251be4e74",
         "namespaceName": "web-app",
         "deploymentId": "a6ffe9d7-8bda-43a9-bc65-4f7dfdbc7ebf",
         "deploymentName": "queue",
         "podId": "9e57e04b-2855-4541-9628-5ad879daef08",
         "podName": "queue-767b8d9c88-rwvjx",
         ...
},
"title": "Configure a liveness probe",
"description": "Edit the pod specification and configure a liveness probe.",
"details": "The container 'queue' within pod 'queue-767b8d9c88-rwvjx' does not have a liveness probe configured.",
"action": "Edit the pod specification for pod 'queue-767b8d9c88-rwvjx' and configure a liveness probe for container 'queue'",
"benefits": "Improves application reliability and availability.",
"state": "New",
"category": "Governance",
"classification": "None",
"impact": "Low",
"effort": "Low",
"confidence": "High",
"score": 50,
"source": "Pod Liveness Probe Check (governance check)",
"sourceId": "e32acdd3-53b3-4c5c-b8f9-f4a05c7cb51e",
"alert": "The pod includes containers without liveness probes.",
"alertId": "52d70996-b316-d9b7-da43-e8258bab853a",
"advisory": "Pod Liveness Probe Governance Advisory",
"advisoryId": "4fce3bd4-2228-4144-b88e-7c884e2ec226",
"comments": "",
"assignedTo": "",
"url": "https://resources.realtheory.io/docs/how-to-address-container-liveness-probe-issues",
"urlTitle": "How To Address Container Liveness Probe Issues",
"properties": {},
"created": "2024-06-30T19:44:34.0367823Z",
"updated": "2024-09-04T18:56:37.0746637Z",
"postponedUntil": null,
"expires": "2024-09-04T19:01:35.6003209Z"
}

where:

  • id: Represents the ID of the Recommendation.
  • key: Represents an internal key that uniquely identifies the Recommendation. This value is intended for internal use only and should not be modified.
  • metadata
    • objectType: Indicates the type of Kubernetes object that the Recommendation is linked to. Supported examples include 'Cluster', 'Node', 'Service', 'Deployment', 'Pod', etc.
    • objectId: Represents the ID of the Kubernetes object that the Recommendation is linked to.
    • objectName: Represents the name of the Kubernetes object that the Recommendation is linked to.
    • clusterId: Represents the ID of the Cluster that contains the Kubernetes object that the Recommendation is linked to.
    • clusterName: Represents name of the Cluster that contains the Kubernetes object that the Recommendation is linked to.
    • nodeId: Represents the ID of the Node associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • nodeName: Represents the name of the Node associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • customResourceDefinitionId: Represents the ID of the Custom Resource Definition associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • customResourceDefinitionName: Represents the name of the Custom Resource Definition associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • namespaceId: Represents the ID of the Namespace associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • namespaceName: Represents the name of the Namespace associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • serviceId: Represents the ID of the Service associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • serviceName: Represents the name of the Service associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • replicaSetId: Represents the ID of the ReplicaSet associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • replicaSetName: Represents the name of the ReplicaSet associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • deploymentId: Represents the ID of the Deployment associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • deploymentName: Represents the name of the Deployment associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • daemonSetId: Represents the ID of the DaemonSet associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • daemonSetName: Represents the name of the DaemonSet associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • statefulSetId: Represents the ID of the StatefulSet associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • statefulSetName: Represents the name of the StatefulSet associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • customResourceId: Represents the ID of the Custom Resource associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • customResourceName: Represents the name of the Custom Resource associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • jobId: Represents the ID of the Job associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • jobName: Represents the name of the Job associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • cronJobId: Represents the ID of the CronJob associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • cronJobName: Represents the name of the CronJob associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
    • podId: Represents the ID of the Pod associated with the Kubernetes object that the Recommendation is linked to. This value can be empty (represented by all zeros) if not applicable.
    • podName: Represents the name of the Pod associated with the Kubernetes object that the Recommendation is linked to. This value can be empty if not applicable.
  • title: Represents the short title associated with the Recommendation.
  • mdTitle: Represents the title associated with the Recommendation, formatted in markdown.
  • description: Represents the description of the Recommendation.
  • mdDescription: Represents the description of the Recommendation, formatted in markdown.
  • details: Represents specific details associated with the Recommendation.
  • mdDetails: Represents specific details associated with the Recommendation, formatted in markdown.
  • action: Represents the recommended action to take to address the Recommendation.
  • mdAction: Represents the recommended action to take to address the Recommendation, formatted in markdown.
  • benefits: Represents the potential benefits of implementing the Recommendation.
  • mdBenefits: Represents the potential benefits of implementing the Recommendation, formatted in markdown.
  • state: Represents the state of the Recommendation. Supported values are New, Read, Postponed, and Dismissed.
  • category: Represents the broad category of the Recommendation. Supported values are Health, Performance, Cost, Governance, and Security.
  • classification: Represents the classification of the Recommendation. Supported values are:
    • None: A general recommendation that is not classified into any specific category.
    • RightSizeWorkload: A recommendation to right-size a workload, which suggests changes to a workload's resource requests and/or limits.
    • RightSizeNodePool: A recommendation to right-size a node pool, which suggests changes to a node pool's type or count of nodes.
  • impact: Represents the potential impact of implementing the Recommendation. Supported values are Low, Medium, and High.
  • effort: Represents the estimated effort to implement the Recommendation. Supported values are Low, Medium, and High.
  • confidence: Represents the confidence in the Recommendation. Supported values are Low, Medium, and High.
  • score: Represents the Recommendation's score, ranging between 1 and 10000, where the higher the score the greater the potential benefit.
  • source: Represents the name of the Rule that created the Recommendation.
  • sourceId: Represents the ID of the Rule that created the Recommendation.
  • alert: Represents the summary of the Alert associated with the Recommendation.
  • alertId: Represents the ID of the Alert associated with the Recommendation. This value can be empty (represented by all zeros) if not applicable.
  • advisory: Represents the name of the advisory associated with the Recommendation.
  • advisoryId: Represents the ID of the advisory associated with the Recommendation. This value can be empty (represented by all zeros) if not applicable.
  • comments: Represents any user comments associated with the Recommendation.
  • mdComments: Represents any user comments associated with the Recommendation, formatted in markdown.
  • assignedTo: Represents the email address of the user assigned to the Recommendation. This value can be empty if not applicable.
  • url: Represents a custom URL associated with the Recommendation that provides more information.
  • urlTitle: Represents the title of the custom URL associated with the Recommendation.
  • properties: Represents a set of additional name/value properties associated with the Recommendation.
  • created: Represents the UTC time that the Recommendation was created.
  • updated: Represents the UTC time that the Recommendation was last modified.
  • postponedUntil: Represents the UTC time that the Recommendation is postponed until.
  • expires: Represents the UTC time that the Recommendation is set to expire.

Notes:

  • The markdown properties (mdTitle, mdDescription, mdDetails, mdAction, mdBenefits, and mdComments) are only set when there is specific markdown-formatted content available. When a markdown property is empty, fall back to the non-markdown version of the property. For example, if mdTitle is empty, use title; if mdDescription is empty, use description.