Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

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 geallaidhean taic togte a-mhàin ann an Windows Server 2019 no ann a bhith a’ togail Windows server 1803. Faigh dàta a’ cleachdadh solaraiche OleDB cuideachd fàilligeadhoir tha DSC Server a’ cleachdadh paramadair ainmichte nach eil a’ faighinn làn thaic bho OleDbCommand.

Lorg mi an dòigh seo: dhaibhsan a chleachdas Windows Server 2012 agus 2016, faodaidh tu stèidhichte a’ cleachdadh stòr-dàta SQL mar chùl-taic airson frithealaiche ceist DSC. Gus seo a dhèanamh, cruthaichidh sinn “proxy” ann an cruth faidhle .mdb le clàran co-cheangailte ris, a bheir ath-stiùireadh air an dàta a gheibhear bho aithisgean teachdaiche gu stòr-dàta frithealaiche SQL.

Nota: Airson Windows Server 2016 feumaidh tu a chleachdadh Inntrigeadh Stòr-dàta Access2016x86oir chan eil taic ri Microsoft.Jet.OLEDB.4.0 tuilleadh.

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 an seo. Bidh mi dìreach a’ toirt fa-near puing no dhà. Ma chleachdas sinn an inneal-tarraing DSC air an aon fhrithealaiche lìn le WSUS no Kaspersky Security Center, an uairsin anns an sgriobt cruthachadh rèiteachaidh feumaidh sinn na paramadairean a leanas atharrachadh:

  1. 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).

  2. 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.

  3. 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

  1. Cruthaichidh sinn stòr-dàta SQL falamh leis an t-ainm DSC.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  2. 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.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  3. 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.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  4. Air a dhèanamh.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

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.

  1. Gus dàta a thoirt a-steach, ruith an SQL Server Import and Export Wizard.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  2. 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 .

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  3. Tagh am faidhle às an cuir sinn a-steach an diagram.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  4. Bidh sinn a’ comharrachadh càite an cuir sinn a-steach - is e stòr-dàta SQL a th’ ann dhuinne.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  5. Tagh am frithealaiche SQL (Ainm an Fhrithealaiche) agus an stòr-dàta anns an cuir sinn a-steach dàta (DataBase).

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  6. 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).

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  7. Bidh sinn a’ taghadh na clàran às an cuir sinn a-steach sgeama an stòr-dàta.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  8. Thoir sùil air a’ bhogsa sgrùdaidh Run Immediately agus cliog Crìochnaich.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  9. Air a dhèanamh.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  10. Mar thoradh air an sin, bu chòir clàran nochdadh ann an stòr-dàta DSC.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

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:

  1. 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).

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  2. Tha sinn a’ comharrachadh gun ceangail sinn ris an fhrithealaiche SQL. Cliog Crìochnaich.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  3. 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.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  4. 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.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  5. Bidh sinn a’ sònrachadh an stòr-dàta anns na roghainnean ceangail DSC.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  6. Cliog Crìochnaich.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  7. Mus cuir sinn crìoch air an stèidheachadh, nì sinn cinnteach gu bheil an ceangal ag obair (Stòr Dàta Deuchainn).

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  8. Air a dhèanamh.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

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.

Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  1. 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.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  2. 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.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  3. 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.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  4. Anns na clàran-amais feumaidh tu na leanas a thaghadh:
    - TargetName airson a’ chlàr dbo_Devices;

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

    - NodeName no IPAddress airson dbo_RegistrationData;

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

    - NodeName no IPAddress airson dbo_StatusReport.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  5. 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.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  6. Air a dhèanamh.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  7. 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

  1. 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.
  2. 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

  1. Feuch an dèan sinn cinnteach gu bheil am frithealaiche DSC ruigsinneach tro bhrobhsair lìn.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  2. 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.
  3. Fosgail C: Faidhlichean a’ Phrògraim WindowsPowerShellModulesxPSDesiredStateConfiguration<dreach modal>DSCPullServerSetupPullServerDeploymentVerificationTest (san eisimpleir dreach 8.0.0.0.0).

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  4. 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.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  5. Ruith pullserversetuptests.ps1
    Invoke-Pester.PullServerSetupTests.ps1
    Все работает.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta SQL

  6. 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.

    Configuration agus faidhle PowerShell Desired State: pàirt 1. A' rèiteachadh DSC Pull Server gus obrachadh le stòr-dàta 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

Cuir beachd ann