calicoctl get
Read the calicoctl command line interface user reference for a full list of calicoctl commands.
note
The available actions for a specific resource type may be limited based on the datastore used for Calico (etcdv3 / Kubernetes API). Please refer to the for details about each resource type.
Run calicoctl get --help
to display the following help menu for the command.
-h --help Show this screen.
-f --filename=<FILENAME> Filename to use to get the resource. If set to
"-" loads from stdin.
-o --output=<OUTPUT FORMAT> Output format. One of: yaml, json, ps, wide,
custom-columns=..., go-template=...,
go-template-file=... [Default: ps]
-n --namespace=<NS> Namespace of the resource.
Only applicable to NetworkPolicy, NetworkSet, and WorkloadEndpoint.
Uses the default namespace if not specified.
all namespaces.
--export If present, returns the requested object(s) stripped of
cluster-specific information. This flag will be ignored
if the resource name is not specified.
-c --config=<CONFIG> Path to the file containing connection
configuration in YAML or JSON format.
ps
This is the default output format. It displays output in ps-style table output with sufficient columns to uniquely identify the resource.
The headings displayed for each resource type is fixed. However, we wide
option for displaying additional columns, and custom-columns
for selecting which columns to display.
calicoctl get hostEndpoint
Response:
wide
Similar to the ps
format, the wide
option displays output in ps-style table output but with additional columns.
The headings displayed for each resource type is fixed. See custom-columns
for selecting which columns to display.
Example:
calicoctl get hostEndpoint --output=wide
Response:
NAME NODE INTERFACE IPS PROFILES
endpoint1 host1 1.2.3.4,0:bb::aa prof1,prof2
myhost-eth0 myhost profile1
custom-columns
Similar to the ps
format, the custom-columns
option displays output in ps-style table output but allows the user to specify and ordered, comma-separated list of columns to display in the output. The valid heading names for each resource type is documented in the guide.
calicoctl get hostEndpoint --output=custom-columns=NAME,IPS
Response:
yaml / json
The yaml
and json
options display the output as a list of YAML documents or JSON dictionaries. The fields for resource type are documented in the guide.
The output from either of these formats may be used as input for all of the resource management commands.
Example:
calicoctl get hostEndpoint --output=yaml
Response:
- apiVersion: projectcalico.org/v3
kind: HostEndpoint
labels:
type: database
spec:
node: host1
expectedIPs:
- 1.2.3.4
- 0:bb::aa
profiles:
- prof1
- prof2
- apiVersion: projectcalico.org/v3
kind: HostEndpoint
metadata:
name: myhost-eth0
spec:
node: myhost
profiles:
- profile1
go-template / go-template-file
The go-template
and go-template-file
options display the output using a golang template specified as a string on the CLI, or defined in a separate file. When writing a template, be aware that the data passed to the template is a golang slice of resource-lists. The resource-lists are defined in the and there is a resource-list defined for each resource type. A resource-list contains an Items field which is itself a slice of resources. Thus, to output the “Name” field from the supplied data, it is necessary to enumerate over the slice of resource-lists and the items within that list.
endpoint1,eth0,
See also
- .
- NetworkPolicy for details on the Calico selector-based policy model