Skip to content

Latest commit

 

History

History
90 lines (55 loc) · 1.72 KB

istio-setup.md

File metadata and controls

90 lines (55 loc) · 1.72 KB

Commands to quickly set up the cluster with the application.

  1. Create 'istio-system' namespace
kubectl create ns istio-system
  1. Switch to istio installation dir and install istio into the cluster.
helm template install/kubernetes/helm/istio \
  --set global.mtls.enabled=false \
  --set tracing.enabled=true \
  --set kiali.enabled=true \
  --set grafana.enabled=true \
  --namespace istio-system > istio.yaml

kubectl apply -f istio.yaml

# Wait until pods are in Running or Completed state
kubectl get pods -n istio-system
  1. Label the default namespace for auto sidecar injection
kubectl label namespace default istio-injection=enabled
  1. Set up the application:
kubectl apply -f ./resource-manifests/kube
  1. Set up the Gateway for ingress HTTP requests
kubectl apply -f resource-manifests/istio/http-gateway.yaml 
  1. Install the virtual services so that requests are routed
kubectl apply -f resource-manifests/istio/sa-virtualservice-external.yaml

  1. Open the application on the IP returned by:
kubectl get svc -n istio-system \
  -l app=istio-ingressgateway \
  -o jsonpath='{.items[0].status.loadBalancer.ingress[0].ip}'

X. What we get out of the box:

 # Kiali
kubectl port-forward \
    $(kubectl get pod -n istio-system -l app=kiali \
    -o jsonpath='{.items[0].metadata.name}') \
    -n istio-system 20001


# Grafana
kubectl -n istio-system port-forward \
    $(kubectl -n istio-system get pod -l app=grafana \
    -o jsonpath='{.items[0].metadata.name}') 3000


# Jaeger 
kubectl port-forward -n istio-system \
    $(kubectl get pod -n istio-system -l app=jaeger \
    -o jsonpath='{.items[0].metadata.name}') 16686