Update content/en/docs/tasks/access-application-cluster/port-forward-access-application-cluster.md

Update page port-forward-access-application-cluster.md to use MongoDB
examples instead of Redis examples

Commit 99029b9 removes the Redis examples.

Signed-off-by: Jailton Lopes <jailton@gmail.com>
pull/26659/head
Jailton Lopes 2021-02-21 20:18:25 -03:00
parent 641e7c061c
commit 9068e70716
No known key found for this signature in database
GPG Key ID: 263A4918DE916A62
1 changed files with 49 additions and 42 deletions

View File

@ -7,7 +7,7 @@ min-kubernetes-server-version: v1.10
<!-- overview -->
This page shows how to use `kubectl port-forward` to connect to a Redis
This page shows how to use `kubectl port-forward` to connect to a MongoDB
server running in a Kubernetes cluster. This type of connection can be useful
for database debugging.
@ -19,25 +19,25 @@ for database debugging.
* {{< include "task-tutorial-prereqs.md" >}} {{< version-check >}}
* Install [redis-cli](http://redis.io/topics/rediscli).
* Install [MongoDB Shell](https://www.mongodb.com/try/download/shell).
<!-- steps -->
## Creating Redis deployment and service
## Creating MongoDB deployment and service
1. Create a Deployment that runs Redis:
1. Create a Deployment that runs MongoDB:
```shell
kubectl apply -f https://k8s.io/examples/application/guestbook/redis-master-deployment.yaml
kubectl apply -f https://k8s.io/examples/application/guestbook/mongo-deployment.yaml
```
The output of a successful command verifies that the deployment was created:
```
deployment.apps/redis-master created
deployment.apps/mongo created
```
View the pod status to check that it is ready:
@ -49,8 +49,8 @@ for database debugging.
The output displays the pod created:
```
NAME READY STATUS RESTARTS AGE
redis-master-765d459796-258hz 1/1 Running 0 50s
NAME READY STATUS RESTARTS AGE
mongo-75f59d57f4-4nd6q 1/1 Running 0 2m4s
```
View the Deployment's status:
@ -62,8 +62,8 @@ for database debugging.
The output displays that the Deployment was created:
```
NAME READY UP-TO-DATE AVAILABLE AGE
redis-master 1/1 1 1 55s
NAME READY UP-TO-DATE AVAILABLE AGE
mongo 1/1 1 1 2m21s
```
The Deployment automatically manages a ReplicaSet.
@ -76,50 +76,50 @@ for database debugging.
The output displays that the ReplicaSet was created:
```
NAME DESIRED CURRENT READY AGE
redis-master-765d459796 1 1 1 1m
NAME DESIRED CURRENT READY AGE
mongo-75f59d57f4 1 1 1 3m12s
```
2. Create a Service to expose Redis on the network:
2. Create a Service to expose MongoDB on the network:
```shell
kubectl apply -f https://k8s.io/examples/application/guestbook/redis-master-service.yaml
kubectl apply -f https://k8s.io/examples/application/guestbook/mongo-service.yaml
```
The output of a successful command verifies that the Service was created:
```
service/redis-master created
service/mongo created
```
Check the Service created:
```shell
kubectl get service redis-master
kubectl get service mongo
```
The output displays the service created:
```
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
redis-master ClusterIP 10.0.0.213 <none> 6379/TCP 27s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
mongo ClusterIP 10.96.41.183 <none> 27017/TCP 11s
```
3. Verify that the Redis server is running in the Pod, and listening on port 6379:
3. Verify that the MongoDB server is running in the Pod, and listening on port 27017:
```shell
# Change redis-master-765d459796-258hz to the name of the Pod
kubectl get pod redis-master-765d459796-258hz --template='{{(index (index .spec.containers 0).ports 0).containerPort}}{{"\n"}}'
# Change mongo-75f59d57f4-4nd6q to the name of the Pod
kubectl get pod mongo-75f59d57f4-4nd6q --template='{{(index (index .spec.containers 0).ports 0).containerPort}}{{"\n"}}'
```
The output displays the port for Redis in that Pod:
The output displays the port for MongoDB in that Pod:
```
6379
27017
```
(this is the TCP port allocated to Redis on the internet).
(this is the TCP port allocated to MongoDB on the internet).
## Forward a local port to a port on the Pod
@ -127,39 +127,39 @@ for database debugging.
```shell
# Change redis-master-765d459796-258hz to the name of the Pod
kubectl port-forward redis-master-765d459796-258hz 7000:6379
# Change mongo-75f59d57f4-4nd6q to the name of the Pod
kubectl port-forward mongo-75f59d57f4-4nd6q 28015:27017
```
which is the same as
```shell
kubectl port-forward pods/redis-master-765d459796-258hz 7000:6379
kubectl port-forward pods/mongo-75f59d57f4-4nd6q 28015:27017
```
or
```shell
kubectl port-forward deployment/redis-master 7000:6379
kubectl port-forward deployment/mongo 28015:27017
```
or
```shell
kubectl port-forward replicaset/redis-master 7000:6379
kubectl port-forward replicaset/mongo-75f59d57f4 28015:27017
```
or
```shell
kubectl port-forward service/redis-master 7000:redis
kubectl port-forward service/mongo 28015:27017
```
Any of the above commands works. The output is similar to this:
```
Forwarding from 127.0.0.1:7000 -> 6379
Forwarding from [::1]:7000 -> 6379
Forwarding from 127.0.0.1:28015 -> 27017
Forwarding from [::1]:28015 -> 27017
```
{{< note >}}
@ -168,22 +168,22 @@ for database debugging.
{{< /note >}}
2. Start the Redis command line interface:
2. Start the MongoDB command line interface:
```shell
redis-cli -p 7000
mongosh --port 28015
```
3. At the Redis command line prompt, enter the `ping` command:
3. At the MongoDB command line prompt, enter the `ping` command:
```
ping
db.runCommand( { ping: 1 } )
```
A successful ping request returns:
```
PONG
{ ok: 1 }
```
### Optionally let _kubectl_ choose the local port {#let-kubectl-choose-local-port}
@ -193,15 +193,22 @@ the local port and thus relieve you from having to manage local port conflicts,
the slightly simpler syntax:
```shell
kubectl port-forward deployment/redis-master :6379
kubectl port-forward deployment/mongo :27017
```
The output is similar to this:
```
Forwarding from 127.0.0.1:63753 -> 27017
Forwarding from [::1]:63753 -> 27017
```
The `kubectl` tool finds a local port number that is not in use (avoiding low ports numbers,
because these might be used by other applications). The output is similar to:
```
Forwarding from 127.0.0.1:62162 -> 6379
Forwarding from [::1]:62162 -> 6379
Forwarding from 127.0.0.1:63753 -> 27017
Forwarding from [::1]:63753 -> 27017
```
@ -209,8 +216,8 @@ Forwarding from [::1]:62162 -> 6379
## Discussion
Connections made to local port 7000 are forwarded to port 6379 of the Pod that
is running the Redis server. With this connection in place, you can use your
Connections made to local port 28015 are forwarded to port 27017 of the Pod that
is running the MongoDB server. With this connection in place, you can use your
local workstation to debug the database that is running in the Pod.
{{< note >}}