日本語フォーラム

 View Only
last person joined: 9 days ago 

HPE Aruba Networking のソリューション、ネットワークマーケットに関する日本語ディスカッションフォーラム
Expand all | Collapse all

[API] APのProvisioningをAPIを使って簡単にしちゃおう

This thread has been viewed 32 times
  • 1.  [API] APのProvisioningをAPIを使って簡単にしちゃおう

    EMPLOYEE
    Posted Dec 25, 2021 07:02 PM
    Mobility Controller はAOS8 からほとんどの設定をAPIで行うことができるようになっています。
    APの起動時にControllerに自動接続させる仕組みは、ADP、DHCP Option 43、DNSなどいくつかありますが、
    Controllerに接続後に、大量のAPのProvisioning(AP Name, AP Group, 固定IPなどの設定)を行うのは何気に手間です。
    もちろん、キッティング時にコンソールアクセスし、apbootで1つずつ設定すればいいのですが、
    せっかくAPIでProvisioningできるので、少し試してみました。
    以下の手順は、APがControllerに接続が完了していることを前提とした手順になります。

    オフィシャルな手順はこちらのDeveloper Hubにもあるのでご参照下さい。
    またAOS8のAPIの基本的な使い方は今回は省略します。(またどこかで記載するようにします)
    こちらもDeveloper HubにGetting Started with AOS8 APIがありますのでご参照下さい。
    (必要な手順も最初にControllerに認証し、UIDARUBAのkeyを取得する程度です、後述のサンプルにはこの点も記載しています)

    1: AP bootinfo を読み込む
    API: POST /object/prov_ap_read_bootinfo
    URL: https://:4343/v1/configuration/object/prov_ap_read_bootinfo?config_path=%2Fmd&UIDARUBA=XXXX
    Payload :
    {
        "wired-mac":"ff:ff:ff:ff:ff:ff"
    }​

    まず、設定対象のAPの情報を読み込みます。
    PayloadにはJSONでAPのMACアドレスを指定して読み込ませます。

    2. APの設定パラメータを読み込む
    API: POST /object/ap_prov
    URL: https://:4343/v1/configuration/object/ap_prov?config_path=%2Fmd&UIDARUBA=XXXX
    Payload:

    {
      "ap_name": {
        "ap-name": "string"
      },
      "ap_group": {
        "ap-group": "string"
      },
      "gatewayip": {
        "gateway": "string"
      },
      "netmask": {
        "netmask": "string"
      },
      "ipaddr": {
        "ipaddr": "string"
      }
    }​

    APに設定したいパラメータをJSONで指定し、コントローラに読み込みます。
    ipaddrなどパラメータが少し特殊なものもあるので注意して下さい。
    詳細は、ControllerのSwagger(https://<controller-ip>:4343/api/)にアクセスし、AP Provisioning > /object/ap_prov のMedel Schemaを確認して下さい。
    ap_name, ap-name などトリッキーな点もあるので必ずSchemaを確認するようにして下さい。


    3. APのReprovisioning
    API: POST /object/ap_reprovision
    URL: https://:4343/v1/configuration/object/ap_reprovision?config_path=%2Fmd&UIDARUBA=xxxx
    Payload:

    {
        "wired-mac":"ff:ff:ff:ff:ff:ff"
    }​

    最後に、設定したパラメータをAPに流し込みます。

    あとは、上記手順をスクリプトでAP全てに自動実行するようにしておけば、
    大量のAPの設定もとても簡単になります。

    こちらに簡単なサンプルスクリプトがあります。 AP Provisioning Script Sample
    このサンプルでは、CSVにAPのMACアドレスとパラメータを指定しておき、それを読み込む形式にしています。
    あくまでサンプルなので、自己責任での利用をお願いします。



    ------------------------------
    Keita Shimono,
    Aruba Japan SE Manager & Airheads Leader
    ------------------------------


  • 2.  RE: [API] APのProvisioningをAPIを使って簡単にしちゃおう

    Posted Sep 21, 2022 01:37 AM
    いつもお世話になってます。このAPIツールの使い方が記載されたような公式のマニュアルやガイド等はないのでしょうか?
    (どの項目がどの設定箇所にあたるか等)


  • 3.  RE: [API] APのProvisioningをAPIを使って簡単にしちゃおう

    EMPLOYEE
    Posted Sep 21, 2022 02:48 AM

    残念ながら、どの項目がどの設定箇所にあたるかのマッピングのようなものは無いので、
    Swaggerの一覧とコントローラのプロファイルなどで見当をつけて頂くことになります。

    また、製品のAPI関連の情報は、以下のDeveloper Hubにまとまっています。
    https://devhub.arubanetworks.com/home

    AOS8は上記からたどった以下にあります。
    https://developer.arubanetworks.com/aruba-aos/docs

    その他には、AOS8のマニュアルのAPI GuideをASPからアクセスすることが可能です。

    https://www.arubanetworks.com/techdocs/ArubaOS-8.x-Books/810/ArubaOS-8.10.0.0-API-Guide.pdf



    ------------------------------
    Keita Shimono,
    Aruba Japan SE Manager & Airheads Leader
    ------------------------------