Wednesday, March 16, 2022

Develop Istio and its operator locally

 To develop Istio locally on your machine can be problematic since Istiod deployment requires Istio pilot image to be available from a container image repository, this can be difficult since as a developer you are making changes to the container which is not in any repo yet. This process will let a developer to do this locally without using any container repo.


1. Build istio using your own version, for example,

  export VERSION=1.20-dev
  export TAG=$VERSION
  export HUB=istio
  export DEBUG=1 (optional)
   
 make istioctl docker.pilot docker.proxyv2 docker.operator  

Istio source directory has a file named Makefile.core.mk which should have a environment variable named VERSION defined,  the value should be something like 1.13-dev, 1.14-dev etc depends on which branch you may have. You can use the above example to set up an Istio version yourself to something in your like. 

Alternatively, you can add export

2. Once your istiod, proxyv2, operator images are built, you can now run this script to upload these images to your kind cluster.

3. Then you use the newly built istioctl cli to deploy istio onto your cluster, this way, your kind cluster will have your local image available and running, you then can look at the logs from istiod, or proxyv2 to find issues or test features.

No comments:

Post a Comment