内容

はじめに

背景説明

ラボ導入ツールの主な利点

SD-WANのユースケースのためのCML要件

SD-WANラボ導入ツールの詳細

トラブルシュート

Pythonバージョンの不一致

はじめに

この記事では、オープンソースのLab Deployment Toolを使用して、Catalyst SD-WANファブリックをCisco Modeling Labs(CML)で自動的に作成する方法について説明します。

背景説明

SD-WAN Lab Deployment Toolは、CMLでのSD-WANファブリックの作成を自動化し、SD-WANエッジルータのファブリックへの追加、証明書のインストール、その他のオンボーディングタスクなど、多くの手順を大幅に簡素化します。

SD-WAN Lab Toolを使用する前は、SD-WANコントローラとエッジルータをCMLに手動で導入する必要がありました。詳細については、を参照してください。

現在では、プロセス全体が完全に自動化され、数時間ではなく数分で完了します。このYouTubeビデオで、ラボツールの短いデモをご覧ください。

ラボ導入ツールの主な利点

- SD-WANコントローラの完全自動作成

- SD-WANエッジルータを使用した複数のブランチを1つの自動タスクで追加

- 2つのSD-WANトランスポート：インターネットおよびMPLS

- WANリンクエミュレーションとして遅延を導入する機能

- バックアップ/リストア機能

- GitHubのオープンソースリポジトリ

- SD-WANラボツールのシスコ社内バージョンは、営業、CX（TACおよびPS）、BUなどのさまざまな組織で作成されて以来、900回以上使用されています。詳細については、シスコ社内バージョンを参照してください。

SD-WANのユースケースのためのCML要件

- CMLは、オンプレミスのサーバー（ベアメタルまたはESXi上のVM）またはAWSにデプロイできます。

- クラスタリングをサポートして容量を増やす

- シスコ社内ユーザの場合：ライセンスを取得できます。

- 外部のお客様の場合：こちらから異なるライセンスレベルを利用できます。

- インストールガイド（内部ユーザと外部ユーザで同じ）はここにあります。

- SD-WANシミュレーションの推奨オプション：少数のサーバを使用したオンプレミスのCMLクラスタ。

SD-WANラボ導入ツールの詳細

- このツールは現在Linux/MacOSシステムでサポートされています。依存関係パッケージ(pyats)はこれらのシステムでのみ使用できるためです。

- Windowsでこのツールを実行するには、Linux VM/コンテナまたはLinux on Windows(WSLを使用)が必要です。すべての依存関係はpyproject.tomlファイルで確認できます：https://github.com/cisco-open/sdwan-lab-deployment-tool/blob/main/pyproject.toml

- GitHubのインストール手順、使用例、ソースコードをすべて参照してください。

- ラボツールを実行しているホストとCMLサーバ/クラスタ間のネットワーク接続が十分な速度であることを確認します。これは、SD-WANコントローラのソフトウェアイメージのアップロード中に役立ちます。

- SD-WAN Lab Deployment Toolに関するご質問cml-sdwan-lab-tool@external.cisco.com 宛に英文による電子メールを送信してください。

トラブルシュート

Pythonバージョンの不一致

2024年4月末現在、ラボツールにはPythonバージョン3.9が必要です。より新しいバージョンのPythonを使用している場合、インストールが失敗する可能性があります。Python 3.12のサポートはまもなく開始されます。

Pythonのバージョンが正しくないためにインストールが失敗した場合の例：

(venv) [csdwan] $ pip install --upgrade catalyst-sdwan-lab

Collecting catalyst-sdwan-lab

Downloading catalyst_sdwan_lab-2.0.9-py3-none-any.whl.metadata (20 kB)

...

Downloading catalyst_sdwan_lab-2.0.6-py3-none-any.whl.metadata (20 kB)

ERROR: Cannot install catalyst-sdwan-lab==2.0.6, catalyst-sdwan-lab==2.0.7, catalyst-sdwan-lab==2.0.8 and catalyst-sdwan-lab==2.0.9 because these package versions have conflicting dependencies.

The conflict is caused by:

catalyst-sdwan-lab 2.0.9 depends on pyats<24.0 and >=23.1

catalyst-sdwan-lab 2.0.8 depends on pyats<24.0 and >=23.1

catalyst-sdwan-lab 2.0.7 depends on pyats<24.0 and >=23.1

catalyst-sdwan-lab 2.0.6 depends on pyats<24.0 and >=23.1

To fix this you could try to:

1. loosen the range of package versions you've specified

2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts

(venv) [csdwan] $

この問題を解決するには、環境変数の3.12の前にPython 3.9を置き、pyenvを使用して異なるバージョン間で切り替えるか(「pyenv global 3.9」)、3.12から3.9にダウングレードします。