551 lines
20 KiB
JSON
551 lines
20 KiB
JSON
{
|
|
"description": "CiliumEndpoint is the status of a Cilium policy rule.",
|
|
"properties": {
|
|
"apiVersion": {
|
|
"description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
|
|
"type": "string"
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"status": {
|
|
"description": "EndpointStatus is the status of a Cilium endpoint.",
|
|
"properties": {
|
|
"controllers": {
|
|
"description": "Controllers is the list of failing controllers for this endpoint.",
|
|
"items": {
|
|
"description": "ControllerStatus is the status of a failing controller.",
|
|
"properties": {
|
|
"configuration": {
|
|
"description": "Configuration is the controller configuration",
|
|
"properties": {
|
|
"error-retry": {
|
|
"description": "Retry on error",
|
|
"type": "boolean"
|
|
},
|
|
"error-retry-base": {
|
|
"description": "Base error retry back-off time\nFormat: duration",
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"interval": {
|
|
"description": "Regular synchronization interval\nFormat: duration",
|
|
"format": "int64",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"name": {
|
|
"description": "Name is the name of the controller",
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"description": "Status is the status of the controller",
|
|
"properties": {
|
|
"consecutive-failure-count": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"failure-count": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"last-failure-msg": {
|
|
"type": "string"
|
|
},
|
|
"last-failure-timestamp": {
|
|
"type": "string"
|
|
},
|
|
"last-success-timestamp": {
|
|
"type": "string"
|
|
},
|
|
"success-count": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"uuid": {
|
|
"description": "UUID is the UUID of the controller",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"encryption": {
|
|
"description": "Encryption is the encryption configuration of the node",
|
|
"properties": {
|
|
"key": {
|
|
"description": "Key is the index to the key to use for encryption or 0 if encryption is\ndisabled.",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"external-identifiers": {
|
|
"description": "ExternalIdentifiers is a set of identifiers to identify the endpoint\napart from the pod name. This includes container runtime IDs.",
|
|
"properties": {
|
|
"cni-attachment-id": {
|
|
"description": "ID assigned to this attachment by container runtime",
|
|
"type": "string"
|
|
},
|
|
"container-id": {
|
|
"description": "ID assigned by container runtime (deprecated, may not be unique)",
|
|
"type": "string"
|
|
},
|
|
"container-name": {
|
|
"description": "Name assigned to container (deprecated, may not be unique)",
|
|
"type": "string"
|
|
},
|
|
"docker-endpoint-id": {
|
|
"description": "Docker endpoint ID",
|
|
"type": "string"
|
|
},
|
|
"docker-network-id": {
|
|
"description": "Docker network ID",
|
|
"type": "string"
|
|
},
|
|
"k8s-namespace": {
|
|
"description": "K8s namespace for this endpoint (deprecated, may not be unique)",
|
|
"type": "string"
|
|
},
|
|
"k8s-pod-name": {
|
|
"description": "K8s pod name for this endpoint (deprecated, may not be unique)",
|
|
"type": "string"
|
|
},
|
|
"pod-name": {
|
|
"description": "K8s pod for this endpoint (deprecated, may not be unique)",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"health": {
|
|
"description": "Health is the overall endpoint & subcomponent health.",
|
|
"properties": {
|
|
"bpf": {
|
|
"description": "bpf",
|
|
"type": "string"
|
|
},
|
|
"connected": {
|
|
"description": "Is this endpoint reachable",
|
|
"type": "boolean"
|
|
},
|
|
"overallHealth": {
|
|
"description": "overall health",
|
|
"type": "string"
|
|
},
|
|
"policy": {
|
|
"description": "policy",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"id": {
|
|
"description": "ID is the cilium-agent-local ID of the endpoint.",
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"identity": {
|
|
"description": "Identity is the security identity associated with the endpoint",
|
|
"properties": {
|
|
"id": {
|
|
"description": "ID is the numeric identity of the endpoint",
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"labels": {
|
|
"description": "Labels is the list of labels associated with the identity",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"log": {
|
|
"description": "Log is the list of the last few warning and error log entries",
|
|
"items": {
|
|
"description": "EndpointStatusChange Indication of a change of status\n\nswagger:model EndpointStatusChange",
|
|
"properties": {
|
|
"code": {
|
|
"description": "Code indicate type of status change\nEnum: [\"ok\",\"failed\"]",
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"description": "Status message",
|
|
"type": "string"
|
|
},
|
|
"state": {
|
|
"description": "state",
|
|
"type": "string"
|
|
},
|
|
"timestamp": {
|
|
"description": "Timestamp when status change occurred",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"named-ports": {
|
|
"description": "NamedPorts List of named Layer 4 port and protocol pairs which will be used in Network\nPolicy specs.\n\nswagger:model NamedPorts",
|
|
"items": {
|
|
"description": "Port Layer 4 port / protocol pair\n\nswagger:model Port",
|
|
"properties": {
|
|
"name": {
|
|
"description": "Optional layer 4 port name",
|
|
"type": "string"
|
|
},
|
|
"port": {
|
|
"description": "Layer 4 port number",
|
|
"type": "integer"
|
|
},
|
|
"protocol": {
|
|
"description": "Layer 4 protocol\nEnum: [\"TCP\",\"UDP\",\"SCTP\",\"ICMP\",\"ICMPV6\",\"ANY\"]",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"networking": {
|
|
"description": "Networking is the networking properties of the endpoint.",
|
|
"properties": {
|
|
"addressing": {
|
|
"description": "IP4/6 addresses assigned to this Endpoint",
|
|
"items": {
|
|
"description": "AddressPair is a pair of IPv4 and/or IPv6 address.",
|
|
"properties": {
|
|
"ipv4": {
|
|
"type": "string"
|
|
},
|
|
"ipv6": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"node": {
|
|
"description": "NodeIP is the IP of the node the endpoint is running on. The IP must\nbe reachable between nodes.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"addressing"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"policy": {
|
|
"description": "EndpointPolicy represents the endpoint's policy by listing all allowed\ningress and egress identities in combination with L4 port and protocol.",
|
|
"properties": {
|
|
"egress": {
|
|
"description": "EndpointPolicyDirection is the list of allowed identities per direction.",
|
|
"properties": {
|
|
"adding": {
|
|
"description": "Deprecated",
|
|
"items": {
|
|
"description": "IdentityTuple specifies a peer by identity, destination port and protocol.",
|
|
"properties": {
|
|
"dest-port": {
|
|
"type": "integer"
|
|
},
|
|
"identity": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"identity-labels": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
"protocol": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"allowed": {
|
|
"description": "AllowedIdentityList is a list of IdentityTuples that species peers that are\nallowed.",
|
|
"items": {
|
|
"description": "IdentityTuple specifies a peer by identity, destination port and protocol.",
|
|
"properties": {
|
|
"dest-port": {
|
|
"type": "integer"
|
|
},
|
|
"identity": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"identity-labels": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
"protocol": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"denied": {
|
|
"description": "DenyIdentityList is a list of IdentityTuples that species peers that are\ndenied.",
|
|
"items": {
|
|
"description": "IdentityTuple specifies a peer by identity, destination port and protocol.",
|
|
"properties": {
|
|
"dest-port": {
|
|
"type": "integer"
|
|
},
|
|
"identity": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"identity-labels": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
"protocol": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"enforcing": {
|
|
"type": "boolean"
|
|
},
|
|
"removing": {
|
|
"description": "Deprecated",
|
|
"items": {
|
|
"description": "IdentityTuple specifies a peer by identity, destination port and protocol.",
|
|
"properties": {
|
|
"dest-port": {
|
|
"type": "integer"
|
|
},
|
|
"identity": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"identity-labels": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
"protocol": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"state": {
|
|
"description": "EndpointPolicyState defines the state of the Policy mode: \"enforcing\", \"non-enforcing\", \"disabled\"",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"enforcing"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"ingress": {
|
|
"description": "EndpointPolicyDirection is the list of allowed identities per direction.",
|
|
"properties": {
|
|
"adding": {
|
|
"description": "Deprecated",
|
|
"items": {
|
|
"description": "IdentityTuple specifies a peer by identity, destination port and protocol.",
|
|
"properties": {
|
|
"dest-port": {
|
|
"type": "integer"
|
|
},
|
|
"identity": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"identity-labels": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
"protocol": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"allowed": {
|
|
"description": "AllowedIdentityList is a list of IdentityTuples that species peers that are\nallowed.",
|
|
"items": {
|
|
"description": "IdentityTuple specifies a peer by identity, destination port and protocol.",
|
|
"properties": {
|
|
"dest-port": {
|
|
"type": "integer"
|
|
},
|
|
"identity": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"identity-labels": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
"protocol": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"denied": {
|
|
"description": "DenyIdentityList is a list of IdentityTuples that species peers that are\ndenied.",
|
|
"items": {
|
|
"description": "IdentityTuple specifies a peer by identity, destination port and protocol.",
|
|
"properties": {
|
|
"dest-port": {
|
|
"type": "integer"
|
|
},
|
|
"identity": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"identity-labels": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
"protocol": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"enforcing": {
|
|
"type": "boolean"
|
|
},
|
|
"removing": {
|
|
"description": "Deprecated",
|
|
"items": {
|
|
"description": "IdentityTuple specifies a peer by identity, destination port and protocol.",
|
|
"properties": {
|
|
"dest-port": {
|
|
"type": "integer"
|
|
},
|
|
"identity": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
},
|
|
"identity-labels": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
"protocol": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"state": {
|
|
"description": "EndpointPolicyState defines the state of the Policy mode: \"enforcing\", \"non-enforcing\", \"disabled\"",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"enforcing"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"service-account": {
|
|
"description": "ServiceAccount is the service account associated with the endpoint",
|
|
"type": "string"
|
|
},
|
|
"state": {
|
|
"description": "State is the state of the endpoint.",
|
|
"enum": [
|
|
"creating",
|
|
"waiting-for-identity",
|
|
"not-ready",
|
|
"waiting-to-regenerate",
|
|
"regenerating",
|
|
"restoring",
|
|
"ready",
|
|
"disconnecting",
|
|
"disconnected",
|
|
"invalid"
|
|
],
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"metadata"
|
|
],
|
|
"type": "object"
|
|
}
|