はじめに
この記事では、オープンソースのLab Deployment Toolを使用して、Cisco Modeling Labs(CML)でCatalyst SD-WANファブリックを自動的に作成する方法について説明します。
背景説明
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ラボ導入ツールの詳細
トラブルシュート
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にダウングレードします。