ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

PowerShell Desired State Configuration (DSC) ืžืคืฉื˜ ืžืื•ื“ ืืช ืขื‘ื•ื“ืช ื”ืคืจื™ืกื” ื•ื”ื”ื’ื“ืจื” ืฉืœ ืžืขืจื›ืช ื”ื”ืคืขืœื”, ืชืคืงื™ื“ื™ ื”ืฉืจืช ื•ื”ื™ื™ืฉื•ืžื™ื ื›ืืฉืจ ื™ืฉ ืœืš ืžืื•ืช ืฉืจืชื™ื.

ืื‘ืœ ื‘ืขืช ืฉื™ืžื•ืฉ ื‘-DSC ืžืงื•ืžื™, ื›ืœื•ืžืจ. ืœื ื‘-MS Azure, ื™ืฉ ื›ืžื” ื ื™ื•ืื ืกื™ื. ื”ื ื‘ื•ืœื˜ื™ื ื‘ืžื™ื•ื—ื“ ืื ื”ืืจื’ื•ืŸ ื’ื“ื•ืœ (ืž-300 ืชื—ื ื•ืช ืขื‘ื•ื“ื” ื•ืฉืจืชื™ื) ื•ืขื“ื™ื™ืŸ ืœื ื’ื™ืœื” ืืช ืขื•ืœื ื”ืงื•ื ื˜ื™ื™ื ืจื™ื:

  • ืื™ืŸ ื“ื™ื•ื•ื—ื™ื ืžืœืื™ื ืขืœ ืžืฆื‘ ื”ืžืขืจื›ื•ืช. ืื ื”ืชืฆื•ืจื” ื”ื ื“ืจืฉืช ืœื ื™ื•ืฉืžื” ื‘ืฉืจืชื™ื ืžืกื•ื™ืžื™ื, ืื– ืœืœื ื“ื•ื—ื•ืช ืืœื” ืœื ื ื“ืข ืขืœ ื›ืš. ื“ื™ ืงืฉื” ืœื”ืฉื™ื’ ืžื™ื“ืข ืžืฉืจืช ื”ื“ื™ื•ื•ื— ื”ืžื•ื‘ื ื”, ื•ืขื‘ื•ืจ ืžืกืคืจ ืจื‘ ืฉืœ ืžืืจื—ื™ื ื–ื” ื™ื›ื•ืœ ืœืงื—ืช ื’ื ื”ืจื‘ื” ื–ืžืŸ.
  • ื—ืกืจ ืžื“ืจื’ื™ื•ืช ื•ืกื•ื‘ืœื ื•ืช ืœืชืงืœื•ืช. ื–ื” ื‘ืœืชื™ ืืคืฉืจื™ ืœื‘ื ื•ืช ื—ื•ื•ืช ืฉืœ ืฉืจืชื™ ืžืฉื™ื›ื” ืฉืœ DSC ืฉื™ื”ื™ื• ืœื”ื ืžืกื“ ื ืชื•ื ื™ื ื™ื—ื™ื“ ืกื•ื‘ืœื ื™ ืชืงืœื•ืช ื•ืื—ืกื•ืŸ ื ืคื•ืฅ ืฉืœ ืงื‘ืฆื™ MOF ืขื‘ื•ืจ ืชืฆื•ืจื•ืช, ืžื•ื“ื•ืœื™ื ื•ืžืคืชื—ื•ืช ืจื™ืฉื•ื.

ื”ื™ื•ื ืืกืคืจ ืœื›ื ื›ื™ืฆื“ ืชื•ื›ืœื• ืœืคืชื•ืจ ืืช ื”ื‘ืขื™ื” ื”ืจืืฉื•ื ื” ื•ืœืงื‘ืœ ื ืชื•ื ื™ื ืœื“ื™ื•ื•ื—. ื”ื›ืœ ื™ื”ื™ื” ืคืฉื•ื˜ ื™ื•ืชืจ ืื SQL ื™ื›ื•ืœ ืœืฉืžืฉ ื›ื‘ืกื™ืก ื ืชื•ื ื™ื. ื’ื‘ืจืช ื”ื‘ื˜ื—ื•ืช ืชืžื™ื›ื” ืžื•ื‘ื ื™ืช ืจืง ื‘-Windows Server 2019 ืื• ื‘-build Windows Server 1803. ืื—ื–ืจ ื ืชื•ื ื™ื ื’ื ื‘ืืžืฆืขื•ืช ืกืคืง OleDB ืœื ื™ืขื‘ื•ื“ืžื›ื™ื•ื•ืŸ ืฉืฉืจืช DSC ืžืฉืชืžืฉ ื‘ืคืจืžื˜ืจ ื‘ืขืœ ืฉื ืฉืื™ื ื• ื ืชืžืš ื‘ืžืœื•ืื• ืขืœ ื™ื“ื™ OleDbCommand.

ืžืฆืืชื™ ืืช ื”ืฉื™ื˜ื” ื”ื–ื•: ืœืžื™ ืฉืžืฉืชืžืฉ ื‘-Windows Server 2012 ื•-2016, ืืชื” ื™ื›ื•ืœ ืœื”ื’ื“ื™ืจ ืฉื™ืžื•ืฉ ื‘ืžืกื“ ื ืชื•ื ื™ื ืฉืœ SQL ื›-backend ืขื‘ื•ืจ ืฉืจืช ื”ืฉืื™ืœืชื•ืช DSC. ืœืฉื ื›ืš, ื ื™ืฆื•ืจ "ืคืจื•ืงืกื™" ื‘ืฆื•ืจืช ืงื•ื‘ืฅ .mdb ืขื ื˜ื‘ืœืื•ืช ืžืฉื•ื™ื›ื•ืช, ืืฉืจ ื™ืคื ื” ืืช ื”ื ืชื•ื ื™ื ื”ืžืชืงื‘ืœื™ื ืžื“ื•ื—ื•ืช ื”ืœืงื•ื— ืืœ ืžืกื“ ื”ื ืชื•ื ื™ื ืฉืœ ืฉืจืช SQL.

ื”ืขืจื”: ืขื‘ื•ืจ Windows Server 2016 ืขืœื™ืš ืœื”ืฉืชืžืฉ AccessDatabaseEngine2016x86ื›ื™ Microsoft.Jet.OLEDB.4.0 ืื™ื ื• ื ืชืžืš ืขื•ื“.

ืœื ืืคืจื˜ ืขืœ ืชื”ืœื™ืš ืคืจื™ืกืช ืฉืจืช DSC pull, ื”ื•ื ืžืชื•ืืจ ื”ื™ื˜ื‘ ื›ืืŸ. ืืฆื™ื™ืŸ ืจืง ื›ืžื” ื ืงื•ื“ื•ืช. ืื ืื ื• ืคื•ืจืกื™ื ืืช ื”-DSC Puller ื‘ืื•ืชื• ืฉืจืช ืื™ื ื˜ืจื ื˜ ืขื WSUS ืื• Kaspersky Security Center, ืื– ื‘ืกืงืจื™ืคื˜ ืœื™ืฆื™ืจืช ื”ืชืฆื•ืจื” ืขืœื™ื ื• ืœืฉื ื•ืช ืืช ื”ืคืจืžื˜ืจื™ื ื”ื‘ืื™ื:

  1. UseSecurityBestPractices     = $false

    ืื—ืจืช, TLS 1.0 ื™ื•ืฉื‘ืช ื•ืœื ืชื•ื›ืœ ืœื”ืชื—ื‘ืจ ืœืžืกื“ ื”ื ืชื•ื ื™ื ืฉืœ SQL. Kaspersky Security Center ื’ื ืœื ื™ืขื‘ื•ื“ (ืฆืจื™ืš ืœืคืชื•ืจ ืืช ื”ื‘ืขื™ื” ื‘- Kaspersky Security Center v11).

  2. Enable32BitAppOnWin64   = $true

    ืื ืœื ืชื‘ืฆืข ืืช ื”ืฉื™ื ื•ื™ ื”ื–ื”, ืœื ืชื•ื›ืœ ืœื”ืคืขื™ืœ ืืช ืฉืจืช AppPool DSC ื‘-IIS ืขื WSUS.

  3. ื‘ืขืช ื”ืชืงื ืช ืฉืจืช DSC ืขื WSUS, ื”ืฉื‘ืช ืžื˜ืžื•ืŸ ืกื˜ื˜ื™ ื•ื“ื™ื ืืžื™ ืขื‘ื•ืจ ืืชืจ DSC.

ื ืขื‘ื•ืจ ืœื”ื’ื“ืจืช ืฉืจืช DSC ืœืฉื™ืžื•ืฉ ื‘ืžืกื“ ื”ื ืชื•ื ื™ื ืฉืœ SQL.

ื™ืฆื™ืจืช ืžืกื“ ื ืชื•ื ื™ื ืฉืœ SQL

  1. ื‘ื•ืื• ื ื™ืฆื•ืจ ืžืกื“ ื ืชื•ื ื™ื SQL ืจื™ืง ื‘ืฉื DSC.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  2. ื‘ื•ืื• ื ื™ืฆื•ืจ ื—ืฉื‘ื•ืŸ ื›ื“ื™ ืœื”ืชื—ื‘ืจ ืœืžืกื“ ื”ื ืชื•ื ื™ื ื”ื–ื”. ืจืืฉื™ืช, ื‘ื“ื•ืง ืฉืฉืจืช SQL ืžืืคืฉืจ ืื™ืžื•ืช ืฉืœ ื—ืฉื‘ื•ื ื•ืช Windows ื•-SQL ื›ืื—ื“.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  3. ืขื‘ื•ืจ ืœืงื˜ืข ืžื™ืคื•ื™ ืžืฉืชืžืฉื™ื. ื‘ื—ืจ ืืช ืžืกื“ ื”ื ืชื•ื ื™ื, ื‘ืžืงืจื” ื–ื” DSC. ืื ื• ื ื•ืชื ื™ื ืืช ื”ื–ื›ื•ื™ื•ืช ืฉืœ ื‘ืขืœ ืžืื’ืจ ื”ืžื™ื“ืข.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  4. ืกื™ื™ืžืชื™.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

ื™ืฆื™ืจืช ืกื›ื™ืžื” ืขื‘ื•ืจ ืžืกื“ ื”ื ืชื•ื ื™ื ืฉืœ DSC

ื™ืฉื ืŸ ืฉืชื™ ื“ืจื›ื™ื ืœื™ืฆื•ืจ ืกื›ื™ืžื” ืขื‘ื•ืจ ืžืกื“ ื ืชื•ื ื™ื DSC:

  • ื‘ืื•ืคืŸ ืขืฆืžืื™, ื‘ืืžืฆืขื•ืช ืกืงืจื™ืคื˜ 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
  • ื™ื™ื‘ื ื ืชื•ื ื™ื ืžืžื›ืฉื™ืจื™ื ืจื™ืงื™ื.mdb ื›ื—ืœืง ืžืžื•ื“ื•ืœ PS PSDesiredStateConfiguration ื“ืจืš ืืฉืฃ ื™ื™ื‘ื•ื โ€‹โ€‹ื”ื ืชื•ื ื™ื ืฉืœ SQL.

    ื”-Devices.mdb ืื™ืชื• ื ืขื‘ื•ื“ ื ืžืฆื ื‘-C:WindowsSysWOW64WindowsPowerShellv1.0ModulesPSDesiredStateConfigurationPullServer.

  1. ื›ื“ื™ ืœื™ื™ื‘ื ื ืชื•ื ื™ื, ื”ืคืขืœ ืืช ืืฉืฃ ื”ื™ื™ื‘ื•ื โ€‹โ€‹ื•ื”ื™ื™ืฆื•ื ืฉืœ SQL Server.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  2. ืื ื• ื‘ื•ื—ืจื™ื ืžืื™ืคื” ื ืฉื™ื’ ืืช ื”ื ืชื•ื ื™ื โ€“ ื‘ืžืงืจื” ืฉืœื ื• ืžื“ื•ื‘ืจ ื‘ืžืกื“ ื ืชื•ื ื™ื ืฉืœ Microsoft Access. ื”ืงืฉ "ื”ื‘ื.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  3. ื‘ื—ืจ ืืช ื”ืงื•ื‘ืฅ ืžืžื ื• ืื ื• ืžื™ื™ื‘ืื™ื ืืช ื”ื“ื™ืื’ืจืžื”.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  4. ืื ื• ืžืฆื™ื™ื ื™ื ื”ื™ื›ืŸ ืœื™ื™ื‘ื - ืขื‘ื•ืจื ื• ืžื“ื•ื‘ืจ ื‘ืžืกื“ ื ืชื•ื ื™ื ืฉืœ SQL.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  5. ื‘ื—ืจื• ืืช ืฉืจืช ื”-SQL (ืฉื ืฉืจืช) ื•ืืช ืžืกื“ ื”ื ืชื•ื ื™ื ืืœื™ื• ื ื™ื™ื‘ื ื ืชื•ื ื™ื (DataBase).

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  6. ื‘ื—ืจ ื‘ืืคืฉืจื•ืช ื”ืขืชืง ื ืชื•ื ื™ื ืžื˜ื‘ืœื” ืื• ืชืฆื•ื’ื•ืช ืื—ืช ืื• ื™ื•ืชืจ (ื”ืขืชืงืช ื ืชื•ื ื™ื ืžื˜ื‘ืœืื•ืช ืื• ืชืฆื•ื’ื•ืช).

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  7. ื ื‘ื—ืจ ืืช ื”ื˜ื‘ืœืื•ืช ืฉืžื”ืŸ ื ื™ื™ื‘ื ืืช ืกื›ื™ืžืช ืžืกื“ ื”ื ืชื•ื ื™ื.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  8. ืกืžืŸ ืืช ืชื™ื‘ืช ื”ืกื™ืžื•ืŸ ื”ืคืขืœ ืžื™ื“ ื•ืœื—ืฅ ืขืœ ืกื™ื•ื.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  9. ืกื™ื™ืžืชื™.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  10. ื›ืชื•ืฆืื” ืžื›ืš, ื˜ื‘ืœืื•ืช ืฆืจื™ื›ื•ืช ืœื”ื•ืคื™ืข ื‘ืžืกื“ ื”ื ืชื•ื ื™ื ืฉืœ DSC.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

ื”ื’ื“ืจืช ืงื•ื‘ืฅ "proxy" ืžืกื•ื’ .mdb

ื™ืฆื™ืจืช ื—ื™ื‘ื•ืจ ODBC ืœืฉืจืช SQL. ื”ื”ื ื—ื” ื”ื™ื ืฉ-MS Access ืœื ืžื•ืชืงืŸ ื‘ืฉืจืช ืฉื‘ื• ืคื•ืขืœ DSC, ื•ืœื›ืŸ ื”ื’ื“ืจืช databases.mdb ืžืชื‘ืฆืขืช ืขืœ ืžืืจื— ื‘ื™ื ื™ื™ื ืขื ืžื•ืชืงืŸ MS Access.

ื‘ื•ืื• ื ื™ืฆื•ืจ ื—ื™ื‘ื•ืจ ODBC ืฉืœ ื”ืžืขืจื›ืช ืœืฉืจืช SQL (ืกื™ื‘ื™ื•ืช ื”ื—ื™ื‘ื•ืจ ื—ื™ื™ื‘ืช ืœื”ืชืื™ื ืœืกื™ื‘ื™ื•ืช MS Access - 64 ืื• 32). ื ื™ืชืŸ ืœื™ืฆื•ืจ ืื•ืชื• ื‘ืืžืฆืขื•ืช:
- 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

- ืื• ื‘ืื•ืคืŸ ื™ื“ื ื™, ื‘ืืžืฆืขื•ืช ืืฉืฃ ื”ื—ื™ื‘ื•ืจ:

  1. ืคืชื— ืืช ื›ืœื™ ื”ื ื™ื”ื•ืœ. ืื ื• ื‘ื•ื—ืจื™ื ืžืงื•ืจื•ืช ื ืชื•ื ื™ื ืฉืœ ODBC ื‘ื”ืชืื ืœื’ืจืกื” ืฉืœ MS Access ื”ืžื•ืชืงืŸ. ืขื‘ื•ืจ ืœืœืฉื•ื ื™ืช System DSN ื•ืฆื•ืจ ื—ื™ื‘ื•ืจ ืžืขืจื›ืช (ื”ื•ืกืฃ).

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  2. ืื ื• ืžืฆื™ื™ื ื™ื ื›ื™ ื ืชื—ื‘ืจ ืœืฉืจืช SQL. ืœื—ืฅ ืขืœ ืกื™ื•ื.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  3. ืฆื™ื™ืŸ ืืช ื”ืฉื ื•ื”ืฉืจืช ืฉืืœื™ื• ื™ืฉ ืœื”ืชื—ื‘ืจ. ืื– ื™ื”ื™ื” ืฆื•ืจืš ืœื™ืฆื•ืจ ื—ื™ื‘ื•ืจ ืขื ืื•ืชื ืคืจืžื˜ืจื™ื ื‘ืฉืจืช DSC.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  4. ืื ื• ืžืฆื™ื™ื ื™ื ืฉื›ื“ื™ ืœื”ืชื—ื‘ืจ ืœืฉืจืช SQL, ืื ื• ืžืฉืชืžืฉื™ื ื‘ื›ื ื™ืกื” ืฉื ื•ืฆืจื” ื‘ืขื‘ืจ ื‘ืฉื DSC.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  5. ืื ื• ืžืฆื™ื™ื ื™ื ืืช ืžืกื“ ื”ื ืชื•ื ื™ื ื‘ื”ื’ื“ืจื•ืช ื”ื—ื™ื‘ื•ืจ ืฉืœ DSC.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  6. ืœื—ืฅ ืขืœ ืกื™ื•ื.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  7. ืœืคื ื™ ื”ืฉืœืžืช ื”ื”ื’ื“ืจื”, ืื ื• ื‘ื•ื“ืงื™ื ืฉื”ื—ื™ื‘ื•ืจ ืคื•ืขืœ (Test Data Source).

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  8. ืกื™ื™ืžืชื™.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

ื™ืฆื™ืจืช ืžืกื“ ื ืชื•ื ื™ื devices.mdb ื‘-MS Access. ื”ืคืขืœ ืืช MS Access ื•ืฆื•ืจ ืžืกื“ ื ืชื•ื ื™ื ืจื™ืง ื‘ืฉื devices.mdb.

ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  1. ืขื‘ื•ืจ ืœืœืฉื•ื ื™ืช ื ืชื•ื ื™ื ื—ื™ืฆื•ื ื™ื™ื ื•ืœื—ืฅ ืขืœ ืžืกื“ ื ืชื•ื ื™ื ODBC. ื‘ื—ืœื•ืŸ ืฉืžื•ืคื™ืข, ื‘ื—ืจ ืฆื•ืจ ื˜ื‘ืœื” ืžืงื•ืฉืจืช ื›ื“ื™ ืœื”ืชื—ื‘ืจ ืœืžืงื•ืจ ื”ื ืชื•ื ื™ื.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  2. ื‘ื—ืœื•ืŸ ื”ื—ื“ืฉ, ื‘ื—ืจ ืืช ื”ื›ืจื˜ื™ืกื™ื™ื” Machine Data Source ื•ืœื—ืฅ ืขืœ ืื™ืฉื•ืจ. ื‘ื—ืœื•ืŸ ื”ื—ื“ืฉ, ื”ื–ืŸ ืืช ื”ืื™ืฉื•ืจื™ื ื›ื“ื™ ืœื”ืชื—ื‘ืจ ืœืฉืจืช SQL.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  3. ื‘ื—ืจ ืืช ื”ื˜ื‘ืœืื•ืช ืฉืฆืจื™ืš ืœืงืฉืจ. ืกืžืŸ ืืช ื”ืชื™ื‘ื” ืฉืžื•ืจ ืกื™ืกืžื” ื•ืœื—ืฅ ืขืœ ืื™ืฉื•ืจ. ืฉืžื•ืจ ืืช ื”ืกื™ืกืžื” ื‘ื›ืœ ืคืขื ืขื‘ื•ืจ ื›ืœ ืฉืœื•ืฉืช ื”ื˜ื‘ืœืื•ืช.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  4. ื‘ืื™ื ื“ืงืกื™ื ืขืœื™ืš ืœื‘ื—ื•ืจ ืืช ื”ืืคืฉืจื•ื™ื•ืช ื”ื‘ืื•ืช:
    โ€” TargetName ืขื‘ื•ืจ ื”ื˜ื‘ืœื” dbo_Devices;

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

    โ€” NodeName ืื• IPAddress ืขื‘ื•ืจ dbo_RegistrationData;

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

    โ€” NodeName ืื• IPAddress ืขื‘ื•ืจ dbo_StatusReport.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  5. ื‘ื•ืื• ื ืฉื ื” ืืช ืฉืžื•ืช ื”ื˜ื‘ืœืื•ืช ื‘-MS Access, ื›ืœื•ืžืจ: ื”ืกืจ ืืช ื”ืงื™ื“ื•ืžืช dbo_ ื›ื“ื™ ืฉ-DSC ื™ื•ื›ืœ ืœื”ืฉืชืžืฉ ื‘ื”ืŸ.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  6. ืกื™ื™ืžืชื™.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  7. ืฉืžื•ืจ ืืช ื”ืงื•ื‘ืฅ ื•ืกื’ื•ืจ ืืช MS Access. ื›ืขืช ืื ื• ืžืขืชื™ืงื™ื ืืช devices.mdb ื”ืžืชืงื‘ืœ ืœืฉืจืช DSC (ื›ื‘ืจื™ืจืช ืžื—ื“ืœ ื‘-C: Program FilesWindowsPowershellDSCService) ื•ืžื—ืœื™ืคื™ื ื‘ื• ืืช ื”ืงื™ื™ื (ืื ื”ื•ื ืงื™ื™ื).

ื”ื’ื“ืจืช ืฉืจืช DSC ืœืฉื™ืžื•ืฉ ื‘-SQL

  1. ืื ื—ื ื• ื—ื•ื–ืจื™ื ืœืฉืจืช DSC. ื›ื“ื™ ืœื”ืชื—ื‘ืจ ืœืฉืจืช SQL ืขื ืงื•ื‘ืฅ ื”-proxy ืฉืœื ื•, ื‘ื•ืื• ื ื™ืฆื•ืจ ื—ื™ื‘ื•ืจ ODBC ื—ื“ืฉ ื‘ืฉืจืช DSC. ื”ืฉื, ืขื•ืžืง ื”ืกื™ื‘ื™ื•ืช ื•ื”ื’ื“ืจื•ืช ื”ื—ื™ื‘ื•ืจ ื—ื™ื™ื‘ื™ื ืœื”ื™ื•ืช ื–ื”ื™ื ืœืืœื• ื‘ืขืช ื™ืฆื™ืจืช ืงื•ื‘ืฅ ื”-MDB. ืืชื” ื™ื›ื•ืœ ืœื”ืขืชื™ืง ืืช ื”-devices.mdb ื”ืจื™ืง ืฉื”ื•ื’ื“ืจ ื›ื‘ืจ ืžื›ืืŸ.
  2. ื›ื“ื™ ืœื”ืฉืชืžืฉ ื‘-devices.mdb, ืขืœื™ืš ืœื‘ืฆืข ืฉื™ื ื•ื™ื™ื ื‘-web.config ืฉืœ ืฉืจืช ื”ืžืฉื™ื›ื” ืฉืœ DSC (ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื™ื C:inetpubPSDSCPullServerweb.config):

- ืขื‘ื•ืจ 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;">

- ืขื‘ื•ืจ 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;">

ื–ื” ืžืฉืœื™ื ืืช ื”ื’ื“ืจืช ืฉืจืช DSC.

ื‘ื“ื™ืงืช ื”ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ืฉืœ ืฉืจืช DSC

  1. ื‘ื•ืื• ื ื‘ื“ื•ืง ืฉืฉืจืช DSC ื ื’ื™ืฉ ื“ืจืš ื“ืคื“ืคืŸ ืื™ื ื˜ืจื ื˜.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  2. ื›ืขืช ื‘ื•ื ื ื‘ื“ื•ืง ืื ืฉืจืช ื”ืžืฉื™ื›ื” ืฉืœ DSC ืคื•ืขืœ ื›ื”ืœื›ื”. ืœืฉื ื›ืš, ืžื•ื“ื•ืœ xPSDesiredStateConfiguration ื›ื•ืœืœ ืืช ื”ืกืงืจื™ืคื˜ pullserversetuptests.ps1. ืœืคื ื™ ื”ืคืขืœืช ืกืงืจื™ืคื˜ ื–ื”, ืขืœื™ืš ืœื”ืชืงื™ืŸ ืžื•ื“ื•ืœ Powershell ื‘ืฉื Pester. ื”ืชืงืŸ ืื•ืชื• Install-Module -ืฉื Pester.
  3. ืคืชื— ืืช C:Program FilesWindowsPowerShellModulesxPSDesiredStateConfiguration<ื’ืจืกืช ืžื•ื“ื•ืœ>DSCPullServerSetupPullServerDeploymentVerificationTest (ื‘ื’ืจืกื” ืœื“ื•ื’ืžื” 8.0.0.0.0).

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  4. ืคืชื— ืืช PullServerSetupTests.ps1 ื•ื‘ื“ื•ืง ืืช ื”ื ืชื™ื‘ ืœ-web.config ืฉืœ ืฉืจืช DSC. ื”ื ืชื™ื‘ ืืœ web.config, ืฉื™ื‘ื“ื•ืง ืืช ื”ืกืงืจื™ืคื˜, ืžืกื•ืžืŸ ื‘ืื“ื•ื. ื‘ืžื™ื“ืช ื”ืฆื•ืจืš, ื ืฉื ื” ืืช ื”ื“ืจืš ื”ื–ื•.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  5. ื”ืคืขืœ pullserversetuptests.ps1
    Invoke-Pester.PullServerSetupTests.ps1
    ะ’ัะต ั€ะฐะฑะพั‚ะฐะตั‚.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

  6. ื‘-SQL Management Studio ืื ื• ืจื•ืื™ื ืฉืžืืจื—ื™ื ืžื ื•ื”ืœื™ื ืฉื•ืœื—ื™ื ื“ื•ื—ื•ืช ืœืฉืจืช ื”ื“ื™ื•ื•ื— ืฉืœ DSC ื•ื”ื ืชื•ื ื™ื ืžื’ื™ืขื™ื ืœืžืกื“ ื”ื ืชื•ื ื™ื ืฉืœ DSC ื‘ืฉืจืช SQL.

    ืชืฆื•ืจื” ื•ืงื•ื‘ืฅ ืžืฆื‘ ืจืฆื•ื™ ืฉืœ PowerShell: ื—ืœืง 1. ื”ื’ื“ืจืช DSC Pull Server ืœืขื‘ื•ื“ ืขื ืžืกื“ ื ืชื•ื ื™ื SQL

ื–ื” ื”ื›ืœ. ื‘ืžืืžืจื™ื ื”ื‘ืื™ื ืื ื™ ืžืชื›ื ืŸ ืœืกืคืจ ืœื›ื ื›ื™ืฆื“ ืœื‘ื ื•ืช ื“ื•ื—ื•ืช ืขืœ ื”ื ืชื•ื ื™ื ืฉื”ืชืงื‘ืœื•, ื•ืื’ืข ื‘ื ื•ืฉืื™ื ื”ื ื•ื’ืขื™ื ืœืกื•ื‘ืœื ื•ืช ืชืงืœื•ืช ื•ืžื“ืจื’ื™ื•ืช.

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”