Configuring calicoctl to connect to the Kubernetes API datastore
Complete list of Kubernetes API connection configuration
Configuration file option | Environment variable | Description | Schema |
---|---|---|---|
datastoreType |
DATASTORE_TYPE |
Indicates the datastore to use. [Default: etcdv3 ] |
kubernetes , etcdv3 |
kubeconfig |
KUBECONFIG |
When using the Kubernetes datastore, the location of a kubeconfig file to use, e.g. /path/to/kube/config. | string |
k8sAPIEndpoint |
K8S_API_ENDPOINT |
Location of the Kubernetes API. Not required if using kubeconfig. [Default: https://kubernetes-api:443 ] |
string |
k8sCertFile |
K8S_CERT_FILE |
Location of a client certificate for accessing the Kubernetes API, e.g., /path/to/cert . |
string |
k8sKeyFile |
K8S_KEY_FILE |
Location of a client key for accessing the Kubernetes API, e.g., /path/to/key . |
string |
k8sCAFile |
K8S_CA_FILE |
Location of a CA for accessing the Kubernetes API, e.g., /path/to/ca . |
string |
k8sToken |
K8S_TOKEN |
Token to be used for accessing the Kubernetes API. | string |
Note: All environment variables may also be prefixed with
"CALICO_"
, for example"CALICO_DATASTORE_TYPE"
and"CALICO_KUBECONFIG"
etc. may be used. This is useful if the non-prefixed names clash with existing environment variables defined on your system.
Examples
Kubernetes command line
DATASTORE_TYPE=kubernetes KUBECONFIG=~/.kube/config calicoctl get nodes
Example configuration file
apiVersion: projectcalico.org/v3
kind: CalicoAPIConfig
metadata:
spec:
datastoreType: "kubernetes"
kubeconfig: "/path/to/.kube/config"
Example using environment variables
$ export DATASTORE_TYPE=kubernetes
$ export KUBECONFIG=~/.kube/config
$ calicoctl get workloadendpoints
And using CALICO_
prefixed names:
$ export CALICO_DATASTORE_TYPE=kubernetes
$ export CALICO_KUBECONFIG=~/.kube/config
$ calicoctl get workloadendpoints
Checking the configuration
Here is a simple command to check that the installation and configuration is correct.
calicoctl get nodes
A correct setup will yield a list of the nodes that have registered. If an empty list is returned you are either pointed at the wrong datastore or no nodes have registered. If an error is returned then attempt to correct the issue then try again.
Next steps
Now you are ready to read and configure most aspects of Calico. You can find the full list of commands in the Command Reference.
The full list of resources that can be managed, including a description of each, can be found in the Resource Definitions.