mirror of https://github.com/knative/docs.git
Fixes numbered list formatting
This commit is contained in:
parent
da93795496
commit
911ca4117a
|
@ -16,83 +16,84 @@ go get -d github.com/knative/docs/serving/samples/autoscale-go
|
||||||
Build the application container and publish it to a container registry:
|
Build the application container and publish it to a container registry:
|
||||||
|
|
||||||
1. Move into the sample directory:
|
1. Move into the sample directory:
|
||||||
```
|
```
|
||||||
cd $GOPATH/src/github.com/knative/docs
|
cd $GOPATH/src/github.com/knative/docs
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Set your preferred container registry:
|
1. Set your preferred container registry:
|
||||||
```
|
```
|
||||||
export REPO="gcr.io/<YOUR_PROJECT_ID>"
|
export REPO="gcr.io/<YOUR_PROJECT_ID>"
|
||||||
```
|
```
|
||||||
* This example shows how to use Google Container Registry (GCR). You will need a Google Cloud Project and to enable the [Google Container Registry API](https://console.cloud.google.com/apis/library/containerregistry.googleapis.com).
|
* This example shows how to use Google Container Registry (GCR). You will need a
|
||||||
|
Google Cloud Project and to enable the
|
||||||
|
[Google Container Registry API](https://console.cloud.google.com/apis/library/containerregistry.googleapis.com).
|
||||||
|
|
||||||
1. Use Docker to build your application container:
|
1. Use Docker to build your application container:
|
||||||
```
|
```
|
||||||
docker build \
|
docker build \
|
||||||
--tag "${REPO}/serving/samples/autoscale-go" \
|
--tag "${REPO}/serving/samples/autoscale-go" \
|
||||||
--file=serving/samples/autoscale-go/Dockerfile .
|
--file=serving/samples/autoscale-go/Dockerfile .
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Push your container to a container registry:
|
1. Push your container to a container registry:
|
||||||
```
|
```
|
||||||
docker push "${REPO}/serving/samples/autoscale-go"
|
docker push "${REPO}/serving/samples/autoscale-go"
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Replace the image reference with our published image:
|
1. Replace the image reference with our published image:
|
||||||
```
|
```
|
||||||
perl -pi -e \
|
perl -pi -e \
|
||||||
"s@github.com/knative/docs/serving/samples/autoscale-go@${REPO}/serving/samples/autoscale-go@g" \
|
"s@github.com/knative/docs/serving/samples/autoscale-go@${REPO}/serving/samples/autoscale-go@g" \
|
||||||
serving/samples/autoscale-go/sample.yaml
|
serving/samples/autoscale-go/sample.yaml
|
||||||
```
|
```
|
||||||
|
|
||||||
## Deploy the Service
|
## Deploy the Service
|
||||||
|
|
||||||
1. Deploy the Knative Serving sample:
|
1. Deploy the Knative Serving sample:
|
||||||
```
|
```
|
||||||
kubectl apply -f serving/samples/autoscale-go/sample.yaml
|
kubectl apply -f serving/samples/autoscale-go/sample.yaml
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Find the ingress hostname and IP and export as an environment variable:
|
1. Find the ingress hostname and IP and export as an environment variable:
|
||||||
```
|
```
|
||||||
export SERVICE_HOST=`kubectl get route autoscale-route -o jsonpath="{.status.domain}"`
|
export SERVICE_HOST=`kubectl get route autoscale-route -o jsonpath="{.status.domain}"`
|
||||||
export SERVICE_IP=`kubectl get svc knative-ingressgateway -n istio-system -o jsonpath="{.status.loadBalancer.ingress[*].ip}"`
|
export SERVICE_IP=`kubectl get svc knative-ingressgateway -n istio-system -o jsonpath="{.status.loadBalancer.ingress[*].ip}"`
|
||||||
```
|
```
|
||||||
|
|
||||||
## View the Autoscaling Capabilities
|
## View the Autoscaling Capabilities
|
||||||
|
|
||||||
1. Request the largest prime less than 40,000,000 from the autoscale app. Note that it consumes about 1 cpu/sec.
|
1. Request the largest prime less than 40,000,000 from the autoscale app. Note that it consumes about 1 cpu/sec.
|
||||||
```
|
```
|
||||||
time curl --header "Host:$SERVICE_HOST" http://${SERVICE_IP?}/primes/40000000
|
time curl --header "Host:$SERVICE_HOST" http://${SERVICE_IP?}/primes/40000000
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Ramp up traffic on the autoscale app (about 300 QPS).
|
1. Ramp up traffic on the autoscale app (about 300 QPS):
|
||||||
```
|
```
|
||||||
kubectl delete namespace hey --ignore-not-found && kubectl create namespace hey
|
kubectl delete namespace hey --ignore-not-found && kubectl create namespace hey
|
||||||
```
|
```
|
||||||
```
|
```
|
||||||
for i in `seq 2 2 60`; do
|
for i in `seq 2 2 60`; do
|
||||||
kubectl -n hey run hey-$i --image josephburnett/hey --restart Never -- \
|
kubectl -n hey run hey-$i --image josephburnett/hey --restart Never -- \
|
||||||
-n 999999 -c $i -z 2m -host $SERVICE_HOST \
|
-n 999999 -c $i -z 2m -host $SERVICE_HOST \
|
||||||
"http://${SERVICE_IP?}/primes/40000000"
|
"http://${SERVICE_IP?}/primes/40000000"
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Watch the Knative Serving deployment pod count increase.
|
1. Watch the Knative Serving deployment pod count increase.
|
||||||
```
|
```
|
||||||
kubectl get deploy --watch
|
kubectl get deploy --watch
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Watch the pod traffic ramp up.
|
1. Watch the pod traffic ramp up.
|
||||||
```
|
```
|
||||||
kubectl get pods -n hey --show-all --watch
|
kubectl get pods -n hey --show-all --watch
|
||||||
```
|
```
|
||||||
|
|
||||||
1. Look at the latency, requests/sec and success rate of each pod.
|
1. Look at the latency, requests/sec and success rate of each pod.
|
||||||
```
|
```
|
||||||
for i in `seq 2 2 60`; do kubectl -n hey logs hey-$i ; done
|
for i in `seq 2 2 60`; do kubectl -n hey logs hey-$i ; done
|
||||||
```
|
```
|
||||||
|
|
||||||
## Cleanup
|
## Cleanup
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue