Skip to content

Istio lab to demonstrate the service mesh capability on microservice application

Notifications You must be signed in to change notification settings

ravisenevirathne/Istio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 

Repository files navigation

Istio

Istio is a service mesh technology and it brings traffic management, telemetry and security to complex kubernetes deployments. In a nutshell Istio uses Envoy proxy to inject proxy container to every pod to implement these features.

image

Setup minikube cluster to deploy istio

    minikube start --cpus 6 --memory 8192 --profile istio

Istio Install

  • download the latest Istio package from website
        curl -L https://istio.io/downloadIstio | sh -
  • move into the directory and add /bin path to shell profile, so "istioctl" command will be available
        vi .zshrc
        export PATH=/Users/ravi/istio-1.16.1/bin:$PATH
    
  • Install
        istioctl install --set profile=demo -y
    
  • Instruct to Istio to deploy envoy sidecar container by adding namespace label to default namespace
        kubectl label namespace default istio-injection=enabled
    
    

Install sample applicatoin called microservices-demo from GoogleCloud (only work with X64 cpu architecture)

Install Istio Addons for data visualization and monitoring

  • Apply addons manifest files from /istio-1.16.1/samples/addons folder

      kubectl apply -f ~/istio-1.16.1/samples/addons 
    
  • Make sure addons deployments are running on istio-system namespace

      kubectl -n istio-system get deployments
    
  • To access kiali dashboard from your local pc, you can use one of following methods. you need to have app:xxx label configured to kiali's datavisualization graph to work

      istioctl dashboard kiali
      # similarly you can open grafana,prometheus,jaeger dashboards
    
      kubectl port-forward -n istio-system services/kiali 1111:20001
      Forwarding from 127.0.0.1:1111 -> 20001   #can access dashboard on url 127.0.0.1:1111
    
      minikube service kiali -n istio-system --url
      service istio-system/kiali has no node port
      http://127.0.0.1:57828   # can access dashboard on this url
    
  • Kiali Dashboard provides good datavisualization graph how microservices are communicating with each other and other metrices. image

About

Istio lab to demonstrate the service mesh capability on microservice application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published