PowerShell Desired State Configuration (DSC) imathandizira kwambiri ntchito yoyika ndikusintha makina ogwiritsira ntchito, maudindo a seva, ndi kugwiritsa ntchito mukakhala ndi ma seva mazana.
Koma mukamagwiritsa ntchito DSC pamalo, i.e. osati ku MS Azure, pali ma nuances angapo. Zikuwonekera makamaka ngati bungweli ndi lalikulu (kuchokera kumalo ogwirira ntchito ndi ma seva 300) ndipo silinapezebe dziko lazotengera:
- Palibe malipoti athunthu okhudza momwe machitidwe akuyendera. Ngati kasinthidwe kofunikira sikunagwiritsidwe ntchito pa ma seva ena, ndiye kuti popanda malipoti awa sitidzadziwa. Ndizovuta kupeza zambiri kuchokera pa seva yopangira malipoti, ndipo kwa olandila ambiri zitha kutenga nthawi yayitali.
- Kupanda scalability ndi zolakwa kulolerana. Ndikosatheka kumanga famu ya DSC kukoka ma seva a pa intaneti omwe angakhale ndi database imodzi yolekerera zolakwika komanso kusungirako wamba kwa mafayilo a mof pazosintha, ma module ndi makiyi olembetsa.
Lero ndikuuzani momwe mungathetsere vuto loyamba ndikupeza deta yofotokozera. Chilichonse chingakhale chosavuta ngati SQL ingagwiritsidwe ntchito ngati nkhokwe. MS
Ndinapeza njira iyi: kwa omwe amagwiritsa ntchito Windows Server 2012 ndi 2016, mukhoza
Zindikirani: Kwa Windows Server 2016 muyenera kugwiritsa ntchito
Sindifotokoza mwatsatanetsatane za momwe mungagwiritsire ntchito seva ya DSC kukoka, ikufotokozedwa bwino
-
UseSecurityBestPractices = $false
Apo ayi, TLS 1.0 idzayimitsidwa ndipo simungathe kulumikiza ku database ya SQL. Kaspersky Security Center sichigwiranso ntchito (vuto liyenera kuthetsedwa mu Kaspersky Security Center v11).
-
Enable32BitAppOnWin64 = $true
Ngati simusintha izi, simungathe kuyendetsa seva ya AppPool DSC pa IIS ndi WSUS.
- Mukakhazikitsa Seva ya DSC ndi WSUS, zimitsani kusungitsa kokhazikika komanso kosunthika kwa tsamba la DSC.
Tiyeni tipitirire kukhazikitsa seva ya DSC kuti igwiritse ntchito database ya SQL.
Kupanga SQL Database
- Tiyeni tipange nkhokwe yopanda kanthu ya SQL yotchedwa DSC.
- Tiyeni tipange akaunti kuti tilumikizane ndi databaseyi. Choyamba, yang'anani kuti seva ya SQL imalola kutsimikizika kwa maakaunti onse a Windows ndi SQL.
- Pitani ku gawo la Mapu Ogwiritsa Ntchito. Sankhani database, mu nkhani iyi DSC. Timapereka ufulu wa eni ake a database.
- Wachita.
Kupanga Schema ya DSC Database
Pali njira ziwiri zopangira schema ya database ya DSC:
- paokha, kudzera pa TSQL script
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Devices]( [TargetName] [nvarchar](255) NOT NULL, [ConfigurationID] [nvarchar](255) NOT NULL, [ServerCheckSum] [nvarchar](255) NOT NULL, [TargetCheckSum] [nvarchar](255) NOT NULL, [NodeCompliant] [bit] NOT NULL, [LastComplianceTime] [datetime] NULL, [LastHeartbeatTime] [datetime] NULL, [Dirty] [bit] NOT NULL, [StatusCode] [int] NULL ) ON [PRIMARY] GO CREATE TABLE [dbo].[RegistrationData]( [AgentId] [nvarchar](255) NOT NULL, [LCMVersion] [nvarchar](255) NULL, [NodeName] [nvarchar](255) NULL, [IPAddress] [nvarchar](255) NULL, [ConfigurationNames] [nvarchar](max) NULL ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO CREATE TABLE [dbo].[StatusReport]( [JobId] [nvarchar](50) NOT NULL, [Id] [nvarchar](50) NOT NULL, [OperationType] [nvarchar](255) NULL, [RefreshMode] [nvarchar](255) NULL, [Status] [nvarchar](255) NULL, [LCMVersion] [nvarchar](50) NULL, [ReportFormatVersion] [nvarchar](255) NULL, [ConfigurationVersion] [nvarchar](255) NULL, [NodeName] [nvarchar](255) NULL, [IPAddress] [nvarchar](255) NULL, [StartTime] [datetime] NULL, [EndTime] [datetime] NULL, [Errors] [nvarchar](max) NULL, [StatusData] [nvarchar](max) NULL, [RebootRequested] [nvarchar](255) NULL ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO
- lowetsani deta kuchokera ku device.mdb yopanda kanthu monga gawo la PS module PSDesiredStateConfiguration kudzera mu SQL Data Import Wizard.
Devices.mdb yomwe tikhala tikugwira nayo ntchito ili mu C:WindowsSysWOW64WindowsPowerShellv1.0ModulesPSDesiredStateConfigurationPullServer.
- Kuti mulowetse deta, yesani SQL Server Import and Export Wizard.
- Timasankha komwe tingapeze deta - kwa ife ndi Microsoft Access database. Dinani Kenako.
- Sankhani fayilo yomwe timalowetsamo chithunzicho.
- Tikuwonetsa komwe tingalowemo - kwa ife ndi database ya SQL.
- Sankhani seva ya SQL (Dzina la seva) ndi nkhokwe yomwe tidzalowetsemo deta (DataBase).
- Sankhani Copy data kuchokera patebulo limodzi kapena angapo kapena njira yowonera.
- Timasankha matebulo omwe tidzalowetsamo schema ya database.
- Chongani Thamangani Bokosi Loyang'anira ndikudina Malizani.
- Wachita.
- Zotsatira zake, matebulo ayenera kuwoneka mu database ya DSC.
Kukhazikitsa fayilo ya .mdb "proxy".
Kupanga kulumikizana kwa ODBC ku seva ya SQL. Zimaganiziridwa kuti MS Access sinayikidwe pa seva yomwe ikuyendetsa DSC, kotero kukhazikitsa databases.mdb kumachitidwa pa host host ndi MS Access yoikidwa.
Tiyeni tipange njira yolumikizira ODBC ku seva ya SQL (kulumikizana pang'ono kuyenera kufanana ndi MS Access bitness - 64 kapena 32). Ikhoza kupangidwa pogwiritsa ntchito:
- Powershell cmdlet:
Add-OdbcDsn –Name DSC –DriverName 'SQL Server' –Platform '<64-bit or 32-bit>' –DsnType System –SetPropertyValue @('Description=DSC Pull Server',"Server=<Name of your SQL Server>",'Trusted_Connection=yes','Database=DSC') –PassThru
- kapena pamanja, pogwiritsa ntchito wizard yolumikizira:
- Tsegulani Zida Zoyang'anira. Timasankha magwero a data a ODBC kutengera mtundu wa MS Access woyika. Pitani ku tabu ya System DSN ndikupanga kulumikizana kwadongosolo (Add).
- Tikuwonetsa kuti tidzalumikizana ndi seva ya SQL. Dinani Malizani.
- Tchulani dzina ndi seva yolumikizira. Kenako kulumikizana ndi magawo omwewo kudzafunika kupangidwa pa seva ya DSC.
- Tikuwonetsa kuti kulumikizana ndi seva ya SQL, timagwiritsa ntchito malowedwe omwe adapangidwa kale ndi dzina la DSC.
- Timalongosola nkhokwe mumakonzedwe a DSC.
- Dinani Malizani.
- Tisanamalize kukhazikitsa, timayang'ana kuti kulumikizana kukugwira ntchito (Test Data Source).
- Wachita.
Kupanga database ya device.mdb mu MS Access. Yambitsani MS Access ndikupanga database yopanda kanthu yotchedwa devices.mdb.
- Pitani ku tabu ya External Data ndikudina pa ODBC Database. Pazenera lomwe likuwoneka, sankhani Pangani tebulo lolumikizidwa kuti mulumikizane ndi gwero la data.
- Pazenera latsopano, sankhani tsamba la Machine Data Source ndikudina Chabwino. Pawindo latsopano, lowetsani zidziwitso kuti mugwirizane ndi seva ya SQL.
- Sankhani matebulo omwe akuyenera kulumikizidwa. Chongani Save achinsinsi bokosi ndi kumadula OK. Sungani mawu achinsinsi nthawi iliyonse pamatebulo onse atatu.
- Mu indexes muyenera kusankha zotsatirazi:
- TargetName pa tebulo la dbo_Devices;
- NodeName kapena IPAddress ya dbo_RegistrationData;
- NodeName kapena IPAddress ya dbo_StatusReport. - Tiyeni titchulenso matebulo mu MS Access, omwe ndi: chotsani dbo_ prefix kuti DSC iwagwiritse ntchito.
- Wachita.
- Sungani fayilo ndikutseka MS Access. Tsopano tikukopera zida zotsatila.mdb ku seva ya DSC (mwachisawawa mu C: Program FilesWindowsPowershellDCSService) ndikusintha yomwe ilipo (ngati ilipo).
Kukonza DSC Server kuti igwiritse ntchito SQL
- Timabwerera ku seva ya DSC. Kuti mulumikizane ndi seva ya SQL ndi fayilo yathu ya projekiti, tiyeni tipange kulumikizana kwatsopano kwa ODBC pa seva ya DSC. Dzina, kuya pang'ono, ndi zoikamo zolumikizira ziyenera kukhala zofanana ndi popanga fayilo ya MDB. Mutha kukopera zida zopanda kanthu zomwe zakhazikitsidwa kale kuchokera pano.
- Kuti mugwiritse ntchito devices.mdb, muyenera kusintha pa web.config ya DSC kukoka seva (chosakhazikika ndi C:inetpubPSDSCPullServerweb.config):
- ya Windows Server 2012
<add key="dbprovider" value="System.Data.OleDb">
<add key="dbconnectionstr" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:Program FilesWindowsPowerShellDscServiceDevices.mdb;">
- ya Windows Server 2016
<add key="dbprovider" value="System.Data.OleDb">
<add key="dbconnectionstr" value="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:Program FilesWindowsPowerShellDscServiceDevices.mdb;">
Izi zimamaliza kukhazikitsidwa kwa seva ya DSC.
Kuwona magwiridwe antchito a seva ya DSC
- Tiyeni tiwone ngati seva ya DSC ikupezeka kudzera pa msakatuli.
- Tsopano tiyeni tiwone ngati DSC kukoka seva ikugwira ntchito moyenera. Kuti muchite izi, gawo la xPSDesiredStateConfiguration limaphatikizapo script ya pullserversetuptests.ps1. Musanagwiritse ntchito script iyi, muyenera kukhazikitsa gawo la Powershell lotchedwa Pester. Ikani Ikani-Module -Name Pester.
- Tsegulani C:Mafayilo a PulogalamuWindowsPowerShellModulesxPSDesiredStateConfiguration<module version>DSCPullServerSetupPullServerDeploymentVerificationTest (mu chitsanzo cha 8.0.0.0.0).
- Tsegulani PullServerSetupTests.ps1 ndikuyang'ana njira yopita ku web.config ya seva ya DSC. Njira yopita ku web.config, yomwe idzayang'ane script, ikuwonetsedwa mofiira. Ngati ndi kotheka, timasintha njira iyi.
- Thamangani pullserversetuptests.ps1
Invoke-Pester.PullServerSetupTests.ps1
Zonse zikuyenda. - Mu SQL Management Studio tikuwona kuti makamu omwe amayendetsedwa amatumiza malipoti ku seva yopereka malipoti ya DSC ndipo deta imathera mu database ya DSC pa seva ya SQL.
Ndizomwezo. M'nkhani zotsatirazi ndikukonzekera kukuuzani momwe mungamangire malipoti pazomwe mwapeza, ndipo ndidzakhudza nkhani zokhudzana ndi kulekerera zolakwika ndi scalability.
Source: www.habr.com