如何使用Puppet管理Windows

如何使用Puppet管理Windows

管理员可以使用Puppet(基于代码的工具和可用的社区支持)使其组织的Linux和Windows操作系统管理模型现代化。

IT专业人士长期以来一直与Linux或Windows保持一致,但对于组织来说,同时寻求两者的最佳效果已经变得越来越普遍。

对于传统的仅使用Windows的企业,使用为Linux制作的服务器端工具管理Windows系统的想法可能没什么吸引力,但Puppet多年来增加了对Windows Server的支持,并提供了System Center Configuration Manager和Desired State Configuration不具备的功能。

使用现有的Puppet基础架构

许多组织使用Puppet来管理Linux系统,使用SCCM来管理Windows服务器。SCCM适用于管理工作站,但管理员可以使用Puppet代码更轻松地管理Windows。例如,管理员可以通过查看代码manifest轻松审核系统配置。

管理员使用Puppet节点上安装的Puppet代理管理Windows。他们使用模块和清单来部署节点配置。如果管理员使用Puppet管理Linux和Windows系统,它为所有IT操作提供一站式服务。

结合Puppet和DSC获得更多的支持

管理员需要Linux的基础知识才能使用Puppet主服务。他们不需要拥有Puppet master,因为他们可以在节点上编写manifest并应用它们,但这可能不是一个可扩展的选项。对于纯粹的基于Windows的商店,Linux和Puppet的培训将使Puppet的投入更容易。在Puppet中设置和配置Windows系统需要更多时间,就像在SCCM中配置它们一样。管理员应在用户开始编写和部署Puppet清单或DevOps团队添加CI / CD管道之前设计代码。

DSC是管理员首先使用Puppet代码管理Windows的领域之一。这些模块是用C#或PowerShell编写的。DSC具有本机监控GUI,这使得机器配置的整体视图变得复杂。在其企业版中,Puppet对基于Web的报告具有原生支持。管理员还可以使用免费的开源版本,例如Foreman。

由于PowerShell库中可用的社区模块数量众多,DSC获得了对基于代码的管理的最多Windows支持,但管理员可以将Puppet与DSC结合使用,以获得Windows管理的完整覆盖。Puppet包含本机模块和内置PowerShell DSC模块的DSC模块。管理员也可以使用dsc_lite模块,它可以使用Puppet中几乎任何可用的DSC模块。dsc_lite模块完全保留在Puppet之外。

如何使用Puppet禁用服务

管理员可以使用Puppet来运行和禁用服务。使用没有DSC Puppet模块的原生Puppet支持,管理员可以编写manifest,以便在Puppet运行完成时始终运行网络登录,BITS和W3SVC。将每个Windows服务的名称放在Puppet数组$ svc_name中。

$svc_name = [‘netlogon’,’BITS’,’W3SVC’]

service { $svc_name:

ensure => ‘running’

}

在下一个示例中,Puppet DSC模块确保节点上安装了Web服务器Windows功能,并在需要重新启动时运行。

dsc_windowsfeature {‘webserverfeature’:

dsc_ensure = ‘present’

dsc_name = ‘Web-Server’

}

reboot { ‘dsc_reboot’ :

message => Puppet needs to reboot now’,

when => ‘pending’,

onlyif => ‘pending_dsc_reboot’,

}

原文链接:

https://searchwindowsserver.techtarget.com/tip/How-to-manage-Windows-with-Puppet?

):