# Troubleshooting CLI Issues

### Kubectl <a href="#kubectl" id="kubectl"></a>

#### API Server Unreachable <a href="#api-server-unreachable" id="api-server-unreachable"></a>

#### Invalid Token in Kubeconfig <a href="#invalid-token-in-kubeconfig" id="invalid-token-in-kubeconfig"></a>

### Etcdctl <a href="#etcdctl" id="etcdctl"></a>

#### Incorrect Endpoint(s) <a href="#incorrect-endpoints" id="incorrect-endpoints"></a>

{% hint style="danger" icon="circle-xmark" %}
**Authentication Handshake Failed: EOF**\
This error may be encountered as a result of an improper or unreachable target within the specified endpoints.
{% endhint %}

```
# ETCDCTL_API=3 etcdctl --cacert /etc/pf9/kube.d/certs/etcdctl/etcd/ca.crt --cert /etc/pf9/kube.d/certs/etcdctl/etcd/request.crt --key /etc/pf9/kube.d/certs/etcdctl/etcd/request.key member list
{"level":"warn","ts":"2021-06-29T17:35:33.700Z","caller":"clientv3/retry_interceptor.go:62","msg":"retrying of unary invoker failed","target":"endpoint://client-17003473-68d9-4280-9775-c88d055dcab4/127.0.0.1:2379","attempt":0,"error":"rpc error: code = DeadlineExceeded desc = latest balancer error: all SubConns are in TransientFailure, latest connection error: connection error: desc = \"transport: authentication handshake failed: EOF\""}
Error: context deadline exceeded
```

#### Certificates Not Specified <a href="#certificates-not-specified" id="certificates-not-specified"></a>

### Networking Issues <a href="#networking-issues" id="networking-issues"></a>

If your nodes are deployed on an internal network, (e.g. a node deployed on any of the following: AWS private network, OpenStack tenant network, VMware NSX tenant/private network) you must specify **the internal IP of the node** as a parameter to the CLI.

If in doubt, run `ifconfig` on the node, then see what IP address gets reported and specify that IP. Your external IP will not get reported by `ifconfig` as that is configured external to the node.

Type to search, ESC to discardType to search, ESC to discardType to search, ESC to discard<i class="fa-clock">:clock:</i><br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.platform9.com/managed-kubernetes/support/troubleshooting/troubleshooting-cli-issues.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
