Tha PowerShell Desired State Configuration (DSC) gu mòr a’ sìmpleachadh an obair a bhith a’ cleachdadh agus a’ rèiteachadh an t-siostam obrachaidh, dreuchdan frithealaiche, agus tagraidhean nuair a tha ceudan de luchd-frithealaidh agad.
Ach nuair a bhios tu a’ cleachdadh DSC san togalach, i.e. chan ann ann an MS Azure, tha beagan nuances ann. Tha iad gu sònraichte follaiseach ma tha a’ bhuidheann mòr (bho 300 ionad-obrach agus frithealaichean) agus nach do lorg iad saoghal nan soithichean fhathast:
- Chan eil làn aithrisean ann mu inbhe nan siostaman. Mura deach an rèiteachadh riatanach a chuir an sàs air cuid de na frithealaichean, às aonais na h-aithisgean sin cha bhith fios againn mu dheidhinn. Tha e gu math duilich fiosrachadh fhaighinn bhon t-seirbheisiche aithris togte, agus airson àireamh mhòr de luchd-aoigheachd faodaidh e ùine mhòr a thoirt cuideachd.
- Tha dìth scalability agus fulangas sgàinidhean. Tha e do-dhèanta tuathanas de luchd-frithealaidh lìn tarraing DSC a thogail aig am biodh aon stòr-dàta fulangach air lochdan agus stòradh cumanta de fhaidhlichean mof airson rèiteachadh, modalan agus iuchraichean clàraidh.
An-diugh innsidh mi dhut mar as urrainn dhut a 'chiad duilgheadas fhuasgladh agus dàta fhaighinn airson aithris. Bhiodh a h-uile dad nas sìmplidh nan gabhadh SQL a chleachdadh mar stòr-dàta. MS
Lorg mi an dòigh seo: dhaibhsan a chleachdas Windows Server 2012 agus 2016, faodaidh tu
Nota: Airson Windows Server 2016 feumaidh tu a chleachdadh
Cha tèid mi a-steach gu mion-fhiosrachadh mun phròiseas a bhith a’ cleachdadh frithealaiche tarraing DSC, tha e air a mhìneachadh gu math
-
UseSecurityBestPractices = $false
Rud eile, bidh TLS 1.0 à comas agus cha bhith e comasach dhut ceangal ri stòr-dàta SQL. Chan obraich Ionad Tèarainteachd Kaspersky cuideachd (bu chòir an duilgheadas fhuasgladh ann an Ionad Tèarainteachd Kaspersky v11).
-
Enable32BitAppOnWin64 = $true
Mura dèan thu an t-atharrachadh seo, cha bhith e comasach dhut am frithealaiche AppPool DSC a ruith air IIS le WSUS.
- Nuair a stàlaicheas tu DSC Server le WSUS, cuir à comas tasgadan statach is fiùghantach airson làrach DSC.
Gluaisidh sinn air adhart gu bhith a’ stèidheachadh an fhrithealaiche DSC gus stòr-dàta SQL a chleachdadh.
A 'cruthachadh stòr-dàta SQL
- Cruthaichidh sinn stòr-dàta SQL falamh leis an t-ainm DSC.
- Cruthaichidh sinn cunntas gus ceangal ris an stòr-dàta seo. An toiseach, dèan cinnteach gu bheil am frithealaiche SQL a’ ceadachadh an dà chuid cunntasan Windows agus SQL a dhearbhadh.
- Rach gu roinn Mapadh Cleachdaiche. Tagh an stòr-dàta, sa chùis seo DSC. Bheir sinn seachad còraichean sealbhadair an stòr-dàta.
- Air a dhèanamh.
A’ cruthachadh sgeama airson an Stòr-dàta DSC
Tha dà dhòigh air sgeama a chruthachadh airson stòr-dàta DSC:
- gu neo-eisimeileach, tro sgriobt TSQL
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
- toirt a-steach dàta bho innealan falamh.mdb mar phàirt den mhodal PS PSDesiredStateConfiguration tron Draoidh Import Dàta SQL.
Tha na h-innealan.mdb leis am bi sinn ag obair suidhichte ann an C:WindowsSysWOW64WindowsPowerShellv1.0ModulesPSDesiredStateConfigurationPullServer.
- Gus dàta a thoirt a-steach, ruith an SQL Server Import and Export Wizard.
- Bidh sinn a’ taghadh cò às a gheibh sinn an dàta - sa chùis againn is e stòr-dàta Microsoft Access a th’ ann. Cliog Air adhart .
- Tagh am faidhle às an cuir sinn a-steach an diagram.
- Bidh sinn a’ comharrachadh càite an cuir sinn a-steach - is e stòr-dàta SQL a th’ ann dhuinne.
- Tagh am frithealaiche SQL (Ainm an Fhrithealaiche) agus an stòr-dàta anns an cuir sinn a-steach dàta (DataBase).
- Tagh an roghainn Dèan lethbhreac de dhàta bho aon chlàr no seallaidhean (a’ dèanamh lethbhreac de dhàta bho chlàran no bheachdan).
- Bidh sinn a’ taghadh na clàran às an cuir sinn a-steach sgeama an stòr-dàta.
- Thoir sùil air a’ bhogsa sgrùdaidh Run Immediately agus cliog Crìochnaich.
- Air a dhèanamh.
- Mar thoradh air an sin, bu chòir clàran nochdadh ann an stòr-dàta DSC.
A' stèidheachadh faidhle .mdb “proxy”.
A’ cruthachadh ceangal ODBC ri frithealaiche SQL. Thathas a’ gabhail ris nach eil MS Access air a chuir a-steach air an fhrithealaiche a tha a’ ruith DSC, agus mar sin tha stèidheachadh datas.mdb air a dhèanamh air aoigheachd eadar-mheadhanach le MS Access air a chuir a-steach.
Cruthaichidh sinn ceangal siostam ODBC ris an fhrithealaiche SQL (feumaidh an ceangal ceangail a bhith co-ionnan ri bitness MS Access - 64 no 32). Faodar a chruthachadh le bhith a’ cleachdadh:
- 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
- no le làimh, a’ cleachdadh an draoidh ceangail:
- Fosgail innealan rianachd. Bidh sinn a’ taghadh stòran dàta ODBC a rèir an dreach de MS Access a chaidh a chuir a-steach. Rach gu tab System DSN agus cruthaich ceangal siostam (Cuir ris).
- Tha sinn a’ comharrachadh gun ceangail sinn ris an fhrithealaiche SQL. Cliog Crìochnaich.
- Sònraich an t-ainm agus an fhrithealaiche airson ceangal ris. An uairsin feumar ceangal leis na h-aon pharaimearan a chruthachadh air an fhrithealaiche DSC.
- Tha sinn a’ comharrachadh, gus ceangal ris an fhrithealaiche SQL, gu bheil sinn a’ cleachdadh logadh a-steach a chaidh a chruthachadh roimhe leis an ainm DSC.
- Bidh sinn a’ sònrachadh an stòr-dàta anns na roghainnean ceangail DSC.
- Cliog Crìochnaich.
- Mus cuir sinn crìoch air an stèidheachadh, nì sinn cinnteach gu bheil an ceangal ag obair (Stòr Dàta Deuchainn).
- Air a dhèanamh.
A’ cruthachadh stòr-dàta devices.mdb ann an MS Access. Cuir air bhog MS Access agus cruthaich stòr-dàta falamh ris an canar devices.mdb.
- Rach gu tab Dàta Taobh a-muigh agus cliog air Stòr-dàta ODBC. Anns an uinneag a nochdas, tagh Cruthaich clàr ceangailte gus ceangal ris an stòr dàta.
- Anns an uinneag ùr, tagh an Inneal Stòr Dàta tab agus cliog air OK. Anns an uinneag ùr, cuir a-steach na teisteasan gus ceangal ris an fhrithealaiche SQL.
- Tagh na clàran a dh'fheumas a bhith ceangailte. Thoir sùil air a’ bhogsa Sàbhail facal-faire agus cliog air OK. Sàbhail am facal-faire gach turas airson na trì clàran.
- Anns na clàran-amais feumaidh tu na leanas a thaghadh:
- TargetName airson a’ chlàr dbo_Devices;
- NodeName no IPAddress airson dbo_RegistrationData;
- NodeName no IPAddress airson dbo_StatusReport. - Nach atharraich sinn na clàran ann an MS Access, is e sin: thoir air falbh an ro-leasachan dbo_ gus an urrainn dha DSC an cleachdadh.
- Air a dhèanamh.
- Sàbhail am faidhle agus dùin MS Access. A-nis bidh sinn a’ dèanamh lethbhreac de na h-innealan.mdb a thig às gu frithealaiche DSC (gu gnàthach ann an C: Program FilesWindowsPowershellDSCService) agus cuir an tè a th’ ann mar-thà na àite (ma tha e ann).
A’ rèiteachadh frithealaiche DSC gus SQL a chleachdadh
- Bidh sinn a’ tilleadh chun t-seirbheisiche DSC. Gus ceangal ris an fhrithealaiche SQL leis an fhaidhle proxy againn, cruthaichidh sinn ceangal ODBC ùr air an fhrithealaiche DSC. Feumaidh an t-ainm, an doimhneachd beagan, agus na roghainnean ceangail a bhith co-ionann ri nuair a chruthaicheas tu am faidhle MDB. Faodaidh tu lethbhreac a dhèanamh de na h-innealan falamh a chaidh a rèiteachadh mu thràth.mdb às an seo.
- Gus innealan.mdb a chleachdadh, feumaidh tu atharraichean a dhèanamh air web.config an fhrithealaiche tarraing DSC (is e C:inetpubPSDSCPullServerweb.config an àbhaist):
- airson 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;">
- airson 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;">
Cuiridh seo crìoch air suidheachadh an fhrithealaiche DSC.
A’ sgrùdadh gnìomhachd an fhrithealaiche DSC
- Feuch an dèan sinn cinnteach gu bheil am frithealaiche DSC ruigsinneach tro bhrobhsair lìn.
- A-nis feuch an dèan sinn cinnteach a bheil am frithealaiche tarraing DSC ag obair gu ceart. Gus seo a dhèanamh, tha am modal xPSDesiredStateConfiguration a’ toirt a-steach an sgriobt pullserversetuptests.ps1. Mus ruith thu an sgriobt seo, feumaidh tu modal Powershell leis an t-ainm Pester a chuir a-steach. Stàlaich e Install-Module -Name Pester.
- Fosgail C: Faidhlichean a’ Phrògraim WindowsPowerShellModulesxPSDesiredStateConfiguration<dreach modal>DSCPullServerSetupPullServerDeploymentVerificationTest (san eisimpleir dreach 8.0.0.0.0).
- Fosgail PullServerSetupTests.ps1 agus thoir sùil air an t-slighe gu web.config an fhrithealaiche DSC. Tha an t-slighe gu web.config, a nì sgrùdadh air an sgriobt, air a chomharrachadh ann an dearg. Ma tha feum air, atharraichidh sinn an t-slighe seo.
- Ruith pullserversetuptests.ps1
Invoke-Pester.PullServerSetupTests.ps1
Все работает. - Ann an SQL Management Studio tha sinn a’ faicinn gu bheil luchd-aoigheachd air an rianachd a’ cur aithisgean gu frithealaiche aithris DSC agus bidh an dàta a’ tighinn gu crìch ann an stòr-dàta DSC air an fhrithealaiche SQL.
Sin e. Anns na h-artaigilean a leanas tha mi an dùil innse dhut mar a thogas tu aithisgean air an dàta a gheibhear, agus bruidhnidh mi air cùisean mu fhulangas lochdan agus scalability.
Source: www.habr.com