Computer >> कंप्यूटर >  >> प्रणाली >> Windows Server

PowerShell के साथ VMWare पर Windows VM टेम्प्लेट अपडेट करना

VMWare में नई वर्चुअल मशीन को परिनियोजित करने के लिए, VM टेम्प्लेट आमतौर पर उपयोग किए जाते हैं। VMWare VM टेम्प्लेट कॉन्फ़िगर की गई सेटिंग्स, इंस्टॉल किए गए सॉफ़्टवेयर और सुरक्षा अपडेट के साथ एक संदर्भ वर्चुअल मशीन कॉपी है। एक व्यवस्थापक को इसे अद्यतित रखने के लिए VM टेम्पलेट को नियमित रूप से अपडेट करने की आवश्यकता होती है:नए Windows सुरक्षा अपडेट इंस्टॉल करें (महीने में कम से कम एक बार), सिस्टम और एप्लिकेशन ऐप्स अपडेट करें, एंटीवायरस परिभाषाएं अपडेट करें, आदि।

VMWare पर VM टेम्पलेट की अद्यतन प्रक्रिया में निम्नलिखित चरण होते हैं:

  1. सामग्री पुस्तकालय से एक टेम्पलेट को वर्चुअल मशीन में बदल दिया जाता है।;
  2. इसे शुरू करने के बाद, एक व्यवस्थापक लॉग ऑन करता है, WSUS का उपयोग करके स्वीकृत Windows अद्यतन स्थापित करता है, आवश्यक सॉफ़्टवेयर अद्यतन करता है;
  3. अपडेट स्थापित होने के बाद, VM को पुनरारंभ किया जाता है, फिर चालू किया जाता है और वापस टेम्पलेट में परिवर्तित किया जाता है।

इस लेख में हम दिखाएंगे कि कैसे मैन्युअल रूप से कुछ भी किए बिना स्वचालित रूप से VMWare वर्चुअल मशीन टेम्पलेट में विंडोज अपडेट स्थापित करें।

VMWare वर्चुअल मशीनों के लिए, आप सीधे विंडोज इमेज में अपडेट को एकीकृत करने के तरीकों का उपयोग करने में सक्षम नहीं होंगे जो स्टैंड-अलोन इमेज या डिस्ट्रो के लिए उपयोग किए जाते हैं।

Windows वर्चुअल मशीन में अद्यतन स्थापित करने के लिए आप PowerCLI का उपयोग कर सकते हैं। हम मानते हैं कि VMWare उपकरण, PowerShell संस्करण 4 (या नया), और PSWindowsUpdate मॉड्यूल वर्चुअल मशीन टेम्पलेट में स्थापित हैं। स्क्रिप्ट निष्पादन नीति द्वारा अतिथि OS में PowerShell स्क्रिप्ट चलाने की अनुमति दी जानी चाहिए।

नीचे दी गई PowerCLI स्क्रिप्ट आपको VMWare टेम्प्लेट को VM में स्वचालित रूप से बदलने और WSUS से सुरक्षा अपडेट स्थापित करने में मदद करेगी:

# PowerCLI मॉड्यूल आयात करें
आयात-मॉड्यूल VMware.VimAutomation.Core -ErrorAction चुपचाप जारी रखें
# vCenter से कनेक्ट करें
connect-viser de-vcenter1
$TeplateVMName="Win2016StdTemplate "
# टेम्पलेट को VM में बदलें
सेट-टेम्पलेट -टेम्पलेट $TeplateVMName -ToVM -Confirm:$false -RunAsync
# 60 सेकंड की देरी करें
स्टार्ट-स्लीप - s 60
# वर्चुअल मशीन प्रारंभ करें
Start-VM -VM $TeplateVMName | Get-VMQuestion | सेट-VMQuestion -DefaultOption -पुष्टि करें:$false
Start-sleep -s 120
# एक एन्क्रिप्टेड फ़ाइल से व्यवस्थापक क्रेडेंशियल प्राप्त करें (यदि आप पासवर्ड को PS स्क्रिप्ट में स्पष्ट टेक्स्ट में नहीं रखना चाहते हैं) )
$adminname ="व्यवस्थापक"
$Pwd =प्राप्त सामग्री c:\Scripts\VMWare\vm_admin_passfile.txt | ConvertTo-SecureString $
cred =new-object -typename System.Management.Automation.PSCredential -argumentlist $adminname, $Pwd
# VMWare Tools का उपयोग करके अतिथि OS में सभी उपलब्ध अद्यतनों को स्थापित करने के लिए कमांड चलाएँ ( अद्यतन स्थापना लॉग एक फ़ाइल में सहेजा गया है:C:\temp\Update.log)

ऐसा माना जाता है कि VM एक वर्चुअल नेटवर्क में स्थित होता है, जहां वह DHCP सर्वर से IP पता प्राप्त कर सकता है। वर्चुअल मशीन में WSUS सेटिंग्स को GPO के माध्यम से परिनियोजित करने के बजाय रजिस्ट्री में संग्रहीत किया जाता है। $क्रेड | आउट-फाइल -फाइलपथ C:\temp\Update.log -Append
Start-sleep -s 1800
# VMTools संस्करण अपडेट करें
अपडेट-टूल्स -VM $TeplateVMName -NoReboot
# WinSxS कंपोनेंट स्टोर को साफ करें और DISM के साथ इमेज को ऑप्टिमाइज़ करें
Invoke-VMScript -ScriptType PowerShell -ScriptText "Dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase" -VM $TeplateVMName -GuestCredential $Cred
स्टार्ट-स्लीप -s 1800
# VM को फोर्स रीस्टार्ट करें
Restart-VMGuest -VM $TeplateVMName -Confirm:$false
# VM को शट डाउन करें और इसे वापस टेम्प्लेट में बदलें
शटडाउन-VMGuest -VM $TeplateVMName -पुष्टि करें:$false -RunAsync
स्टार्ट-स्लीप -s 180
सेट-VM -VM $TeplateVMName -ToTemplate -Confirm:$false

PowerShell के साथ VMWare पर Windows VM टेम्प्लेट अपडेट करना

आप इस पॉवरशेल स्क्रिप्ट को टास्क शेड्यूलर में जोड़ सकते हैं ताकि Microsoft पैच मंगलवार के कुछ दिनों बाद महीने में एक बार स्वचालित रूप से टेम्पलेट में अपडेट स्थापित हो सके। फिर यदि आप VMWare टेम्पलेट से एक नई वर्चुअल मशीन परिनियोजित करते हैं, तो आप सुनिश्चित हो सकते हैं कि इसमें नवीनतम Microsoft सुरक्षा अद्यतन स्थापित हैं।


  1. Windows PowerShell Scripts के साथ अपनी उत्पादकता बढ़ाएँ

    क्या होगा यदि आप लिनक्स की उत्पादकता को विंडोज़ पर ला सकते हैं? विंडोज और लिनक्स के बीच मुख्य अंतरों में से एक यह है कि अधिकांश लिनक्स डिस्ट्रो शक्तिशाली बैश शेल के साथ आते हैं; तुलना करके, विंडोज़ में कमांड प्रॉम्प्ट बेयरबोन है। क्या होगा यदि विंडोज़ में समान रूप से शक्तिशाली टर्मिनल हो? पावरशेल क

  1. विंडोज 10 पर पावरशेल के साथ इंस्टॉल किए गए प्रोग्रामों की सूची कैसे बनाएं

    यदि आपके पास विंडोज 10 पीसी है, तो आपने समय के साथ कई प्रोग्राम इंस्टॉल किए होंगे, लेकिन उन सभी को याद रखना थोड़ा मुश्किल है। विंडोज पॉवरशेल एप्लिकेशन के माध्यम से, आप कंप्यूटर पर इंस्टॉल किए गए प्रोग्रामों की सूची तैयार कर सकते हैं जो विभिन्न उद्देश्यों के लिए उपयोगी हो सकते हैं। उदाहरण के लिए, जब

  1. विंडोज 10 में संदर्भ मेनू में पावरशेल को कमांड प्रॉम्प्ट से बदलें

    पारिशेल को संदर्भ में कमांड प्रॉम्प्ट से बदलें Windows 10 में मेनू:  यदि आपने हाल ही में विंडोज 10 के नवीनतम क्रिएटर्स अपडेट में अपडेट किया है, तो आप पहले से ही नोटिस कर सकते हैं कि जब आप शिफ्ट दबाते हैं और किसी भी फ़ोल्डर पर राइट-क्लिक करते हैं, तो विकल्प ओपन कमांड विंडो यहाँ को ओपन पॉवरशेल विंडो य