GreenDoc - SUSEAI Demo Lab について
GreenDoc は、K3s と Rancher Fleet を使ってローカルに SUSE AI スタックを構築するデモラボ向けの手順書です。Kubernetes MCP サーバーの例と、Open-WebUI から接続してチャットでツールを呼び出す方法を説明します。
主な機能
- 01K3s クラスターのセットアップ
- 02Rancher Fleet によるデプロイ
- 03SUSE AI スタックの設定
- 04MCPO サーバーのデプロイ
- 05Open-WebUI からのツール接続
活用シーン
- 01ローカル SUSE AI デモ環境の構築
- 02Fleet を使ったスタックのデプロイ
- 03Open-WebUI のチャットで Kubernetes ツールを試用
MCP 対応
デモでは MCPO と Kubernetes MCP サーバーをデプロイし、Open-WebUI をサービスに接続してツールを呼び出す方法を示します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
GreenDoc - SUSEAI Demo Lab
作者: Alessandro Festa
改訂番号: v1.0
SUSE AI デモ環境は、特定のユースケースにおいて SUSE AI の機能を実演するためのローカルラボの実装方法を説明する、シンプルなドキュメントです。 SUSE AI について詳しく知りたい場合は、http://suse.com/products/ai をご覧ください。
このリポジトリのアプリケーションは SUSE Application Collection https://apps.rancher.io/ から取得しています。AppCo の詳細については、ドキュメント https://docs.apps.rancher.io/ をご確認ください。
この GreenDoc は、次の構成になっています。
- クラスターのセットアップ
- Rancher Fleet のセットアップ(GreenDoc の自動化)
- GreenDoc の設定
- GreenDoc のデプロイ
- デモ
クラスターのセットアップ
この GreenDoc では、K3s を使用します。
環境で使用する名前空間を作成する
kubectl create namespace cert-manager
kubectl create namespace suseai
名前空間用のシークレットを作成する
kubectl create secret docker-registry application-collection \
--docker-server=dp.apps.rancher.io \
--docker-username=<your registered account on appco> \
--docker-password=<INSERT YOUR TOKEN FROM APPCO> \
-n cert-manager
kubectl create secret docker-registry application-collection \
--docker-server=dp.apps.rancher.io \
--docker-username=<your registered account on appco>\
--docker-password=<INSERT YOUR TOKEN FROM APPCO> \
-n suseai
kubectl create secret docker-registry application-collection \
--docker-server=dp.apps.rancher.io \
--docker-username=<your registered account on appco> \
--docker-password=<INSERT YOUR TOKEN FROM APPCO> \
-n fleet-local
コンポーネントに Rancher Application Collection を使用する
cert-manager の Helm チャートをデプロイする
helm upgrade --install cert-manager \
oci://dp.apps.rancher.io/charts/cert-manager \
--version 1.17.1 \
-n cert-manager \
--create-namespace \
--set crds.enabled=true \
--set "global.imagePullSecrets[0].name"="application-collection"
Rancher Fleet をデプロイする
helm -n cattle-fleet-system install --create-namespace --wait \
fleet-crd https://github.com/rancher/fleet/releases/download/v0.12.0/fleet-crd-0.12.0.tgz
helm -n cattle-fleet-system install --create-namespace --wait \
fleet https://github.com/rancher/fleet/releases/download/v0.12.0/fleet-0.12.0.tgz
ここまでで、GreenDoc のレシピを取得する準備が整いました。
Rancher Fleet で最小構成の SUSEAI スタックをデプロイする
最小限の GitHub 設定を作成し、suseai.yaml として保存しましょう。
apiVersion: fleet.cattle.io/v1alpha1
kind: GitRepo
metadata:
name: suseai
# This namespace is special and auto-wired to deploy to the local cluster
namespace: fleet-local
spec:
repo: https://github.com/alessandro-festa/bundles
helmSecretName: basic-auth-secret
ociRegistry:
authSecretName: application-collection
branch: main
paths:
- k8s-assistant
基本認証用の汎用シークレットを追加します。
kubectl create secret generic basic-auth-secret \--from-literal=username=<your registered account on appco> \
--from-literal=password=<INSERT YOUR TOKEN FROM APPCO> \
-n fleet-local
次に、kubectl で設定を実行します。
kubectl apply -f rancher-config.yaml
SUSE AI スタックと mcpo サーバーがインストールされているはずです。 例として、https://github.com/manusa/kubernetes-mcp-server の kubernetes MCP サーバーを使用しました。
確認してみましょう!
MCPO サーバーの確認
ブラウザーを開いて http://localhost:8000 にアクセスすると、以下のような画像が表示されます。

kubernetes をクリックすると、同様のページが表示されます。

認証して、簡単なクエリを試してみましょう。
Authorize ボタンをクリックし、トークンとして top-secret を入力します。

次に、ノード情報の取得を試してみましょう。try out オプションを使って、結果を確認します。

動作しています!
Open-WebUI を設定する
次に、MCP サーバーを使用するよう OWUI を設定します。 OWUI の最新リリースには、「Tools Servers」という新機能があります。
管理者設定を開きましょう。

Tools に移動します。

MCP サーバーへの接続を追加します。
`http://mcp-service.suseai.svc.cluster.local:8000/kubernetes``

すべて正常に進めば、成功メッセージが表示されます。

次に、ツールを使用するモデルを設定します。
まず、models に移動し、ペンのアイコンから使用するモデルを選択します。次に、以下の画像のとおり、2 つのパラメーターを確認します。

Function Calling を `native`` に切り替えます。

最後に、`tool`` を選択します。

保存して試してみましょう……チャットにツールが表示されるはずです(画像の数字 1 が見えますか?)。

「suseai 名前空間のポッドを一覧表示して」のような質問をしてみましょう。
ツールを使わない場合と使う場合の違いを確認してください!


コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。