Making Istio Bookinfo Application working on my Mac


#1

Dear Istio community,

I am a beginner on Istio and trying to take advantage of the transversal services provided by such tool by I am currently blocked for playing with it.

I am working with a Macbook with Docker/VirtualBox and Minikube installed.
I have downloaded the last istio version istio-1.0.5 and starting the https://istio.io/docs/examples/bookinfo/ procedure.
Unfortunately, I cannot make it working.

When I run the following command :
kubectl apply -f <(istioctl kube-inject -f [samples/bookinfo/platform/kube/bookinfo.yaml](https://raw.githubusercontent.com/istio/istio/release-1.0/samples/bookinfo/platform/kube/bookinfo.yaml))

I got this error message :
`Error: could not read valid configmap “istio” from namespace “istio-system”: configmaps “istio” not found - Use --meshConfigFile or re-run kube-inject with -i <istioSystemNamespace> and ensure valid MeshConfig exists

error: no objects passed to apply`

Could anyone have a solution to give me?

Thank you.


#2

Have you installed the istio correctly? https://istio.io/docs/setup/kubernetes/quick-start/

You can check if the configmap exists:

#kubectl get configmap -n istio-system
NAME DATA AGE
istio 1 35h

And the pods:

#kubectl get pods -n istio-system


#3

I found it difficult to get things working with Minikube. I ran into all sorts of mysterious problems. I switched to using GKE just to reduce the number of moving parts.

It might not solve your exact problem, but it does make isolating Istio-specific issues easier.

(My $0.02; YMMV)


#4

Hello, I run on my Mac with MiniKube and with DockerForMac (running Kubernetes) (need to up the memory size from the D4M default). However, D4M has been a little flakey for me. With D4M I would sometime see kubectl hang. Restarting D4M would get things running. Maybe setting the memory or CPU higher would solve it.

As Harry mentioned, did you successfully get Istio installed? I typically use option #2 from https://istio.io/docs/setup/kubernetes/helm-install/.

Would you do a kubectl get pods -n istio-system and verify that the pods are running.


#5

I too left Minikube behind. I found the installation of Docker4Mac (running Kubernetes) a simpler experience. Also, resetting and getting your k8s cluster back to ‘defaults’ is a very simple process.

To echo @ericvn - I also needed to up the memory requirements of my Docker4Mac install. I up’d the CPU count also. After doing this, I reset my Docker4Mac back to defaults and did the Istio install again using helm (with the 1.0.5 install downloaded to my Mac).