Azure

Azure Kubernetes Service (AKS)でknativeを動作させる方法

はじめに

AKSでknativeを動作させるためには、公式ドキュメントに加えひと手間が必要となるのでその方法を解説します。
全体の流れは、AKSを起動し、istioのインストール、knativeのインストールというドキュメントと同様ですが途中ドキュメントにない設定が必要となります。
では解説していきます。

knative自体の説明は省きます。
また、検証したバージョンなどに依存関係がある可能もあるので完全に動作する保証はありません。
Azure CLIおよびkubectlがすでに利用できる状態であることを前提にしています。

ドキュメント
https://www.knative.dev/docs/install/knative-with-aks/

AKSの起動

基本的にドキュメントと同様です。

環境の名前を指定します。

リソースグループを作成します。

AKSを起動します。
バージョンは1.11.8です。たぶん1.12系でも大丈夫かと・・・

kubectlで操作できるように設定します。(–overwrite-existing は既存の設定の上書き)

問題なく起動していることを確認します。

istioのインストール

ドキュメント通り進めます。

ラベルを付けます。

起動されているPodを確認します。

RunningもしくはCompletedになるのを待ちます。

knativeのインストール

ドキュメント通り進めます。

以下をApplyしますがそれぞれPodの起動を確認しながら進めます。
そして途中別途servingをApply後作業が発生します。

適用中にエラーが発生した場合は再度同じものを走らせます。

serving を適用します。

Podの起動を確認します。

activatorとautoscalerがエラーになります。これを解消する必要があります。

以下で問題が報告されています。解決方法も記載されています。
詳しくは書かれていませんがistio側に問題があるようです。

Cannot install Knative serving
https://github.com/knative/serving/issues/2878
Requests don’t make it through the activator on AKS
https://github.com/knative/serving/issues/3026
Internal Kubernetes API Calls Blocked by Istio
https://github.com/istio/istio/issues/8696

最初にクラスターのFQDNを取得します。

次にFQDNをもとに以下のマニフェストを作成します。
それぞれ自分の環境に合わせて変更します。

istioの設定が完了したらPodを再度確認します。

すべてRunningしたことを確認します。

buildを展開します。

Podを確認します。

eventingを展開します。

Podを確認します。

eventing-sourcesを展開します。

Podを確認します。

monitoringを展開します。

Podを確認します。

clusterroleを展開します。

以上で全てインストールが完了です。

動作確認

動作確認をドキュメント通り進めます。
https://www.knative.dev/docs/install/getting-started-knative-app/

以下を展開します。

INGRESSGATEWAYを指定します。

Gatewayを指定しSVCを確認します。

IPを取得します。

URLを確認します。

「Hello Go Sample v1!」が帰ってくることを確認します。

以上で動作確認は完了です。

まとめ

Azureでもknativeが動作するようになりました。
今後、knativeを利用したアプリケーションも増えてくることでしょう。
また、Knative Lambda Runtime を利用すると Lambda on Azureなんてことも出来るようになると思います。
楽しみですね。

Related post

  1. AWS

    CloudMonixをちょっとだけ試してみた。

    はじめにくどうです管理運用面倒ですね・・・そこで、楽に…

  2. Azure

    AzureにVulsをインストールしてみる。コピペでどーん。Docker編

    はじめにくどうです。Vulsです。前回と一緒。いろ…

  3. Kubernetes

    fluentd-kubernetes-daemonset のパラメーターについて

    fluentd-kubernetes-daemonsetのパラメーター…

  4. Azure

    トレンドマイクロさんでLTしてきた。

    はじめにくどうです。9/11にトレンドマイクロさんで、LTしてきま…

  5. AWS

    超メモ:cloud-initでgrowpartを利用する場合の注意

    はじめにくどうです。超メモです。これは、ハマリました。だってc…

  1. 未分類

    Project Looking Glass 1.0のリリース(前編)
  2. Azure

    Azure Storage にTime Machine でバックアップをする方法…
  3. Windows

    WebPI4.0を利用してIIS8.0にWordPressをインストールしよう
  4. 未分類

    0X8024d007 Windows Updateができない
  5. 未分類

    Karesansuiのインストール方法
PAGE TOP