通過python管理vcenter中的虛擬機

通過python管理vcenter中的虛擬機

因業務需要,需在夜間關閉虛擬機,隨通過計劃任務遠程管理開機、關機虛擬機

一、通過docker配置python3.9環境

Dockerfile

FROM  python:3.9
RUN  pip3 install pyvmomi==7.0.0

創建自定義鏡像

docker build -t pyvmomi7:v1 .

二、創建管理腳本

1、VM開機腳本

from pyVim import connect
from pyVmomi import vim
from pyVim.task import WaitForTask
import ssl
import certifi
import sysvmlist=["vm01","vm02","vm03"]
#vmlist=["ning-hb1","ning-hb2"]si = connect.SmartConnectNoSSL(host='192.168.1.10',user='administrator@vsphere.local',pwd='XXXXXXXX',port=443
)content = si.content
container = content.viewManager.CreateContainerView(content.rootFolder, [vim.VirtualMachine], True)
for vm in container.view:if vm.name in vmlist and vm.runtime.powerState != 'poweredOn':task = vm.PowerOnVM_Task()WaitForTask(task)

2、VM關機腳本

from pyVim import connect
from pyVmomi import vim
from pyVim.task import WaitForTask
import ssl
import certifi
import sysvmlist=["vm01","vm02","vm03"]
#vmlist=["ning-hb1","ning-hb2"]si = connect.SmartConnectNoSSL(host='192.168.1.10',user='administrator@vsphere.local',pwd='XXXXXXXX',port=443
)
content = si.content
container = content.viewManager.CreateContainerView(content.rootFolder, [vim.VirtualMachine], True)
for vm in container.view:if vm.name in vmlist and vm.runtime.powerState != 'poweredOff':task = vm.PowerOffVM_Task()WaitForTask(task)

三、創建定時任務

#開機
30 8 * * * /usr/bin/docker run --rm -v /data/script:/opt/  pyvmomi7:v1  python /opt/vm_PowerOn.py
#關機
0 18 * * * /usr/bin/docker run --rm -v /data/script:/opt/  pyvmomi7:v1  python /opt/vm_PowerOff.py

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/90288.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/90288.shtml
英文地址,請注明出處:http://en.pswp.cn/web/90288.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

AWS S3 生命周期管理最佳實踐:IoT Core 日志的智能存儲優化

在現代物聯網應用中,設備日志數據的管理是一個重要挑戰。隨著設備數量的增長,日志數據量呈指數級增長,如何有效管理這些數據的存儲成本成為關鍵問題。本文將分享如何為 AWS IoT Core 日志實施智能生命周期管理策略。 背景與挑戰 IoT 設備產生的日志數據具有以下特點: 數據…

18.TaskExecutor獲取ResourceManagerGateway

TaskExecutor獲取ResourceManagerGatewayTaskExecutor 與 ResourceManager 之間的交互機制較為復雜,核心可以拆分為三個階段: 首次發現與注冊連接建立心跳維持 本文聚焦連接建立階段,詳細分析底層 RPC 連接的實現原理。回顧:start…

kafka查看消息的具體內容 kafka-dump-log.sh

目錄kafka 消息查看1. 直接查看日志文件內容步驟:2. 使用 Kafka 工具查看日志主要參數說明常用命令:輸出說明:3. 注意事項kafka 消息日志文件詳解我們有時候遇到這樣的需求,需要查看下kafka消息的內容。 kafka 消息查看 查看 Ka…

Spring Cloud OpenFeign 常用注解_筆記

Spring Cloud OpenFeign 提供了一種聲明式、模板化的HTTP客戶端,可以通過簡單的接口描述遠程調用,而不必手動編寫低級的 HTTP 客戶端代碼。FeignClient用法參考:FeignClient用法-筆記-CSDN博客。這里梳理Spring Cloud OpenFeign 常用注解。 1…

移動端自動化Appium框架

文章目錄環境搭建JAVAAndroid SDKGenymotion模擬器環境搭建 JAVA 1、安裝JDK 從官網下載所需安裝包,默認安裝即可。 https://www.oracle.com/cn/java/technologies/downloads/ 2、配置環境變量 設置 - 編輯系統環境變量 - 環境變量。 系統變量下新建JAVA_HOME&a…

算法第26天|貪心算法:用最少數量的箭引爆氣球、無重疊區間、劃分字母區間

今日總結 用最少數量的箭引爆氣球 題目鏈接:452. 用最少數量的箭引爆氣球 - 力扣(LeetCode) 代碼隨想錄 整體思路: 1、統一度量 : 將所有區間按照左端點進行排序: 用到了二維的sort,在類中需…

最新版的electron通信規則

介紹: 以前electron require(electron/remote).fs 就能調用node中的各種api,最新版可能為了安全考慮,除了主main.js入口文件以外,其他的地方都不能調用node中的api,比如里面的各種函數,如fs,path等。這節課來教大家最新版本的electron如何進行通信。 結構: 了解通信之前…

Python爬蟲實戰:研究PyPLN庫相關技術

1. 引言 隨著全球化的發展,葡萄牙語作為世界第六大語言,其在互聯網上的文本數據量不斷增長。如何從海量的葡萄牙語文本中提取有價值的信息,成為自然語言處理領域的重要研究方向。 PyPLN (Python Natural Language Processing Toolkit) 是一個專門針對葡萄牙語設計的自然語言…

層次分析法代碼筆記

層次分析法 一、核心 在層次分析法中,通過 算術平均法、幾何平均法、特征值法 計算指標權重,再通過 一致性檢驗 確保判斷矩陣邏輯合理,為多準則決策提供量化依據。 二、代碼 (一)一致性檢驗(判斷矩陣合理性…

[精選] 2025最新生成 SSH 密鑰和 SSL 證書的標準流程(Linux/macOS/Windows系統服務器通用方案)

[精選] 2025最新生成 SSH 密鑰和 SSL 證書的標準流程(Linux/macOS/Windows系統服務器通用方案) 在現代網絡中,SSH(安全外殼協議)和 SSL(安全套接層協議)是保證數據傳輸安全和身份驗證的重要技術…

開發框架安全ThinkPHPLaravelSpringBootStruts2SpringCloud復現

PHP-ThinkphpLaravelThinkPHP是一套開源的、基于PHP的輕量級Web應用開發框架綜合工具:武器庫-Thinkphp專檢(3-6版本)如何判斷是TP6框架開發的web程序,基于源碼、路徑、圖標、基于報錯可發現dex.php?xxx 在其6.0.13版本及以前/?c…

uniapp+vue3小程序點擊保存圖片、保存二維碼

介紹 步驟1:引入必要的API 在script部分,確保引入了uni的相關API,如uni.downloadFile和uni.saveImageToPhotosAlbum。 步驟2:下載圖片到本地 在toInvite函數中,使用uni.downloadFile將圖片下載到本地,并獲取本地路徑。 步驟3:處理權限和保存邏輯 在saveToAlbum函數…

Golang中GROM多表關聯跟原生SQL多表關聯區別

文章目錄前言一、GROM多表關聯二、原生Sql多表關聯前言 對比GROM多表關聯和原生Sql多表關聯 一、GROM多表關聯 適用于返回全部數據需要邏輯外鍵(不會在數據庫創建任何約束)適合三個表以下的關聯有幾張表就會查詢幾次 type Product struct {gorm.Model …

設計模式六:工廠模式(Factory Pattern)

概念定義一個創建對象的接口&#xff0c;但讓子類決定實例化哪個類。實現示例#include <iostream> #include <memory>// 產品基類 class Product { public:virtual void use() 0;virtual ~Product() default; };// 具體產品A class ConcreteProductA : public Pr…

應用層自定義協議【序列化+反序列化】

文章目錄再談 “協議”重新理解read、write、recv、send和tcp為什么支持全雙工Server.cc網絡版計算機實現Socket封裝&#xff08;模板方法類&#xff09;socket.hpp定制協議JsonJson安裝定義一個期望的報文格式Protocol.hppParser.hppCalculator.hpp完整的處理過程Client.cc三層…

dify創建OCR工作流

實現ocr識別文件內容&#xff0c;引用dify的一個插件&#xff0c;插件名稱&#xff1a;mineru 引用在線版本mineru 具體操作說明&#xff0c;參見視頻&#xff1a; 第六篇&#xff1a;DifyOCR&#xff0c;掃描件最優解_嗶哩嗶哩_bilibili 引用本地部署mineru 上面的這種使用…

備受關注的“Facebook Email Scraper”如何操作?

Facebook Email Scraper&#xff08;臉書郵箱提取工具&#xff09;是一類用于從Facebook平臺提取公開郵箱信息的工具&#xff0c;其核心功能是通過解析用戶主頁、群組、頁面等公開內容&#xff0c;識別并提取其中包含的郵箱地址&#xff0c;為用戶提供結構化的聯系方式數據。這…

【網絡原理】萬字長文解密UDP/TCP——手把手教你理解網絡通信

目錄 1.前言 2.正文 2.1UDP協議 2.1.1UDP協議端格式 2.1.2UDP的特點 2.1.3理解UDP的“不可靠” 2.1.4面向數據報 2.1.5基于UDP的應用層協議 2.2TCP協議 2.2.1TCP協議端格式 2.2.2TCP十個核心機制 2.2.2.1確認應答 2.2.2.2超時重傳 確認應答超時重傳 vs 三次握手 …

MATLAB軟件使用頻繁,企業如何做到“少買多用”?

在制造企業的工程計算、算法研發、系統建模等場景中&#xff0c;MATLAB 已成為不可或缺的核心工具。 無論是動力學建模、控制算法開發&#xff0c;還是信號處理和數據可視化&#xff0c;MATLAB 的高頻使用場景覆蓋了從研發部門到測試部門的多個崗位。然而&#xff0c;企業 IT 負…

數據結構自學Day13 -- 快速排序--“分而治之”

&#x1f536; 一、快速排序&#xff08;Quick Sort&#xff09;&#x1f4cc; 基本思想&#xff1a;分而治之&#xff1a;每次從數組中選一個“基準”&#xff08;pivot&#xff09;&#xff0c;把比它小的放左邊&#xff0c;大的放右邊。對左右子數組遞歸排序。&#x1f9e0;…