/service-mesh-kustomization

Kustomization for deploying Red Hat OpenShift Service Mesh

Apache License 2.0Apache-2.0

Kustomization for Deploying Red Hat OpenShift Service Mesh

Red Hat OpenShift Service Mesh product documentation can be found here. This kustomization is based on the examples included in the product documentation.

You can refer to the Maistra Istio Operator project on GitHub for further documentation on the operator.

Deploying required operators

$ oc apply --kustomize elasticsearch-operator/base
$ oc apply --kustomize jaeger-operator/base
$ oc apply --kustomize kiali-operator/base
$ oc apply --kustomize service-mesh-operator/base

You should now see operators running in the openshift-operators project:

oc get pod --namespace openshift-operators
NAME                                     READY   STATUS    RESTARTS   AGE
elasticsearch-operator-6b4686b59-fz6cx   1/1     Running   0          11h
istio-operator-5f945bd597-z89qp          1/1     Running   0          11h
jaeger-operator-54b947db5d-lck5w         1/1     Running   0          11h
kiali-operator-6559fdc5bc-vspjd          1/1     Running   0          11h

Deploying Service Mesh control plane

Install service mesh control plane:

$ oc apply --kustomize service-mesh-instance/overlays/development

Discover the service mesh endpoint hostnames:

$ oc get route --namespace istio-system

Deploying Bookinfo application

Follow the instructions in the chapter Example Application to deploy the example Bookinfo application.

$ oc new-project bookinfo
$ oc patch \
    smmr default \
    --namespace istio-system \
    --type json \
    --patch '[{"op": "add", "path": "/spec/members/-", "value": "bookinfo"}]'
$ oc apply \
    --namespace bookinfo \
    --filename https://raw.githubusercontent.com/Maistra/bookinfo/maistra-1.0/bookinfo.yaml
$ oc apply \
    --namespace bookinfo \
    --filename https://raw.githubusercontent.com/Maistra/bookinfo/maistra-1.0/bookinfo-gateway.yaml
$ oc apply --namespace bookinfo \
    --filename https://raw.githubusercontent.com/istio/istio/release-1.1/samples/bookinfo/networking/destination-rule-all.yaml

Verifying the Bookinfo installation

Obtain the Istio ingress hostname:

$ oc get route --namespace istio-system istio-ingressgateway --output jsonpath='{.spec.host}'

Then visit http://<ingress_hostname>/productpage with your browser.

Obtain the Kiali endpoint hostname:

$ oc get route --namespace istio-system kiali --output jsonpath='{.spec.host}'

Obtain the Jaeger endpoint hostname:

$ oc get route --namespace istio-system jaeger --output jsonpath='{.spec.host}'