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. AWS

    homebrew でクラウド各社のcliをインストールする方法

    MacbookをセットアップしているのでメモAzure CLI…

  2. Azure

    elasticsearch + kibana を5分ぐらいで構築する。

    くどうです。Azure上にelasticsearchを5分で構…

  3. Azure

    Azure Application Gateway にフロントポートを追加する。

    はじめにくどうです前回の記事では、httpsポートでAzu…

  4. AWS

    Azure仮想マシンがやってるポートフォワーディングをAWSのELBでやってみる。

    くどうです。小ネタです。Azureでは便利なことに仮想マシンを新…

  5. Azure

    WindowsコンテナでWebサーバー!IISだって動きます!

    はじめにくどうです。前回のコンテナの基本的な扱いの続きです。今回は…

  1. Azure

    Azure Front Door でカスタムホストを設定しSSLの設定をしつつG…
  2. 未分類

    オープンソースカンファレンス2007 Hokkaido
  3. AWS

    パソコン同士をVPNで接続する方法(お気に入りツールの紹介)
  4. その他

    JMeterでタコ殴りにしたけどエラーが出る場合の対処。とりあえずポートを増やせ…
  5. Azure

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