Guto Carvalho # 2021-11-17 @ BSB
Guto Carvalho # 2021-11-17 @ BSB

DROPS: Instalando ISTIO via helm para testes

by

Aprendar a instalar o Istio via Helm em poucos passos.


O Istio é uma implementação de service mesh, falaremos oq é isso em outro post!

Instalando

crie um diretório

$ mkdir istio && cd istio

baixe o pacote

$ curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.11.4 TARGET_ARCH=x86_64 sh -

Crie o namespace

$ kubectl create namespace istio-system 

Instale o pacote base (CRD’s)

$ helm install istio-base istio-1.11.4/manifests/charts/base -n istio-system

Instale o istiod (Services)

$ helm install istiod istio-1.11.4/manifests/charts/istio-control/istio-discovery -n istio-system

Instale o istio ingress (opcional)

$ helm install istio-ingress istio-1.11.4/manifests/charts/gateways/istio-ingress -n istio-system

Instale o istio egress (opcional)

$ helm install istio-egress istio-1.11.4/manifests/charts/gateways/istio-egress -n istio-system

Validando

Verifique

$ kubectl get pods -n istio-system

Saída esperada

NAME                                    READY   STATUS    RESTARTS   AGE
istio-egressgateway-6674469d89-zz4h8    1/1     Running   0          12m
istio-ingressgateway-55cf46987b-5lcxj   1/1     Running   0          13m
istiod-7556556fcc-7bcf8                 1/1     Running   0          13m

Verifique

$ kubectl get istio-io --all-namespaces

Saída esperada

NAMESPACE      NAME                                                         AGE
istio-system   envoyfilter.networking.istio.io/metadata-exchange-1.10       13m
istio-system   envoyfilter.networking.istio.io/metadata-exchange-1.11       13m
istio-system   envoyfilter.networking.istio.io/metadata-exchange-1.9        13m
istio-system   envoyfilter.networking.istio.io/stats-filter-1.10            13m
istio-system   envoyfilter.networking.istio.io/stats-filter-1.11            13m
istio-system   envoyfilter.networking.istio.io/stats-filter-1.9             13m
istio-system   envoyfilter.networking.istio.io/tcp-metadata-exchange-1.10   13m
istio-system   envoyfilter.networking.istio.io/tcp-metadata-exchange-1.11   13m
istio-system   envoyfilter.networking.istio.io/tcp-metadata-exchange-1.9    13m
istio-system   envoyfilter.networking.istio.io/tcp-stats-filter-1.10        13m
istio-system   envoyfilter.networking.istio.io/tcp-stats-filter-1.11        13m
istio-system   envoyfilter.networking.istio.io/tcp-stats-filter-1.9         13m

Removendo

Numa tacada só

$ helm uninstall istio-base istio-egress istio-ingress istiod -n istio-system

Saída esperada

release "istio-base" uninstalled
release "istio-egress" uninstalled
release "istio-ingress" uninstalled
release "istiod" uninstalled

Removendo o namespace

$ kubectl delete namespace istio-system
namespace "istio-system" deleted

Removendo CRDs

$ kubectl get crd | grep --color=never 'istio.io' | awk '{print $1}'| xargs -n1 kubectl delete crd

Saída esperada

customresourcedefinition.apiextensions.k8s.io "adapters.config.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "attributemanifests.config.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "authorizationpolicies.security.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "clusterrbacconfigs.rbac.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "destinationrules.networking.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "envoyfilters.networking.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "gateways.networking.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "handlers.config.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "httpapispecbindings.config.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "httpapispecs.config.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "instances.config.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "istiooperators.install.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "peerauthentications.security.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "quotaspecbindings.config.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "quotaspecs.config.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "rbacconfigs.rbac.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "requestauthentications.security.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "rules.config.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "serviceentries.networking.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "servicerolebindings.rbac.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "serviceroles.rbac.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "sidecars.networking.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "telemetries.telemetry.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "templates.config.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "virtualservices.networking.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "workloadentries.networking.istio.io" deleted
customresourcedefinition.apiextensions.k8s.io "workloadgroups.networking.istio.io" deleted

Refs