透過執行 CLI 命令探索網路裝置

您可以在
VMware Aria Operations for Networks
收集器 CLI 中產生並執行指令碼,以自動探索網路中的裝置,並將已探索裝置的詳細資料匯出為
.csv
檔案。
在未來版本的
VMware Aria Operations for Networks
中,將棄用透過執行 CLI 命令探索網路裝置。
您可以透過執行 CLI 命令探索以下裝置:
  • Cisco 交換器
  • Arista 交換器
  • Juniper 交換器
  • Dell 交換器
  • F5 Big-IP
  • Brocade 交換器
  • Palo Alto 網路
  • Check Point 防火牆
  • Cisco ASA
  1. 支援
    使用者身分登入
    VMware Aria Operations for Networks
    收集器 CLI。
    使用安全通訊端 Shell (SSH) 用戶端提供您的 CLI 登入認證。
  2. 切換到
    Ubuntu
    使用者。
    ub
  3. 執行以下命令,以在目前的工作目錄中產生 Python 指令碼。
    java -cp "/home/ubuntu/build-target/common-utils/tools-0.001-SNAPSHOT.jar" com.vnera.tools.DiscoveredDevicesTool -w script.py
    可以使用此指令碼執行網路探索。
  4. 執行以下命令,以在目前的工作目錄中產生範例認證檔案。
    java -cp "/home/ubuntu/build-target/common-utils/tools-0.001-SNAPSHOT.jar" com.vnera.tools.DiscoveredDevicesTool -s sample_creds.csv
    您可以使用範例認證檔案存取網路中的裝置。
    以下是範例認證檔案的一個範例:
    "credential_name","connection_type", "username", "password", "snmp_version", "community_string", "snmp_user", "snmp_context", "snmp_auth_type", "snmp_auth_password", "snmp_privacy_type", "snmp_privacy_password" "SSH1","SSH","admin","admin","","","","","","","","" "API1","API","admin","admin","","","","","","","","" "SNMP1","SNMP","","","v2c","community","","","","","","" "SNMP2","SNMP","","","v3","","user","context","authtype","authpass","privacytype","privacypass"
  5. 使用 SSH、SNMP v2c、SNMPv3 或 API 認證更新範例認證檔案。
    可以在檔案中輸入多個認證,只需為每個項目提供唯一的
    credential_name
    即可。
    若要探索 F5 Big-IP 負載平衡器,必須輸入 API 認證。
    無法使用 API 認證探索其他網路裝置。
  6. 在 Python 指令碼上執行
    help
    命令,以檢視該指令碼支援的選項。
    python3 script.py --help
    可以使用這些選項對您的認證進行驗證並執行網路探索。
    選項
    說明
    --host
    VMware Aria Operations for Networks
    平台節點 1 的 IP 位址。
    --deployment type
    要對其執行此作業的部署類型。接受的值為
    onprem
    saas
    預設值為
    onprem
    --username
    平台使用者的使用者名稱。
    必須始終將使用者名稱用單引號括起來。
    --password
    平台使用者的密碼。
    必須始終將密碼用單引號括起來。
    --domain_type
    用於對使用者認證進行驗證的網域類型。接受的值為
    LOCAL
    LDAP
    --domain_value
    如果網域類型為 LDAP,請提供您的 LDAP 網域名稱。
    --api_token
    用於對
    VMware Aria Operations for Networks
    認證進行驗證的 API 重新整理 Token。
    --cloud_location
    資料中心的位置。接受的值為
    US
    UK
    JP
    AU
    DE
    預設值為
    US
    --cloud_api_url
    VMware Aria Operations for Networks
    的 URL。此選項將覆寫
    --cloud_location
    選項中提供的值。
    --proxy_ips
    VMware Aria Operations for Networks
    收集器的 IP 位址。
    --credentials_file_path
    包含 SSH、SNMP 或 API 認證的認證檔案的位置。
    --network_ranges
    要對其執行網路探索的 IP 位址範圍。您可以採用網路範圍格式或 CIDR 範圍格式指定 IP 位址。
    --seeds
    要開始網路探索程序的網路裝置的種子 IP 位址或種子 FQDN。
    執行網路探索指令碼時,將以指定的種子 IP 位址作為起點開始網路探索程序。
    根據 CDP 和 LLDP 等行業通訊協定探索每個種子的芳鄰裝置。然後,將每個探索的裝置用作種子,以遞迴方式探索網路中的其他裝置,直到探索網路中的所有裝置或達到種子深度。
    --seed_depth
    探索網路裝置的深度。
    種子深度指示必須從種子 IP 位址探索的芳鄰的層級數。依預設,種子的深度為 0;種子的芳鄰的深度為 1:種子的芳鄰的芳鄰的深度為 2,依此類推。
    如果輸入的種子深度為 2,則可以探索種子的裝置、種子的芳鄰和種子的芳鄰的芳鄰。
    --ignored_list
    要從網路探索中排除的 IP 位址清單。您可以採用以下格式指定 IP 位址:
    • 個別 IP 位址
    • FQDN
    • 網路範圍
    • CIDR 範圍
    --download_discovered_devices
    用於下載之前探索的裝置的選項。輸入
    True
    False
    --out
    成功網路探索的 CSV 輸出檔案的名稱。輸出檔案的預設名稱為
    auto_gen_discovered_devices.csv
    --clear_all
    用於清除探索的詳細資料的選項,例如探索工作、認證設定檔、工作結果和已探索的裝置。輸入
    True
    False
    --wait_time_in_secs
    探索裝置的最長等待時間 (以秒為單位)。
  7. 使用以下選項之一執行 Python 指令碼:
    選項
    範例
    使用
    --network_ranges
    選項提供探索的網路範圍。
    python3 script.py --deployment_type onprem --username 'user' --password 'pwd' --domain_type LOCAL --proxy_ips 10.xx.196.xxx --out discovered_devices.csv --credentials_file_path sample_creds.csv --network_ranges 10.xxx.xx.158/24
    使用
    --seeds
    --seed_depth
    選項提供網路探索的種子位址和種子深度。
    python3 script.py --deployment_type onprem --username 'user' --password 'pwd' --domain_type LDAP --domain_value vmware.com --proxy_ips 10.xx.196.xxx --out discovered_devices.csv --credentials_file_path sample_creds.csv --seeds 10.xxx.xx.xxx --seed_depth 2
    選項
    範例
    使用
    --network_ranges
    選項提供探索的網路範圍。
    python3 script.py --deployment_type saas --api_token YourCSPAPIToken --cloud_location UK --proxy_ips 10.xx.196.xxx --out discovered_devices.csv --credentials_file_path sample_creds.csv --network_ranges 10.xxx.xx.158/24
    使用
    --seeds
    --seed_depth
    選項提供網路探索的種子位址和種子深度。
    python3 script.py --deployment_type saas --api_token YourCSPAPIToken --cloud_location UK --proxy_ips 10.xx.196.xxx --out discovered_devices.csv --credentials_file_path sample_creds.csv --seeds 10.xxx.xx.xxx --seed_depth 2
    您必須使用更新的認證檔案 (包括 SSH、SNMP v2c、SNMPv3 或 API 認證) 執行 Python 指令碼。
    Python 指令碼僅探索在收集器網路連線性範圍內的裝置。不會探索位於網路上但無法從收集器網路存取的裝置。
  8. 根據作業的狀態,執行以下作業之一:
    狀態
    動作
    作業成功。
    開啟 CSV 檔案。CSV 檔案的範例如下所示:
    "DataSourceType","IP","fqdn","Username","Password","CSPRefreshToken","NickName", "CentralCliEnabled","IPFixEnabled","SwitchType","ParentvCenter","IsVMC", "snmp_version","snmp_community_string","snmp_username","snmp_password", "snmp_auth_type","snmp_privacy_type","ProxyIP" "DataSource1","","Domain_name","username","<pwd>","", "nick_name_discovered_devices_1","","","","","","","","","","","","10.xx.xxx.xx" "DataSource2","10.1xx.xx.1x","","username","pwd","", " nick_name_discovered_devices_2","","","","","","","","","","","","10.xx.xx.xxx"
    作業失敗或逾時。
    使用
    --clear_all
    選項執行 Python 指令碼,清除已探索裝置的詳細資料並啟動新的網路探索作業。
    例如:
    python3 script.py --deployment_type onprem --username 'user' --password 'pwd' --proxy_ips 10.xxx.xxx.xx --clear_all true
    python3 script.py --deployment_type saas --api_token YourCSPAPIToken --cloud_location UK --proxy_ips 10.xx.xxx.xx --clear_all true
可以使用
operations-for-networks-sdk-python
SDK 在
VMware Aria Operations for Networks
中將探索到的網路裝置大量新增為資料來源。如需詳細資訊,請參閱使用 Python SDK 大量新增資料來源