Reporting the Pod Status

A pod is a group (one or more) of containers that share storage, networks, and declarations about how to run these containers. The edge side periodically reports the pod status of the service node to the central node.

Message instance

{
    "header": {
        "id": "",
        "msg_id": "ea4af67a-cdec-4926-aa1d-7e78fdc5e55b",
        "parentId": "",
        "parent_msg_id": "",
        "isSync": false,
        "sync": false,
        "timestamp": 1706282575923,
        "version": "",
        "resourceversion": "",
        "nodeId": "",
        "peerInfo": {}
    },
    "router": {
        "source": "",
        "destination": "",
        "option": "",
        "resource": ""
    },
    "route": {
        "source": "metaManager",
        "group": "resource",
        "resource": "websocket/podstatus",
        "operation": "update"
    },
    "content": [{
        "Name": "test-06dbfd14-092d-42ef-8238-c674a8b59cac",
        "UID": "06dbfd14-092d-42ef-8238-c674a8b59cac",
        "kind": "Pod",
        "metadata": {
            "creationTimestamp": "2023-05-06T07:36:26Z",
            "name": "test-06dbfd14-092d-42ef-8238-c674a8b59cac",
            "namespace": "websocket",
            "resourceVersion": "7305070",
            "uid": "06dbfd14-092d-42ef-8238-c674a8b59cac"
        },
        "spec": {
            "containers": [{
                "image": "fd.fusiondirector.huawei.com:443/library/test:1.0",
                "imagePullPolicy": "IfNotPresent",
                "name": "container-0",
                "ports": [{
                    "containerPort": 9090,
                    "hostIP": "127.0.xx.xx",
                    "hostPort": 9091,
                    "protocol": "TCP"
                }],
                "resources": {
                    "limits": {
                        "cpu": "1",
                        "memory": "512Mi"
                    },
                    "requests": {
                        "cpu": "250m",
                        "memory": "512Mi"
                    }
                },
                "securityContext": {
                    "allowPrivilegeEscalation": false,
                    "capabilities": {
                        "drop": ["All"]
                    },
                    "privileged": false,
                    "readOnlyRootFilesystem": true,
                    "runAsGroup": 1024,
                    "runAsNonRoot": true,
                    "runAsUser": 1024,
                    "seccompProfile": {
                        "type": "RuntimeDefault"
                    }
                },
                "terminationMessagePath": "/dev/termination-log",
                "terminationMessagePolicy": "File"
            }],
            "dnsPolicy": "ClusterFirst",
            "enableServiceLinks": true,
            "imagePullSecrets": [{
                "name": "fusion-director-docker-registry-secret"
            }],
            "nodeName": "2102312test000000001",
            "restartPolicy": "Always",
            "schedulerName": "default-scheduler",
            "securityContext": {},
            "serviceAccountName": "default",
            "terminationGracePeriodSeconds": 30,
            "tolerations": [{
                "effect": "NoExecute",
                "key": "node.kubernetes.io/unreachable",
                "operator": "Exists"
            }, {
                "effect": "NoExecute",
                "key": "node.kubernetes.io/not-ready",
                "operator": "Exists"
            }, {
                "effect": "NoExecute",
                "key": "node.kubernetes.io/network-unavailable",
                "operator": "Exists"
            }]
        },
        "status": {
            "conditions": [{
                "lastProbeTime": null,
                "lastTransitionTime": "2023-05-06T16:15:19Z",
                "status": "True",
                "type": "Initialized"
            }, {
                "lastProbeTime": null,
                "lastTransitionTime": "2023-05-06T16:15:19Z",
                "status": "True",
                "type": "Ready"
            }, {
                "lastProbeTime": null,
                "lastTransitionTime": "2023-05-06T16:15:19Z",
                "status": "True",
                "type": "ContainersReady"
            }, {
                "lastProbeTime": null,
                "lastTransitionTime": "2023-05-06T16:15:19Z",
                "status": "True",
                "type": "PodScheduled"
            }],
            "containerStatuses": [{
                "containerID": "docker://a890eda7fe9c5ec38e722522ec757a21a7f033d3159c23624ccaedeb4f7e03b1",
                "image": "xxxxxx/library/test:1.0",
                "imageID": "docker-pullable://xxxxxx/library/test@sha256:89623abc2022ccb56639cea075feccff4bb8cdea4bcafa18d92f0e76a915fb34",
                "lastState": {},
                "name": "container-0",
                "ready": true,
                "restartCount": 0,
                "started": true,
                "state": {
                    "running": {
                        "startedAt": "2023-05-06T15:36:48Z"
                    }
                }
            }],
            "hostIP": "127.0.xx.xx",
            "phase": "Running",
            "podIP": "xx.xx.xx.xx",
            "podIPs": [{
                "ip": "xx.xx.xx.xx"
            }],
            "qosClass": "Burstable",
            "startTime": "2023-05-06T16:15:19Z"
        }
    }]
}

Parameter description

For details about the content message, see the Kubernetes pod status description.