REST API を使用するソフトウェアのアップグレードまたは、ダウングレード

REST API を使用して、ソフトウェアをアップグレードすることができます。

REST API を使用するCisco APICソフトウェアのアップグレードまたは、ダウングレード

手順


ステップ 1

リポジトリに Cisco APIC イメージをダウンロードします。

例:

POST URL: https://<ip address>/api/node/mo/uni/fabric.xml
<firmwareRepoP>
	<firmwareOSource name="APIC_Image_download" proto="http" url="http://<ip address>/<ver-no>"/>
</firmwareRepoP>

ステップ 2

コントローラの目的のバージョンを設定するには、次のポリシーを POST 送信します。

例:

POST URL: https://<ip address>/api/node/mo/uni/controller.xml
<firmwareCtrlrFwP
    version="<ver-no>"
    ignoreCompat="true">
</firmwareCtrlrFwP>

ステップ 3

コントローラのアップグレードをただちに起動する次のポリシーを POST 送信します。

例:

POST URL : https://<ip address>/api/node/mo/uni/controller.xml
<maintCtrlrMaintP
    adminState="up" adminSt="triggered">
</maintCtrlrMaintP>

REST API を使用してスイッチをソフトウェアのアップグレードまたは、ダウングレード

手順


ステップ 1

リポジトリにスイッチ イメージをダウンロードします。

例:

POST URL: https://<ip address>/api/node/mo/uni/fabric.xml
<firmwareRepoP>
	<firmwareOSource name="Switch_Image_download" proto="http" url="http://<ip address>/<ver-no>"/>
</firmwareRepoP>

ステップ 2

ソフトウェア リリースに応じて、必要なノード ID を持つファームウェア グループとメンテナンス グループを作成するための適切なポリシーを投稿します。

  • リリース 4.0(1) 以前のリリースの場合、次のポリシーを、POST 送信することにより、ノード ID が 101、102、103、104 の スイッチから構成されるファームウェア グループを作成し、ノード ID 101、102、103、104 によるメンテナンス グループを作成します。

    POST URL : https://<ip address>/api/node/mo/uni/fabric.xml
    <fabricInst>
    <firmwareFwP
        name="AllswitchesFwP"
        version="<ver-no>"
        ignoreCompat="true">
    </firmwareFwP>
    
    <firmwareFwGrp
        name="AllswitchesFwGrp" >
            <fabricNodeBlk name="Blk101"
                from_="101" to_="101">
            </fabricNodeBlk>
            <fabricNodeBlk name="Blk102"
                from_="102" to_="102">
            </fabricNodeBlk>
            <fabricNodeBlk name="Blk103"
                from_="103" to_="103">
            </fabricNodeBlk>
            <fabricNodeBlk name="Blk104"
                from_="104" to_="104">
            </fabricNodeBlk>
    <firmwareRsFwgrpp
        tnFirmwareFwPName="AllswitchesFwP">
    </firmwareRsFwgrpp>
    </firmwareFwGrp>
    
    <maintMaintP
        name="AllswitchesMaintP"
        runMode="pauseOnlyOnFailures" >
    </maintMaintP>
    
    <maintMaintGrp
        name="AllswitchesMaintGrp">
            <fabricNodeBlk name="Blk101"
                from_="101" to_="101">
            </fabricNodeBlk>
            <fabricNodeBlk name="Blk102"
                from_="102" to_="102">
            </fabricNodeBlk>
            <fabricNodeBlk name="Blk103"
                from_="103" to_="103">
            </fabricNodeBlk>
            <fabricNodeBlk name="Blk104"
                from_="104" to_="104">
            </fabricNodeBlk>
    <maintRsMgrpp
        tnMaintMaintPName="AllswitchesMaintP">
    </maintRsMgrpp>
    </maintMaintGrp>
    </fabricInst>
  • リリース 4.0(1) 以降のリリースの場合、次のポリシーを、POST 送信することにより、ノード ID が 101、102、103、104 の スイッチから構成されるファームウェア グループを作成し、ノード ID 101、102、103、104 によるメンテナンス グループを作成します。

    POST URL : https://<ip address>/api/node/mo/uni/fabric.xml
    <fabricInst>   
           <maintMaintP
                  version="<ver-no>"
                  name="AllswitchesFwP"
                  runMode="pauseOnlyOnFailures">
           </maintMaintP>
           <maintMaintGrp name="AllswitchesMaintGrp">
                  <fabricNodeBlk name="Blk101" from_="101" to_="101">
                  </fabricNodeBlk>
                  <fabricNodeBlk name="Blk102" from_="102" to_="102">
                  </fabricNodeBlk>
                  <fabricNodeBlk name="Blk103" from_="103" to_="103">
                  </fabricNodeBlk>
                  <fabricNodeBlk name="Blk104" from_="104" to_="104">
                  </fabricNodeBlk>
                  <maintRsMgrpp tnMaintMaintPName="AllswitchesMaintGrp">
                  </maintRsMgrpp>
           </maintMaintGrp>
    </fabricInst>
    
  • リリース 5.1(1) 以降のリリースの場合、次のポリシーを、POST 送信することにより、ノード ID が 101、102、103、104 の スイッチから構成されるファームウェア グループを作成し、ノード ID 101、102、103、104 によるメンテナンス グループを作成します。

    • アップグレード前の検証ツール(APIC)

      APIC 事前検証の場合
      GET URL - https://<ip address>/mqapi2/deployment.query.json?mode=validateCtrlrMaintP&targetVersion=
      b. 
      
      スイッチの事前検証用
      POST URL - https://<ip address>/mqapi2/deployment.query.xml?mode=validateSwitchMaintPAsync
      <syntheticMaintPSwitchDetails maintPName="
      
    • リーフおよびスパイン スイッチへのイメージの事前ダウンロード
      POST URL - https://<ip address>/api/node/mo/uni/fabric.xml
                          <fabricInst>
                      <maintMaintP downloadSt="triggered" name="
                      </maintMaintP>
                      <maintMaintGrp name="
                             <fabricNodeBlk name="blk102" from_="102" to_="102">
                             </fabricNodeBlk>
                             <maintRsMgrpp  tnMaintMaintPName="
                             </maintRsMgrpp>
                      </maintMaintGrp>
              </fabricInst>
      
    • グレースフルアップグレード
      POST URL - https://<ip address>/api/node/mo/uni/fabric.xml
                          <fabricInst>
                      <maintMaintP downloadSt="triggered" name="
                      </maintMaintP>
                      <maintMaintGrp name="
                             <fabricNodeBlk name="blk102" from_="102" to_="102">
                             </fabricNodeBlk>
                             <maintRsMgrpp  tnMaintMaintPName="
                             </maintRsMgrpp>
                      </maintMaintGrp>
              </fabricInst>

ステップ 3

すべてのスイッチのアップグレードをただちにトリガする次のポリシーを POST します。

例:

POST URL : https://<ip address>/api/node/mo/uni/fabric.xml
<maintMaintP
    name="AllswitchesMaintP" adminSt="triggered">
</maintMaintP>
アップグレード中にコントローラ クラスタを使用できるように、Cisco APIC は順番にアップグレードされます。

REST API を使用したカタログ ソフトウェア バージョンのアップグレードまたは、ダウングレード

通常、カタログ イメージは、Cisco APIC イメージのアップグレードまたは、ダウングレード時にアップグレードまたは、ダウングレードされます。ただし、管理者がカタログ イメージをアップグレードしなければならない場合もあります。

手順


カタログ イメージをアップグレードします。

例:

http://trunk6-ifc1/api/node/mo/uni/fabric.xml
<firmwareCatFwP
    version=“catalog-1.0(1e)”  ignoreCompat=“yes” />
</firmwareCatFwP>

API を使用したファームウェア バージョンおよびアップグレード ステータスの確認

確認内容 URL の例

コントローラで現在実行中のファームウェアのバージョン

GET URL:https://<ip address>/api/node/class/firmwareCtrlrRunning.xml

スイッチで現在実行中のファームウェアのバージョン

GET URL:https://<ip address>/api/node/class/firmwareRunning.xml

コントローラとスイッチのアップグレードの状態

GET URL:https://<ip address>/api/node/class/maintUpgJob.xml

アップグレードの例

コントローラ アップグレードの例

Cisco APIC イメージをリポジトリにダウンロードする

POST URL: http://trunk6-ifc1/api/node/mo/uni/fabric.xml
<firmwareRepoP>
	<firmwareOSource name="APIC_Image_download" proto="http" url="http://172.21.158.190/aci-apic-dk9.1.0.0.72.iso"/>
</firmwareRepoP>

スイッチ イメージをリポジトリにダウンロードする

POST URL: http://trunk6-ifc1/api/node/mo/uni/fabric.xml
<firmwareRepoP>
	<firmwareOSource name="Switch_Image_download" proto="http" url="http://172.21.158.190/aci-n9000-dk9.11.0.0.775.bin"/>
</firmwareRepoP>

コントローラ ファームウェア ポリシー:コントローラの目的のバージョン設定

POST URL: http://trunk6-ifc1/api/node/mo/uni/controller.xml
<firmwareCtrlrFwP
   	 version="apic-1.0(0.72)"
   	 ignoreCompat="true">
</firmwareCtrlrFwP>

コントローラのメンテナンス ポリシー:コントローラのアップグレードのトリガを今すぐ開始する

POST URL: http://trunk6-ifc1/api/node/mo/uni/controller.xml
<maintCtrlrMaintP
	adminState="up" adminSt="triggered">
</maintCtrlrMaintP>

コントローラで現在実行中のバージョンを取得する

(all controllers) GET URL : http://trunk6-ifc1.insieme.local/api/node/class/firmwareCtrlrRunning.xml
(a controller) GET URL : http://trunk6-ifc1.insieme.local/api/node/mo/topology/pod-1/node-1/sys/ctrlrfwstatuscont/ctrlrrunning.xml

コントローラのアップグレードのステータスを取得する

(all controllers) GET URL : http://trunk6-ifc1.insieme.local/api/node/class/maintUpgJob.xml
(a controllers) GET URL : http://trunk6-ifc1.insieme.local/api/node/mo/topology/pod-1/node-1/sys/ctrlrfwstatuscont/upgjob.xml

スイッチのアップグレード例

スイッチのファームウェア グループ: スイッチで同じファームウェア ポリシー グループ

POST URL: http://trunk6-ifc1/api/node/mo/uni/fabric.xml
<firmwareFwGrp name="AllswitchesFwGrp" >
        <fabricNodeBlk name="Blk101to104” from_="101" to_="104” />
       <firmwareRsFwgrpp tnFirmwareFwPName="AllswitchesFwP” />
</firmwareFwGrp>

スイッチのファームウェアのファームウェア ポリシー: セットが必要なバージョン

POST URL: http://trunk6-ifc1/api/node/mo/uni/fabric.xml
<firmwareFwP name="AllswitchesFwP” version="n9000-11.0(0.775)” ignoreCompat="true">
</firmwareFwP>

スイッチのメンテナンス グループ: スイッチで同じメンテナンス ポリシー グループ

POST URL: http://trunk6-ifc1/api/node/mo/uni/fabric.xml
<maintMaintGrp name="AllswitchesMaintGrp">
        <fabricNodeBlk name="Blk101to104” from_="101" to_="104” />
        <maintRsMgrpp tnMaintMaintPName="AllswitchesMaintP” />
</maintMaintGrp>

スイッチのメンテナンス ポリシー: maitenance のセットアップのスケジュール

POST URL: http://trunk6-ifc1/api/node/mo/uni/fabric.xml
<maintMaintP name="AllswitchesMaintP” runMode="pauseOnlyOnFailures" >
</maintMaintP>

今すぐ開始: メンテナンス グループでトリガーのアップグレード

POST URL: http://trunk6-ifc1/api/node/mo/uni/fabric.xml
<maintMaintP name="AllswitchesMaintP" adminSt="triggered">
</maintMaintP>

スイッチで現在実行中のバージョンを取得します。

(all switches) GET UR : http://trunk6-ifc1.insieme.local/api/node/class/firmwareRunning.xml
(a switch) GET URL: http://trunk6-ifc1.insieme.local/api/node/mo/topology/pod-1/node-101/sys/fwstatuscont/running.xml

スイッチのアップグレードのステータスを取得します。

(all switches) GET URL: http://trunk6-ifc1.insieme.local/api/node/class/maintUpgJob.xml
(a switch) GET URL: http://trunk6-ifc1.insieme.local/api/node/mo/topology/pod-1/node-101/sys/fwstatuscont/upgjob.xml