I have the following questions:-
1: I am logged into a Kubernetes pod using the following command:-
./cluster/kubectl.sh exec my-nginx-0onux -c my-nginx -it bash
the 'ip addr show'
command shows its assigned the ip of the pod. Since pod is a logical concept , i am assuming i am logged into a docker container and not a pod, In which case, the pod ip is same as docker container ip. Is that understanding correct ?
2: from a Kubernetes node, i do sudo docker ps and then do the following:-
sudo docker exec 71721cb14283 -it '/bin/bash'
This doesnt work. Does someone know what i am doing wrong ?
3: i want to access the nginx service i created, from within the pod using curl. How can i install curl within this pod or container to access the service from inside. I want to do this to understand the network connectivity.
解决方案
Here is how you get a curl command line within a kubernetes network to test and explore your internal REST endpoints.
To get a prompt of a busybox running inside the network, execute the following command. (A tip is to use one unique container per developer.)
kubectl run curl- --image=radial/busyboxplus:curl -i --tty --rm
You may omit the --rm and keep the instance running for later re-usage. To reuse it later, type:
kubectl attach -c curl- -i -t
Using the command kubectl get pods you can see all running POD's. The is something similar to curl-yourname-944940652-fvj28.
EDIT: Note that you need to login to google cloud from your terminal (once) before you can do this! Here is an example, make sure to put in your zone, cluster and project: gcloud container clusters get-credentials example-cluster --zone europe-west1-c --project example-148812