PowerShell Desired State Configuration (DSC) ඔබට සේවාදායකයන් සිය ගණනක් ඇති විට මෙහෙයුම් පද්ධතිය, සේවාදායක භූමිකාවන් සහ යෙදුම් යෙදවීමේ සහ වින්යාස කිරීමේ කාර්යය බෙහෙවින් සරල කරයි.
නමුත් DSC පරිශ්රයේ භාවිතා කරන විට, i.e. MS Azure හි නොවේ, සූක්ෂ්මතා කිහිපයක් තිබේ. සංවිධානය විශාල නම් (වැඩපොළවල් සහ සේවාදායක 300 කින්) සහ බහාලුම් ලෝකය තවමත් සොයාගෙන නොමැති නම් ඒවා විශේෂයෙන් කැපී පෙනේ:
- පද්ධතිවල තත්ත්වය පිළිබඳ සම්පූර්ණ වාර්තා නොමැත. අවශ්ය වින්යාසය සමහර සේවාදායකයන් මත යොදවා නොමැති නම්, මෙම වාර්තා නොමැතිව අපි ඒ ගැන නොදනිමු. ගොඩනඟන ලද වාර්තාකරණ සේවාදායකයෙන් තොරතුරු ලබා ගැනීම තරමක් අපහසු වන අතර, සත්කාරක විශාල සංඛ්යාවක් සඳහා එය දිගු කාලයක් ගත විය හැකිය.
- පරිමාණය සහ වැරදි ඉවසීමේ හැකියාවක් නොමැත. වින්යාස කිරීම්, මොඩියුල සහ ලියාපදිංචි යතුරු සඳහා තනි දෝෂ-ඉවසන දත්ත සමුදායක් සහ mof ගොනු වල පොදු ගබඩාවක් ඇති DSC පුල් වෙබ් සේවාදායකයන්ගේ ගොවිපලක් තැනීමට නොහැක.
පළමු ගැටළුව විසඳා වාර්තා කිරීම සඳහා දත්ත ලබා ගන්නේ කෙසේදැයි අද මම ඔබට කියමි. SQL දත්ත සමුදායක් ලෙස භාවිතා කළ හැකි නම් සියල්ල සරල වනු ඇත. මෙනෙවිය
මම මෙම ක්රමය සොයාගත්තා: Windows Server 2012 සහ 2016 භාවිතා කරන අය සඳහා, ඔබට පුළුවන්
සටහන: Windows Server 2016 සඳහා ඔබ භාවිතා කළ යුතුය
DSC පුල් සේවාදායකයක් යෙදවීමේ ක්රියාවලිය ගැන මම විස්තරාත්මකව නොකියමි, එය ඉතා හොඳින් විස්තර කර ඇත
-
UseSecurityBestPractices = $false
එසේ නොමැතිනම්, TLS 1.0 අක්රිය වන අතර ඔබට SQL දත්ත සමුදායට සම්බන්ධ වීමට නොහැකි වනු ඇත. Kaspersky Security Center ද ක්රියා නොකරනු ඇත (ගැටලුව Kaspersky Security Center v11 හි විසඳිය යුතුය).
-
Enable32BitAppOnWin64 = $true
ඔබ මෙම වෙනස සිදු නොකරන්නේ නම්, ඔබට WSUS සමඟ IIS මත AppPool DSC සේවාදායකය ධාවනය කිරීමට නොහැකි වනු ඇත.
- WSUS සමඟ DSC සේවාදායකය ස්ථාපනය කරන විට, DSC අඩවිය සඳහා ස්ථිතික සහ ගතික හැඹිලිය අක්රීය කරන්න.
SQL දත්ත සමුදාය භාවිතා කිරීම සඳහා DSC සේවාදායකය සැකසීමට අපි ඉදිරියට යමු.
SQL දත්ත සමුදායක් නිර්මාණය කිරීම
- අපි DSC නමින් හිස් SQL දත්ත සමුදායක් නිර්මාණය කරමු.
- මෙම දත්ත සමුදායට සම්බන්ධ වීමට ගිණුමක් සාදා ගනිමු. පළමුව, SQL සේවාදායකය වින්ඩෝස් සහ SQL ගිණුම් දෙකෙහිම සත්යාපනයට ඉඩ දෙන දැයි පරීක්ෂා කරන්න.
- පරිශීලක සිතියම්කරණ කොටස වෙත යන්න. දත්ත සමුදාය තෝරන්න, මෙම අවස්ථාවේදී DSC. අපි දත්ත සමුදායේ හිමිකරුගේ අයිතිවාසිකම් ලබා දෙන්නෙමු.
- අමාරුයි.
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
- SQL Data Import Wizard හරහා PS මොඩියුලයේ PSDesiredStateConfiguration හි කොටසක් ලෙස හිස් devices.mdb වෙතින් දත්ත ආයාත කරන්න.
අපි වැඩ කරන Devices.mdb C:WindowsSysWOW64WindowsPowerShellv1.0ModulesPSDesiredStateConfigurationPullServer හි පිහිටා ඇත.
- දත්ත ආයාත කිරීමට, SQL Server Import and Export Wizard ධාවනය කරන්න.
- අපි දත්ත ලබා ගන්නේ කොතැනින්ද යන්න අපි තෝරා ගනිමු - අපගේ නඩුවේදී එය Microsoft Access දත්ත ගබඩාවකි. Next ක්ලික් කරන්න.
- අපි රූප සටහන ආයාත කරන ගොනුව තෝරන්න.
- ආනයනය කළ යුතු ස්ථානය අපි දක්වන්නෙමු - අපට එය SQL දත්ත ගබඩාවකි.
- SQL සේවාදායකය (සේවාදායක නාමය) සහ අපි දත්ත ආයාත කරන දත්ත සමුදාය තෝරන්න (DataBase).
- විකල්පය තෝරන්න වගු එකකින් හෝ වැඩි ගණනකින් දත්ත පිටපත් කිරීම (වගු හෝ දර්ශන වලින් දත්ත පිටපත් කිරීම).
- අපි දත්ත සමුදා ක්රමය ආයාත කරන වගු තෝරා ගනිමු.
- Run Immedyly checkbox එක සලකුණු කර Finish ක්ලික් කරන්න.
- අමාරුයි.
- ප්රතිඵලයක් වශයෙන්, වගු DSC දත්ත ගබඩාවේ දිස්විය යුතුය.
.mdb “proxy” ගොනුවක් සැකසීම
SQL සේවාදායකයකට ODBC සම්බන්ධතාවයක් නිර්මාණය කිරීම. DSC ධාවනය වන සේවාදායකයේ MS Access ස්ථාපනය කර නොමැති බව උපකල්පනය කරනු ලැබේ, එබැවින් databases.mdb පිහිටුවීම MS Access ස්ථාපනය කර ඇති අතරමැදි ධාරකයක් මත සිදු කෙරේ.
අපි SQL සේවාදායකයට පද්ධති ODBC සම්බන්ධතාවයක් නිර්මාණය කරමු (සම්බන්ධතා බිට්නස් MS ප්රවේශ බිට්නස් - 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
- හෝ අතින්, සම්බන්ධතා විශාරද භාවිතා කරමින්:
- පරිපාලන මෙවලම් විවෘත කරන්න. ස්ථාපිත MS ප්රවේශයේ අනුවාදය අනුව අපි ODBC දත්ත මූලාශ්ර තෝරා ගනිමු. පද්ධති DSN ටැබයට ගොස් පද්ධති සම්බන්ධතාවයක් සාදන්න (එකතු කරන්න).
- අපි SQL සේවාදායකයට සම්බන්ධ වන බව අපි පෙන්වා දෙමු. Finish ක්ලික් කරන්න.
- සම්බන්ධ වීමට නම සහ සේවාදායකය සඳහන් කරන්න. එවිට DSC සේවාදායකයේ එකම පරාමිතීන් සමඟ සම්බන්ධතාවයක් නිර්මාණය කිරීමට අවශ්ය වනු ඇත.
- SQL සේවාදායකයට සම්බන්ධ වීමට, අපි DSC යන නම සමඟ කලින් සාදන ලද පිවිසුමක් භාවිතා කරන බව අපි පෙන්වා දෙමු.
- අපි DSC සම්බන්ධතා සැකසුම් තුළ දත්ත සමුදාය නියම කරමු.
- Finish ක්ලික් කරන්න.
- සැකසුම සම්පූර්ණ කිරීමට පෙර, අපි සම්බන්ධතාවය ක්රියා කරන බව පරීක්ෂා කරන්නෙමු (පරීක්ෂා දත්ත මූලාශ්රය).
- අමාරුයි.
MS Access හි devices.mdb දත්ත සමුදායක් නිර්මාණය කිරීම. MS Access දියත් කර Device.mdb නමින් හිස් දත්ත සමුදායක් සාදන්න.
- බාහිර දත්ත පටිත්ත වෙත ගොස් ODBC දත්ත සමුදාය මත ක්ලික් කරන්න. දිස්වන කවුළුවෙහි, දත්ත මූලාශ්රයට සම්බන්ධ වීමට සබැඳි වගුවක් සාදන්න තෝරන්න.
- නව කවුළුව තුළ, Machine Data Source ටැබය තෝරා OK ක්ලික් කරන්න. නව කවුළුව තුළ, SQL සේවාදායකයට සම්බන්ධ වීමට අක්තපත්ර ඇතුළත් කරන්න.
- සම්බන්ධ කළ යුතු වගු තෝරන්න. මුරපදය සුරකින්න කොටුව සලකුණු කර OK ක්ලික් කරන්න. වගු තුනටම මුරපදය සෑම විටම සුරකින්න.
- දර්ශක තුළ ඔබ පහත සඳහන් දෑ තෝරාගත යුතුය:
— dbo_Devices වගුව සඳහා TargetName;
— dbo_RegistrationData සඳහා NodeName හෝ IPAddress;
— dbo_StatusReport සඳහා NodeName හෝ IPAddress. - MS Access හි ඇති වගු නැවත නම් කරමු, එනම්: DSC හට ඒවා භාවිතා කිරීමට හැකි වන පරිදි dbo_ උපසර්ගය ඉවත් කරන්න.
- අමාරුයි.
- ගොනුව සුරකින්න සහ MS ප්රවේශය වසා දමන්න. දැන් අපි ප්රතිඵලය වන Devices.mdb DSC සේවාදායකයට පිටපත් කරන්නෙමු (C: Program FilesWindowsPowershellDSCSService හි පෙරනිමියෙන්) සහ පවතින එක එය සමඟ ප්රතිස්ථාපනය කරන්න (එය පවතී නම්).
SQL භාවිතා කිරීමට DSC සේවාදායකය වින්යාස කිරීම
- අපි DSC සේවාදායකය වෙත ආපසු යන්නෙමු. අපගේ ප්රොක්සි ගොනුව සමඟ SQL සේවාදායකයට සම්බන්ධ වීමට, අපි DSC සේවාදායකයේ නව ODBC සම්බන්ධතාවයක් නිර්මාණය කරමු. නම, බිට් ගැඹුර සහ සම්බන්ධතා සැකසුම් MDB ගොනුව නිර්මාණය කිරීමේදී සමාන විය යුතුය. ඔබට දැනටමත් වින්යාස කර ඇති හිස් උපාංග.mdb මෙතැනින් පිටපත් කළ හැක.
- Device.mdb භාවිතා කිරීමට, ඔබ DSC පුල් සේවාදායකයේ web.config වෙත වෙනස්කම් සිදු කළ යුතුය (පෙරනිමිය 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 සේවාදායකයේ ක්රියාකාරීත්වය පරීක්ෂා කිරීම
- වෙබ් බ්රවුසරයක් හරහා DSC සේවාදායකයට ප්රවේශ විය හැකිදැයි පරීක්ෂා කර බලමු.
- දැන් බලමු DSC pull server එක හරියට වැඩ කරනවද කියලා. මෙය සිදු කිරීම සඳහා, xPSDesiredStateConfiguration මොඩියුලයට pullserversetuptests.ps1 ස්ක්රිප්ට් ඇතුළත් වේ. මෙම ස්ක්රිප්ට් ධාවනය කිරීමට පෙර, ඔබ Pester නමින් Powershell මොඩියුලයක් ස්ථාපනය කළ යුතුය. එය ස්ථාපනය කරන්න Install-Module -Name Pester.
- විවෘත C:Program FilesWindowsPowerShellModulesxPSDesiredStateConfiguration<මොඩියුල අනුවාදය>DSCPullServerSetupPullServerDeploymentVerificationTest (උදාහරණ අනුවාදය 8.0.0.0.0).
- PullServerSetupTests.ps1 විවෘත කර DSC සේවාදායකයේ web.config වෙත යන මාර්ගය පරීක්ෂා කරන්න. ස්ක්රිප්ට් පරීක්ෂා කරන web.config වෙත මාර්ගය රතු පැහැයෙන් උද්දීපනය කර ඇත. අවශ්ය නම්, අපි මෙම මාර්ගය වෙනස් කරමු.
- pullserversetuptests.ps1 ධාවනය කරන්න
Invoke-Pester.PullServerSetupTests.ps1
Все. - SQL Management Studio හි අපට පෙනෙන්නේ පරිපාලනය කරන ලද ධාරක DSC වාර්තාකරණ සේවාදායකය වෙත වාර්තා යවන අතර දත්ත SQL සේවාදායකයේ DSC දත්ත ගබඩාවේ අවසන් වන බවයි.
එච්චරයි. පහත දැක්වෙන ලිපි වලින් ලබාගත් දත්ත මත වාර්තා ගොඩනඟන්නේ කෙසේදැයි මම ඔබට පැවසීමට අදහස් කරමි, වැරදි ඉවසීම සහ පරිමාණය පිළිබඳ ගැටළු පිළිබඳව මම ස්පර්ශ කරමි.
මූලාශ්රය: www.habr.com