博客
SCCM vs木偶
抽象形状抽象形状
加入27,000多个网络安全通讯订阅者

开源还是专有?在软件领域,几乎所有子行业(操作系统,数据库,甚至在CM领域)都展开了这场辩论,SCCM vs.Puppet是其中的两个重量级冠军。但是,除了起源上的哲学差异之外,他们还采取了两条完全不同的途径来简化系统管理员的工作。此外,这两个配置管理工具具有不同的学习曲线,这将影响您的生产速度。  

SCCM是Microsoft产品,这当然意味着它与Windows环境特别是企业环境有很好的联系,但2019年发布的SCCM 1906(稍有更多)以及其他最新版本都支持运行其他操作系统的客户端。 木偶是一种开源产品,可以管理Linux,Unix,Windows甚至Mac OS环境,尽管它当然无法与Windows上SCCM的功能匹敌。如果您在只有一个操作系统的devops环境中,而不是Windows,那么选择Puppet似乎是正确的。但是,当您必须使用多个操作系统时,事情会变得更加复杂。鉴于Windows在企业操作系统中的普及程度,这是许多开发团队所面临的情况。那么,您应该选择哪一个来管理您的数据中心或可能会失控的多台服务器?让我们深入研究一下以找出答案。

SCCM VS 木偶:深入探讨主要差异

木偶是PuppetLabs的模型驱动的开源CM。它是用Ruby编写的,具有完善的用户界面和使用基于Ruby的DSL或纯Ruby代码的CLI,尽管不建议使用后者。 木偶Labs创始人Luke Kanies表示:“ 木偶 DSL的好处之一就是简单性之外,它还鼓励了Puppet要求的思维转变。为了有效地使用Puppet,您需要考虑资源,而不是文件或命令。如果您使用Ruby编写配置,则可以很轻松地打开文件并全天运行命令,但是使用DSL,您必须学会思考资源。” 

用户描述系统资源及其状态,并将此信息存储在称为清单的文件中。 木偶包含一个“资源抽象层”,使管理员可以使用DSL以高级术语描述他们要管理的配置和要执行的操作。这种将基础架构作为DSL代码的方法的一大好处是,您不必担心操作系统特定的命令和关键字。 木偶还具有出色的基于浏览器的UI,可用于有限的配置和设置任务,但大多数用户会将GUI用作查看和报告工具。这使得大多数软件部署和细粒度的工作不可避免地需要学习如何使用CLI。

微软的SCCM(系统中心配置管理器),或使用其正式名称ConfigMgr,以前称为系统管理服务器(SMS)。最新版本是SCCM 2019,它可以 通过这些支持来管理环境 operating systems:

  • Windows 10、8和7 SP1
  • Windows Server 2008-2019年
  • Windows Embedded Computers(某些版本)和Windows CE(7.0 ARM和x86处理器)
  • Linux(Red Hat Enterprise Linux,CentOS,Debian,Oracle Linux,SUSE Linux Enterprise Server,Ubuntu) 
  • Unix(Solaris,AIX)
  • Mac OS X(Snow Leopard / macOS 10.6,最高为Mojave / macOS 10.14) 
  • 移动操作系统:Windows Phone,iOS和Android。 

客户端支持可能是跨平台的,但是,服务器控制台必须安装在Windows服务器上,并且不能猜测它最适合哪个操作系统平台。也像其他Microsoft产品一样,几乎所有工作都将在GUI上完成,以及对VB脚本等编程界面的一些附加支持。这使得它的学习和使用速度更快,但不如以CLI为中心的工具(如Puppet)那么灵活。与Puppet的表达方式相比,声明式配置管理的差异带来了一个缺点。 

但是,Windows操作系统上的CLI系统正在改进。例如,像Chocolatey这样的工具现在可以通过易于使用的CLI界面来使软件的初始设置,补丁程序和其他操作变得更加轻松,从而使开发人员的体验更好。对于Windows系统的第二种声明式配置管理方法,可以考虑使用Powershell DSC(所需状态配置)。 DSC在PowerShell 4及更高版本中可用,它借用了Puppet中的许多配置管理概念,从而更轻松地管理环境。声明式方法也用在另一个流行的自动化工具Ansible中。 Ansible使用YAML而不是自定义域专用语言。  

最新版本发布和版本历史记录

2019年7月发布的SCCM 1906是可用的最新版本的SCCM。该版本增加了一些显着的功能和改进,包括:

  • Azure Active Directory用户组发现
  • 桌面应用程序的更详细分析
  • 新的维护任务选项卡,用于管理维护任务
  • 新的任务序列调试器可对操作系统部署进行故障排除
  • 改进了对SQL Server AlwaysOn组的支持
  • 软件中心的更多自定义选项

在功能方面,SCCM是管理组织的所有Windows资产时不可忽视的力量。从交付软件到多个站点,同时减少带宽到补丁程序管理,以及在整个组织范围内实施实时漏洞修复,它可以做到所有这些。 SCCM 1906标志着自SCCM 2007以来十多年来对软件进行的一系列大规模转换中的最新成果。SCCM2007取代了Systems Management Server 2003,后者是Microsoft于1994年推出的用于管理Windows部署的配置工具的更新版本。自该日期以来发生了以下主要变化。 

  • SCCM 2007:第一个提供对Windows Vista,Exchange Server 2008和Windows Server 2008的支持的版本。此版本还增强了对资产以及系统管理员的控制'深入了解资产以及系统合规性。    
  • SCCM 2012:引入了主要更改,包括对BYOD(自带设备)的支持。微软意识到用户越来越多地使用不是由其工作场所的IT购买的设备,因此微软增加了一种将这些设备自动加载到SCCM控制的网络中的方法。 SCCM当然可以很好地使用Active Directory和组策略并将其与Active Directory和组策略很好地集成在一起,以跟踪并向所有设备推出更新。最终用户可以通过自助软件中心搜索应用程序,并定义安装和升级的时间。 WSUS(Windows Server Update Services)和网络访问保护提供了策略和安全性实施以及推出,而EndPoint Protection Manager(以前称为ForeFront)提供了 数据安全加密 在设备上。 
  • SCCM 1511:Microsoft设计了这个具有里程碑意义的版本,专门用于其当时全新的Windows 10操作系统。 Windows 10以先前版本的企业支持功能为基础,SCCM 1511在其配置管理产品的2015版本中添加了对Windows 10的全面支持。其功能包括将设备部署,配置和升级到Windows 10的能力,以及对Windows 10设备的全面管理。 

与SCCM相比,Puppet维护双重发行模型,既向开源Puppet发行,也向企业版本发行。随着Puppet Enterprise 2019.0.0的发布,Puppet的Enterprise版本于2018年10月9日发布了最新的主要版本更改的初始版本。此版本的主要更改包括以下内容:

  • 支持复杂且异构基础结构的更快自动化,而无需代理。这是一种创新的选择,可以增加使代理成为必需的现有模型的灵活性。
  • 改善机密管理
  • 新的CI / CD功能简化了团队的连续交付流程
  • 能够在维护时段内计划作业以消除一次性作业的不便时间
  • 采用 人偶6平台,以最新的开源变体形式提供,作为最新的Puppet Enterprise版本的基础。 木偶 6平台可实现更好的机密管理以及对Puppet的Resource API的更新,其中包括在Puppet中对操作系统资源进行建模。

从那时起,Puppet进行了许多其他更新,包括Puppet Enterprise版本2019.1.0和Puppet Enterprise版本2019.1.1。后者于2019年7月30日发布。对于那些有兴趣尝试Puppet的人来说,企业版特别提供STS(短期支持)和LTS(长期支持)。在撰写本文时,最新的LTS主要版本是2018.1(LTS)。该版本于2018年5月1日首次出现,并将在2020年11月终止使用寿命,将取代2019.1.1版本以及所有其他STS版本。 STS版本具有6个月的生命周期,而LTS版本具有18个月的生命周期。

组态management at large

SCCM和Puppet在哲学上的差异和功能是更广泛的配置管理场景的征兆,这种场景正以惊人的速度发展,涉及创新。为这两个方法提供替代方法的一些主要项目包括:

  • Saltstack-Saltstack是Salt远程集群配置管理工具的公司。 Saltstack具有开源版本和企业版本。它使用主从方式来将服务器保持在定义的状态。使用YAML,Jinja或Python,您可以为Saltstack奴才上的软件包的安装和编排定义公式或状态。 
  • Terraform-与SCCM和Puppet等配置管理工具不同,Terraform是使用不可变基础架构范例的配置工具。由于每台服务器都具有独特的配置更改历史记录,因此这有助于减少所有服务器上可能发生的配置漂移。 Terraform使用Docker或Packer之类的工具部署统一的映像或容器。
  • Azure自动化-另一个基于Microsoft云的配置管理和自动化工具。它跨Windows以及Linux云提供所需的状态配置和其他基础结构管理。可能替代Orchestrator等数据中心管理工具,它是Microsoft军械库中的最先进工具 与AWS竞争云市场份额.
  • AWS CloudFormation-适用于AWS环境的Amazon基础设施配置,配置和管理工具。 AWS CloudFormation使得对AWS资源及其修改和更新的配置更加容易。它可以与AWS Systems Manager Automation一起使用,以定义云基础架构和配置实例的操作系统。

社区,支持,定价

开源平台通常具有更大的团结感和产品所有权感。这与 木偶 –需要时,可以建立活跃的用户社区,并提供快速反馈和解决方案。 木偶的源代码可在 Github Puppet是开放源代码配置管理市场中最大的参与者。这样的大小会带来一些变化的惯性和敏捷性的损失。在讨论论坛上,出现了一些小规模但声音强烈的抗议活动,例如PuppetLabs解决错误的速度缓慢,以及将用户推向商业企业版本并从中赚钱。 

木偶还拥有一些大型企业客户,包括Reddit,Dell,PayPal,Oracle,Los Alamos Labs和Stanford University。当与像Microsoft这样的知名大公司竞争时,此类客户在潜在客户和用户的心中提供了很多信誉。像开源版本一样,Puppet Enterprise也对前10个节点免费,但之后每年每个节点120美元;最多2500个节点也可以使用分层折扣。如前所述,Puppet几乎可以在所有平台上运行,但是根本无法与Windows上的SCCM功能匹敌;例如,您不能使用Puppet来配置和部署新的Windows服务器,并且它不能直接更新AD以反映网络中计算机的状态。但是,您可以在Windows计算机上的容器中运行Puppet主文件。 

对于SCCM,许多人首先面临封闭的专有性问题。也就是说,用户社区的支持也非常好。考虑到Microsoft产品的主导地位,这不足为奇,而且您还可以获得专用的内部SCCM专业人员的出色答案和支持,例如Apple Store的Genius酒吧。 

SCCM的定价令人费解,并不像Puppet那样简单,特别是如果要添加多个服务器时,但这在几乎所有Microsoft产品中都很常见。为了说明这种明晰的定价设置,您既需要客户端管理的许可证(ML),又需要服务器管理的许可证。服务器ML的价格取决于您采用的是“标准”还是“数据中心”选项,并且还取决于所拥有的处理器数量。因此,例如范围最大的4处理器数据中心服务器ML的价格为$ 7230,然后您仍然需要将客户端ML的成本($ 62-$ 121)考虑在内。我们在这里要说的是,SCCM通常会比Puppet贵得多。进一步了解 这里的SCCM定价.

SCCM VS木偶结论

如果您必须在以下两者之间做出选择 木偶 和SCCM,首先详细说明您的需求,然后寻找最适合这些需求的工具。请记住,您甚至可以有这样的选择,这很幸运–仅仅10年前,基本上只有一种CM工具!以下的利弊分析也可能有助于您的决策 这个网站 总结并比较了SCCM和Puppet的功能。

  优点 缺点
SCCM
  • 很好地集成到Windows环境中。
  • Microsoft保证的支持。
  • 易于学习,因此使用起来也更快。
  • 非常贵。
  • 不’与混合的Windows -Linux / Unix设置良好集成。
  • 由于仅GUI,因此不如Puppet强大。
  • 专有模型,因此用户无法更改或定制产品。
木偶
  • 开源,因此更便宜,更灵活。
  • 适用于所有OS平台。
  • 更复杂且难以学习和开始使用。
  • 强制用户学习和使用基于Ruby的DSL。
自由

白色UpGuard徽标
可供下载的UpGuard免费资源
学到更多

下载我们的免费电子书和白皮书

关于网络安全和供应商风险管理的见解。
白色UpGuard徽标
电子书,报告& Whitepapers
可供下载的UpGuard免费资源
UpGuard客户支持团队UpGuard客户支持团队UpGuard客户支持团队

观看UpGuard的实际应用

与我们的一位网络安全专家预订免费的个性化入职电话。
抽象形状抽象形状

相关文章

了解有关网络安全的最新问题的更多信息。
传送图标

注册我们的时事通讯

每周在收件箱中获取最新精选的网络安全新闻,漏洞,事件和更新。
抽象形状抽象形状
免费即时安全评分

您的组织有多安全?

索取免费的网络安全报告,以发现您的网站,电子邮件,网络和品牌上的主要风险。
  • 检查图标
    您可以立即采取行动的即时见解
  • 检查图标
    13个风险因素,包括电子邮件安全,SSL,DNS运行状况,开放端口和常见漏洞
网站安全扫描结果网站安全扫描等级抽象形状