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なんてことも出来るようになると思います。
楽しみですね。

関連記事

  1. Azure

    Microsoft Azure でDockerはじめちゃいますか?

    じゅんくどうです。本投稿は「Azure Advent Calende…

  2. Azure

    Azureポータルの地味なキーボードショートカット

    Azureポータルの地味なキーボードショートカットA:タスクの…

  3. Azure

    Azure Backup V2 !これで仮想マシンのバックアップは大丈夫。

    はじめにくどうですやっと、リソースマネージャーでも仮想マシ…

  4. Azure

    Deep Security User Night #3 に参加してきました。

    はじめにくどうですDeep Security User N…

  5. Azure

    仮想マシンのコア数制限について。

    コア数の制限くどうです。ちょっとハマったのでメモ。…

  6. AWS

    Azure ADとAWS Directory Serviceで同期してみよう。

    はじめにどうも、くどうです。今回は、Microsoft Azure…

  1. Azure

    Azure Cloud Shell のユーザーを確認してみる。それでもrootが…
  2. 未分類

    Linux Kernel 2.6.17 – 2.6.24.1 vms…
  3. Azure

    AKS ( Kubernetes ) のPod からログをFilebeat を使…
  4. Azure

    Azure で Kubernetes を 複数の可用性セットとLoad Bala…
  5. Azure

    Azure Functions でDatadog のWebhook インテグレー…
PAGE TOP