LoginSignup
1
1

More than 5 years have passed since last update.

Istio インストール on AKS

Posted at

Istio を久々にインストールしたら、Deploying Istio on Azure Container Serviceの方法ではうまくいかなくなっていた。

原因は、helm Char のセマンテックバージョニングで、Helm 2.8 がリリースされたら改善されそう。

$ helm search incubator/istio -l
NAME            VERSION         DESCRIPTION
incubator/istio 0.2.8-chart2    Istio Helm chart for Kubernetes
incubator/istio 0.2.7-chart7    Istio Helm chart for Kubernetes
incubator/istio 0.2.7-chart6    Istio Helm chart for Kubernetes
incubator/istio 0.2.7-chart5    Istio Helm chart for Kubernetes
incubator/istio 0.2.7-chart4    Istio Helm chart for Kubernetes
incubator/istio 0.2.7-chart3    Istio Helm chart for Kubernetes
incubator/istio 0.2.7-chart2    Istio Helm chart for Kubernetes
incubator/istio 0.2.7-chart1    Istio Helm chart for Kubernetes
incubator/istio 0.2.6-chart1    Istio Helm chart for Kubernetes
incubator/istio 0.1.6-chart6    Istio Helm chart for Kubernetes
incubator/istio 0.1.6-chart5    Istio Helm chart for Kubernetes
incubator/istio 0.1.6-chart4    Istio Helm chart for Kubernetes
incubator/istio 0.1.6-chart3    Istio Helm chart for Kubernetes
incubator/istio 0.1.6-chart2    Istio Helm chart for Kubernetes
incubator/istio 0.1.6-chart1    Istio Helm chart for Kubernetes

具体的には、helm のところで、次のエラーがでる。

Error: file "incubator/istio" not found

現在は、Helm 2.7 だから、もうちょっと待たないといけない。じゃあどうするか?というと、久々に、istioctl をインストールしてみると、ディレクトリに色々インストールされていることに気づいた。下記のコマンドを実行すると、istoctl がインストールされるが、それ以外にもサンプルとかyaml とかがインストールされている。だから、ここの配下の、bin ディレクトリに istioctl が落とされて、そこにパスを通せばクライアントはOK.

  curl -L https://git.io/getLatestIstio | sh -

中身はこんな感じになっている。

$ ls
CONTRIBUTING.md README.md   install     samples
LICENSE     bin     istio.VERSION

この、samples の中にはおなじみのサンプル。そして、install の下に色々yaml が入っている。

$ ls
README.md           istio-one-namespace-auth.yaml
addons              istio-one-namespace.yaml
istio-auth.yaml         istio.yaml
istio-initializer.yaml      mesh-expansion.yaml

ここで、istio.yaml を実行すれば良い。知らない間に色々できているからまた触らないとなー。

kubectl apply -f install/kubernetes/istio.yaml

インストールされたかは、下記のコマンドで確認。具体的には、istio-ingress がしっかりポートまでできいればOK.

$ kubectl get svc -n istio-system
NAME            TYPE           CLUSTER-IP     EXTERNAL-IP     PORT(S)                                                  AGE
istio-egress    ClusterIP      10.0.188.180   <none>          80/TCP                                                   1h
istio-ingress   LoadBalancer   10.0.214.224   40.71.213.252   80:31249/TCP,443:32766/TCP                               1h
istio-mixer     ClusterIP      10.0.128.87    <none>          9091/TCP,9093/TCP,9094/TCP,9102/TCP,9125/UDP,42422/TCP   1h
istio-pilot     ClusterIP      10.0.119.190   <none>          8080/TCP,443/TCP                                         1h

他に、Kubernetes のダッシュボードでどんなものが動いているか見れば理解が深まると思います。

az aks browse -n YOUR_CLUSTER_NAME -g YOUR_RESOURCE_GROUP_NAME

Resource

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1