ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

この記事ではその設定方法を紹介します オープンデイライト ネットワーク機器を操作し、その使用方法も示します。 Postman そしてシンプルな レストコンフ リクエストに応じて、この機器を制御できます。 ハードウェアは使用しませんが、その代わりに、 Vrnetlab オーバー Ubuntu 20.04, XNUMX, XNUMX LTS.

まずはルーターを例に詳細な設定を説明します ジュニパー vMX 20.1R1.11、そしてそれを設定と比較します Cisco xRV9000 7.0.2.

ページ内容

  • 必要な知識
  • Часть1: 簡単に話し合う OpenDaylight(以下、 ODL), Postman и Vrnetlab そしてなぜそれらが必要なのでしょうか
  • Часть2: バーチャルラボの説明
  • Часть3: 構成、設定 オープンデイライト
  • Часть4: 構成、設定 Vrnetlab
  • Часть5: を使用して Postman 仮想ルータを接続する (ジュニパー vMX)へ ODL
  • Часть6: を使用してルーター構成を取得および変更します Postman и ODL
  • Часть7: Cisco xRV9000 を追加
  • まとめ
  • PS
  • 参考文献

必要な知識

記事がシートにならないように、いくつかの技術的な詳細を省略しました (詳細を読むことができる文献へのリンクも付いています)。

これに関連して、読む前に知っておくとよい (ただし、ほとんど必要ではない) トピックを紹介します。

パート 1: いくつかの理論

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

  • あらゆる種類のネットワークを管理および自動化するオープン SDN プラットフォーム。 Linux Foundationの
  • Java の内部
  • モデル駆動型サービス抽象化レベル (MD-SAL) に基づく
  • YANG モデルを使用して、ネットワーク デバイス用の RESTCONF API を自動的に生成します

ネットワーク管理のメインモジュール。 それを通じて、接続されたデバイスと通信します。 独自の API を通じて管理されます。

OpenDaylight について詳しく読むことができます ここで.

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

  • APIテストツール
  • シンプルで使いやすいインターフェース

私たちの場合、REST リクエストを OpenDaylight API に送信する手段としてこれに興味があります。 もちろん、リクエストを手動で送信することもできますが、Postman ではすべてが非常に明確に見え、私たちの目的に完全に適合します。

掘り下げてみたい人のために: たくさんのトレーニング資料が書かれています (例えば).

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

  • Docker に仮想ルーターをデプロイするためのツール
  • サポート: Cisco XRv、Juniper vMX、Arista vEOS、Nokia VSR など。
  • オープンソース

非常に興味深い楽器ですが、あまり知られていません。 この例では、これを使用して通常の Ubuntu 9000 LTS 上で Juniper vMX と Cisco xRV20.04 を実行します。

詳細については、次の URL で読むことができます。 プロジェクトページ.

パート 2: ラボ

このチュートリアルでは、次のシステムをセットアップします。

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

これはどう動かすのですか

  • ジュニパー vMX 上昇する デッカー コンテナ(手段によって) Vrnetlab) であり、最も一般的な仮想ルーターとして機能します。
  • ODL ルーターに接続して制御できるようになります。
  • Postman 別のマシンで起動され、それを通じてコマンドが送信されます ODL: ルーターの接続/取り外し、設定の変更などを行います。

システムのデバイスの解説

ジュニパー vMX и ODL 安定した動作にはかなりのリソースが必要です。 ひとつだけ vMX 6 Gb の RAM と 4 コアが必要です。 したがって、すべての「ヘビーウェイト」を別のマシンに移動することが決定されました (Heulett Packard Enterprise MicroServer ProLiant Gen8、Ubuntu 20.04 LTS)。 もちろん、ルーターはその上で「飛行」しませんが、小規模な実験には十分なパフォーマンスです。

パート 3: OpenDaylight をセットアップする

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

この記事の執筆時点での ODL の現在のバージョンは Magnesium SR1 です。

1) インストール Java オープン JDK 11 (より詳細なインストールについては、 ここで)

ubuntu:~$ sudo apt install default-jdk

2) 最新のビルドを見つけてダウンロードする ODL 故に
3) ダウンロードしたアーカイブを解凍します。
4) 作成されたディレクトリに移動します
5) 打ち上げ ./bin/karaf

この段階で ODL が開始され、コンソールが表示されます (ポート 8181 は外部からのアクセスに使用されます。これは後で使用します)。

次にインストールします ODLの機能プロトコルで動作するように設計されている ネットコンフ и レストコンフ。 コンソールでこれを行うには ODL 実行します:

opendaylight-user@root> feature:install odl-netconf-topology odl-restconf-all

これが最も簡単なセットアップです。 ODL 完成しました。 (詳細については、を参照してください) ここで).

パート 4: Vrnetlab のセットアップ

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

システムの準備

インストール前 Vrnetlab 動作に必要なパッケージをインストールする必要があります。 そのような デッカー, git, sshパス:

ubuntu:~$ sudo apt update
ubuntu:~$ sudo apt -y install python3-bs4 sshpass make
ubuntu:~$ sudo apt -y install git
ubuntu:~$ sudo apt install -y 
    apt-transport-https ca-certificates 
    curl gnupg-agent software-properties-common
ubuntu:~$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
ubuntu:~$ sudo add-apt-repository 
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu 
   $(lsb_release -cs) 
   stable"
ubuntu:~$ sudo apt update
ubuntu:~$ sudo apt install -y docker-ce docker-ce-cli containerd.io

Vrnetlab のインストール

取り付け用 Vrnetlab github から対応するリポジトリのクローンを作成します。

ubuntu:~$ cd ~
ubuntu:~$ git clone https://github.com/plajjan/vrnetlab.git

ディレクトリに移動 バーチャルネットラボ:

ubuntu:~$ cd ~/vrnetlab

ここには、実行に必要なすべてのスクリプトが表示されます。 ルーターのタイプごとに対応するディレクトリが作成されていることに注意してください。

ubuntu:~/vrnetlab$ ls
CODE_OF_CONDUCT.md  config-engine-lite        openwrt           vr-bgp
CONTRIBUTING.md     csr                       routeros          vr-xcon
LICENSE             git-lfs-repo.sh           sros              vrnetlab.sh
Makefile            makefile-install.include  topology-machine  vrp
README.md           makefile-sanity.include   veos              vsr1000
ci-builder-image    makefile.include          vmx               xrv
common              nxos                      vqfx              xrv9k

ルーターのイメージを作成する

サポートされている各ルーター Vrnetlabには、独自の設定手順があります。 いつ ジュニパー vMX ルーターを使用して .tgz アーカイブをアップロードするだけです (次からダウンロードできます)。 公式サイト) vmx ディレクトリに移動し、コマンドを実行します。 make:

ubuntu:~$ cd ~/vrnetlab/vmx
ubuntu:~$ # Копируем в эту директорию .tgz архив с роутером
ubuntu:~$ sudo make

イメージの構築 vMX 10~20分ほどかかります。 コーヒーを飲みに行く時間だよ!

なぜそんなに長いのか、あなたは尋ねますか?

翻訳 答え この質問の著者:

「これは、VCP (コントロール プレーン) が初めて起動されるときに、vMX で VRR VCP として実行するかどうかを決定する構成ファイルを読み取るためです。以前は、この起動は Docker の起動中に行われていましたが、これは VCP が仮想ルーターが使用可能になる前に常に 5 回再起動されるため、起動時間が長くなります (約 XNUMX 分)。現在、VCP の最初の実行は Docker イメージのビルド中に行われます。また、Docker ビルドは - では実行できないため、 -privileged オプションは、qemu が KVM ハードウェア アクセラレーションなしで動作することを意味し、そのためビルドに非常に長い時間がかかります。このプロセス中に大量のログが出力されるため、少なくとも何が起こっているかを確認できます。長いビルドになると思いますイメージは一度作成すればたくさん起動するので、それほど怖くはありません。」

ルーターの画像が表示されたら、 デッカー:

ubuntu:~$ sudo docker image list
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
vrnetlab/vr-vmx     20.1R1.11           b1b2369b453c        3 weeks ago         4.43GB
debian              stretch             614bb74b620e        7 weeks ago         101MB

vr-vmxコンテナを起動する

次のコマンドから始めます。

ubuntu:~$ sudo docker run -d --privileged --name jun01 b1b2369b453c

次に、アクティブなコンテナに関する情報を確認できます。

ubuntu:~$ sudo docker container list
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS                                                 NAMES
120f882c8712        b1b2369b453c        "/launch.py"        2 minutes ago       Up 2 minutes (unhealthy)   22/tcp, 830/tcp, 5000/tcp, 10000-10099/tcp, 161/udp   jun01

ルーターに接続する

ルーターのネットワーク インターフェイスの IP アドレスは、次のコマンドで取得できます。

ubuntu:~$ sudo docker inspect --format '{{.NetworkSettings.IPAddress}}' jun01
172.17.0.2

デフォルト、 Vrnetlab ルーター上にユーザーを作成します vrnetlab/VR-netlab9.
とつながる ssh:

ubuntu:~$ ssh [email protected]
The authenticity of host '172.17.0.2 (172.17.0.2)' can't be established.
ECDSA key fingerprint is SHA256:g9Sfg/k5qGBTOX96WiCWyoJJO9FxjzXYspRoDPv+C0Y.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '172.17.0.2' (ECDSA) to the list of known hosts.
Password:
--- JUNOS 20.1R1.11 Kernel 64-bit  JNPR-11.0-20200219.fb120e7_buil
vrnetlab> show version
Model: vmx
Junos: 20.1R1.11

これでルーターのセットアップは完了です。

さまざまなベンダーのルーターのインストールに関する推奨事項については、次の Web サイトを参照してください。 ギットハブプロジェクト それぞれのディレクトリにあります。

パート 5: Postman - ルーターを OpenDaylight に接続する

郵便配達員の設置

インストールするには、アプリケーションをダウンロードするだけです 故に.

ルーターをODLに接続する

作成しましょう PUT リクエスト:

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

  1. クエリ文字列:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. リクエスト本文 (「本文」タブ):
    <node xmlns="urn:TBD:params:xml:ns:yang:network-topology">
    <node-id>jun01</node-id>
    <host xmlns="urn:opendaylight:netconf-node-topology">172.17.0.2</host>
    <port xmlns="urn:opendaylight:netconf-node-topology">22</port>
    <username xmlns="urn:opendaylight:netconf-node-topology">vrnetlab</username>
    <password xmlns="urn:opendaylight:netconf-node-topology">VR-netlab9</password>
    <tcp-only xmlns="urn:opendaylight:netconf-node-topology">false</tcp-only>
    <schema-cache-directory xmlns="urn:opendaylight:netconf-node-topology">jun01_cache</schema-cache-directory>
    </node>
  3. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。 これは ODL にアクセスするために必要です。
    ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法
  4. [ヘッダー] タブで、XNUMX つのヘッダーを追加する必要があります。
    • アプリケーション/XMLを受け入れる
    • Content-Type アプリケーション/xml

私たちのリクエストは完了しました。 お送りします。 すべてが正しく構成されていれば、ステータス「201 Created」が返されるはずです。

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

このリクエストは何をするのでしょうか?

内部にノードを作成します ODL アクセスしたい実際のルーターのパラメータを使用します。

xmlns="urn:TBD:params:xml:ns:yang:network-topology"
xmlns="urn:opendaylight:netconf-node-topology"

これらは内部名前空間です XML (XML名前空間) ために ODL それに従ってノードを作成します。

さらに、それぞれ、ルータの名前は、 ノードID、ルーターアドレス - host 等々。

最も興味深いのは最後の行です。 スキーマキャッシュディレクトリ すべてのファイルがダウンロードされるディレクトリを作成します ヤンスキーマ 接続されているルーター。 あなたがそれらを見つけることができます $ODL_ROOT/cache/jun01_cache.

ルーターの接続を確認する

作成しましょう GET リクエスト:

  1. クエリ文字列:
    GET http://10.132.1.202:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/
  2. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。

お送りします。 「200 OK」のステータスと、デバイスでサポートされているすべてのリストを受け取る必要があります ヤンスキーマ:

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

コメント: 後者を確認するには、私の場合、実行後約 10 分待つ必要がありました PUT全部まで ヤンスキーマ に荷降ろしする ODL。 ここまでの作業を行うと、 GET クエリでは次のように表示されます。

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

ルーターを削除する

作成しましょう DELETE リクエスト:

  1. クエリ文字列:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。

パート 6: ルーター構成を変更する

構成の取得

作成しましょう GET リクエスト:

  1. クエリ文字列:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/
  2. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。

お送りします。 ステータス「200 OK」とルーター設定を取得する必要があります。

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

構成を作成する

例として、次の構成を作成して変更してみましょう。

protocols {
    bgp {
        disable;
        shutdown;
    }
}

作成しましょう POST リクエスト:

  1. クエリ文字列:
    POST http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. リクエスト本文 (「本文」タブ):
    <bgp xmlns="http://yang.juniper.net/junos/conf/protocols">
    <disable/>
    <shutdown>
    </shutdown>
    </bgp>
  3. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。
  4. [ヘッダー] タブで、XNUMX つのヘッダーを追加する必要があります。
    • アプリケーション/XMLを受け入れる
    • Content-Type アプリケーション/xml

送信後、「204 No Content」ステータスが表示されるはずです。

構成が変更されたことを確認するには、前のクエリを使用できます。 ただし、たとえば、ルーターに設定されているプロトコルに関する情報のみを表示する別のものを作成します。

作成しましょう GET リクエスト:

  1. クエリ文字列:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。

リクエストを実行すると、次のように表示されます。

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

構成を変更する

BGPプロトコルに関する情報を変更してみましょう。 アクションを実行すると、次のようになります。

protocols {
    bgp {
        disable;
    }
}

作成しましょう PUT リクエスト:

  1. クエリ文字列:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. リクエスト本文 (「本文」タブ):
    <protocols xmlns="http://yang.juniper.net/junos/conf/protocols">
    <bgp>
        <disable/>
    </bgp>
    </protocols>
  3. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。
  4. [ヘッダー] タブで、XNUMX つのヘッダーを追加する必要があります。
    • アプリケーション/XMLを受け入れる
    • Content-Type アプリケーション/xml

以前のものを使用する GET リクエストを実行すると、次のような変化が見られます。

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

設定を削除する

作成しましょう DELETE リクエスト:

  1. クエリ文字列:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。

電話をかけるとき GET プロトコルに関する情報を含むリクエストを送信すると、次のことが表示されます。

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

追加:

構成を変更するために、次の形式でリクエストボディを送信する必要はありません。 XML。 これは次の形式でも実行できます JSONの.

これを行うには、たとえばクエリで PUT 構成を変更するには、リクエスト本文を次のものに置き換えます。

{
    "junos-conf-protocols:protocols": {
        "bgp": {
            "description" : "Changed in postman" 
        }
    }
}

[ヘッダー] タブのヘッダーを次のように変更することを忘れないでください。

  • アプリケーション/jsonを受け入れる
  • Content-Type アプリケーション/json

送信後、次の結果が得られます(答えは次のとおりです) GET リクエスト):

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

パート 7: Cisco xRV9000 の追加

ジュニパー、そうジュニパーについて一体何なのでしょうか? シスコについて話しましょう!
xRV9000 バージョン 7.0.2 (8Gb RAM と 4 コアを必要とする野獣) を見つけました。これは無料で入手できないため、お問い合わせください。 Cisco) - 実行しましょう。

コンテナの実行

Docker コンテナを作成するプロセスは、Juniper と実質的に変わりません。 同様に、ルーターを使用して .qcow2 ファイルをその名前 (この場合は xrv9k) に対応するディレクトリにドロップし、コマンドを実行します。 make docker-image.

数分後、イメージが作成されたことがわかります。

ubuntu:~$ sudo docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
vrnetlab/vr-xrv9k   7.0.2               54debc7973fc        4 hours ago         1.7GB
vrnetlab/vr-vmx     20.1R1.11           b1b2369b453c        4 weeks ago         4.43GB
debian              stretch             614bb74b620e        7 weeks ago         101MB

コンテナを起動します。

ubuntu:~$ sudo docker run -d --privileged --name xrv01 54debc7973fc

しばらくすると、コンテナーが開始されたことがわかります。

ubuntu:~$ sudo docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                 PORTS                                                      NAMES
058c5ecddae3        54debc7973fc        "/launch.py"        4 hours ago         Up 4 hours (healthy)   22/tcp, 830/tcp, 5000-5003/tcp, 10000-10099/tcp, 161/udp   xrv01

SSH 経由で接続します。

ubuntu@ubuntu:~$ ssh [email protected]
Password:

RP/0/RP0/CPU0:ios#show version
Mon Jul  6 12:19:28.036 UTC
Cisco IOS XR Software, Version 7.0.2
Copyright (c) 2013-2020 by Cisco Systems, Inc.

Build Information:
 Built By     : ahoang
 Built On     : Fri Mar 13 22:27:54 PDT 2020
 Built Host   : iox-ucs-029
 Workspace    : /auto/srcarchive15/prod/7.0.2/xrv9k/ws
 Version      : 7.0.2
 Location     : /opt/cisco/XR/packages/
 Label        : 7.0.2

cisco IOS-XRv 9000 () processor
System uptime is 3 hours 22 minutes

ルーターをOpenDaylightに接続する

追加は、vMX とまったく同じ方法で行われます。 名前を変更するだけです。
PUT リクエスト:
ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

しばらくしてから電話する GET すべてが接続されていることを確認するクエリ:
ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

構成を変更する

次の構成をセットアップしましょう。

!
router ospf LAB
 mpls ldp auto-config
!

作成しましょう POST リクエスト:

  1. クエリ文字列:
    POST http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
  2. リクエスト本文 (「本文」タブ):
    {
        "processes": {
            "process": [
                {
                    "process-name": "LAB",
                    "default-vrf": {
                        "process-scope": {
                            "ldp-auto-config": [
                                null
                            ]
                        }
                    }
                }
            ]
        }
    }
  3. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。
  4. [ヘッダー] タブで、XNUMX つのヘッダーを追加する必要があります。
    • アプリケーション/jsonを受け入れる
    • Content-Type アプリケーション/json

実行後、「204 No Content」ステータスが表示されるはずです。

何が得られたかを確認してみましょう。
これを行うために、 GET リクエスト:

  1. クエリ文字列:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
  2. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。

実行後、以下が表示されるはずです。

ネットワーク サービスの自動化、または OpenDaylight、Postman、Vrnetlab を使用して仮想ラボを構築する方法

構成を削除するには、次を使用します DELETE:

  1. クエリ文字列:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
  2. 「認証」タブで、パラメータを設定する必要があります。 Basic Auth ログイン/パスワード: admin/admin。

まとめ

お気づきかもしれませんが、全体として、Cisco と Juniper を OpenDaylight に接続する手順に違いはありません。これにより、創造性の余地が非常に広がります。 すべてのネットワーク コンポーネントの構成管理から始まり、独自のネットワーク ポリシーの作成で終わります。
このチュートリアルでは、OpenDaylight を使用してネットワーク機器を操作する方法の最も簡単な例を示しました。 間違いなく、上記の例のクエリをさらに複雑にして、マウス XNUMX 回のクリックでサービス全体をセットアップすることができます。すべてはあなたの想像力によってのみ制限されます *

継続するには...

PS

突然これらすべてをすでに知っている場合、または逆に、ODL の魂を経験して深く理解した場合は、ODL コントローラでのアプリケーション開発に目を向けることをお勧めします。 始めることができます 故に.

実験成功!

参照

  1. Vrnetlab: KVM と Docker を使用してネットワークをエミュレートする / ブライアン・リンクレター
  2. OpenDaylight Cookbook / Mathieu Lemay、Alexis de Talhouet、他
  3. YANG によるネットワーク プログラマビリティ / Benoit Claise、Loe Clarke、Jan Lindblad
  4. XML の学習、第 XNUMX 版 / Erik T. Ray
  5. 効果的な DevOps / ジェニファー・デイビス、リン・ダニエルズ

出所: habr.com

コメントを追加します