docs: Add more descriptions and examples in the prometheus doc (#1467)

diff --git a/docs/en/latest/tutorials/how-to-access-Apache-APISIX-Prometheus-Metrics-on-k8s.md b/docs/en/latest/tutorials/how-to-access-Apache-APISIX-Prometheus-Metrics-on-k8s.md
index c19cad0..581914b 100644
--- a/docs/en/latest/tutorials/how-to-access-Apache-APISIX-Prometheus-Metrics-on-k8s.md
+++ b/docs/en/latest/tutorials/how-to-access-Apache-APISIX-Prometheus-Metrics-on-k8s.md
@@ -25,6 +25,86 @@
 
 *Prometheus* is a leading open-source project focused on metrics and alerting that has changed the way the world does monitoring and observability. For more information, see *Prometheus*'s official [website](https://prometheus.io/).
 
+## Before you begin
+
+In the APISIX Ingress environment, ensure that the `public-api` and `prometheus` plugins are enabled and the [prometheus pluginAttrs](https://apisix.apache.org/docs/apisix/plugins/prometheus/#specifying-metrics) are configured. Please refer to the following install example:
+
+```sh
+helm repo add apisix https://charts.apiseven.com
+helm repo update
+helm install apisix apisix/apisix -f values.yaml --create-namespace -n ingress-apisix
+```
+
+<details>
+  <summary>values.yaml</summary>
+
+```yaml
+gateway:
+  type: NodePort
+
+ingress-controller:
+  enabled: true
+  config:
+    apisix:
+      serviceNamespace: ingress-apisix
+
+pluginAttrs:
+  prometheus:
+    enable_export_server: false
+
+plugins:
+  - api-breaker
+  - authz-keycloak
+  - basic-auth
+  - batch-requests
+  - consumer-restriction
+  - cors
+  - echo
+  - fault-injection
+  - file-logger
+  - grpc-transcode
+  - hmac-auth
+  - http-logger
+  - ip-restriction
+  - ua-restriction
+  - jwt-auth
+  - kafka-logger
+  - key-auth
+  - limit-conn
+  - limit-count
+  - limit-req
+  - node-status
+  - openid-connect
+  - authz-casbin
+  - proxy-cache
+  - proxy-mirror
+  - proxy-rewrite
+  - redirect
+  - referer-restriction
+  - request-id
+  - request-validation
+  - response-rewrite
+  - serverless-post-function
+  - serverless-pre-function
+  - sls-logger
+  - syslog
+  - tcp-logger
+  - udp-logger
+  - uri-blocker
+  - wolf-rbac
+  - zipkin
+  - traffic-split
+  - gzip
+  - real-ip
+  - ext-plugin-pre-req
+  - ext-plugin-post-req
+  - prometheus # enable prometheus
+  - public-api # enable public-api
+
+```
+
+</details>
+
 ## Begin to access Apache APISIX Prometheus Metrics
 
 Before starting, please make sure that Apache APISIX (version >= 2.13)and APISIX Ingress controller are installed and working correctly. APISIX uses the `prometheus` plugin to expose metrics and integrate with prometheus but uses the `public-api` plugin to enhance its security after version 2.13. For more information, see the `public-api` plugin's official [document](https://apisix.apache.org/docs/apisix/plugins/public-api/).
@@ -33,7 +113,12 @@
 
 If you need to monitor Apache APISIX simultaneously, you can create the following ApisixClusterConfig resource.
 
+```sh
+kubectl apply -f default.yaml
+```
+
 ```yaml
+# default.yaml
 apiVersion: apisix.apache.org/v2
 kind: ApisixClusterConfig
 metadata:
@@ -48,7 +133,12 @@
 
 Let's make a basic routing setup, and please note that further configuration should be done based on your local backend service information. The primary solution concept is to use the `public-api` plugin to protect the routes exposed by *Prometheus*. For a more detailed configuration, you can refer to the [example](https://apisix.apache.org/docs/apisix/plugins/public-api/#example) section of the `public-api` plugin.
 
+```bash
+kubectl apply -f prometheus-route.yaml -n ingress-apisix
+```
+
 ```yaml
+# prometheus-route.yaml
 apiVersion: apisix.apache.org/v2
 kind: ApisixRoute
 metadata:
@@ -62,7 +152,7 @@
       paths:
       - /apisix/prometheus/metrics
     backends:
-    ## Please notice that there must be your actual "serviceName" and "servicePort"
+    ## Please notice that there must be your actual "serviceName" and "servicePort", and must be in the same namespace.
     - serviceName: apisix-admin
       servicePort: 9180
     plugins:
@@ -72,16 +162,22 @@
 
 ### Step 3: Collect the Metrics
 
+Use port forwarding to access service `apisix-gateway` in a cluster.
+
+```sh
+# Forward to 127.0.0.1:9080
+kubectl port-forward service/apisix-gateway 9080:80 -n ingress-apisix
+```
+
 Now you can then get the indicator parameters by requesting command access.
 
 ```sh
-kubectl exec -it -n ${namespace of Apache APISIX} ${Pod name of Apache APISIX} -- curl http://127.0.0.1:9091/headers -H 'Host: test.prometheus.org'
+curl http://127.0.0.1:9080/apisix/prometheus/metrics -H 'Host: test.prometheus.org'
 ```
 
 Then you will get the metrics you want.
 
 ```bash
-chever@cloud-native-01:~/api7/cloud_native/tasks/doc_prometheus$ kubectl exec -it -n ingress-apisix apisix-7d6b8577b6-rqhq9 -- curl http://127.0.0.1:9091/apisix/prometheus/metrics
 Defaulted container "apisix" out of: apisix, wait-etcd (init)
 # HELP apisix_bandwidth Total bandwidth in bytes consumed per service in APISIX
 # TYPE apisix_bandwidth counter