如果你认识我,那么你知道我是一个粉丝 纠缠 需很长时间。我发现它是一个伟大的工具,并找到了新颖的用途。我整合了一个谈话 纠缠在行动中 一年前,展示我在环境中使用它。我想对人们遇到的大事是在验证系统配置并在发布之前验证系统是惊人的。我在去年在这些相同的行中看到了很多社区努力。其中一个工具值得仔细看看。

操作验证框架

It took me a long time to wrap my head around this project at first. I’ll admit that I looked at it a few times without really seeing the value of it. At face value, all I saw was a few commands that would find Pester tests and run them. Invoke-Pester already does that if you execute it from the root of your tests folder. I went and did my own thing without digging into it.

最近,我看到了一篇文章 使用OVF和Microsoft Operations Management Suite连续测试您的基础架构 使用OVF做了一个非常好的步行。我能够在行动中看到它,这是一件好事。

操作验证框架解释

这是一个非常轻的框架,执行旨在验证系统的纠缠测试。将您的测试打包成OVF的模块以找到它们。 OVF允许简单综合诊断测试。您可以将两种类型包装到同一模块中。这感觉就像是一个很好的标准,您将在社区中看到许多人用于管理操作验证。

理想情况下,您可以在计划中运行简单的测试,并将其馈送到您的警报系统中。然后保存用于故障排除的诊断测试。这是上面帖子的方法突出显示。

在我继续之前要提及的其他事情是OVF会产生更容易被其他系统消耗的输出(但如果您需要,纠址仍然存在)。它还具有枚举所有测试的功能,而无需运行它们。

将我的测试放在模块中?

这是OVF开始显示隐藏潜力的地方。 PowerShell现在有一个基于模块的打包管理系统,非常容易设置和使用。我想在这个例子上建立 这个帖子 that creates a ValidateDNS module. I now want to distribute that module (and others).

I need to ceate a repository and publish my ValidateDNS module to it.

$path = '\\server\share\PSRepository'
$repository = @{
    Name               = 'MyModules'
    SourceLocation     = $path
    PublishLocation    = $path
    InstallationPolicy = 'Trusted'
}
Register-PSRepository @repository

Publish-Module -Name validateDNS -Repository MyModules

You never knew it was that easy to create your own repository and publish a module did you. I know I was surprised the first time I discovered that. You will also need to run the Register-PSRepository command on your target system. Once you have that, Install the module.

Install-Module -Name ValidateDNS -Repository MyModules

现在,您有一个非常简单的方法来向您的系统分发您的测试。作为一个额外的奖金,这使得更新中心位置并更新服务器上的测试非常容易。

DSC.怎么样?

与DSC的比较经常在谈论使用PEST进行操作验证时出现。 DSC已测试已配置的所有设置,对吗?首先,在配置系统以外的内容验证它是配置的东西是好的。但这里有一个更大的点。

DSC.测试并验证事项配置如您所期望的。但它并没有真正做好检查系统的状态。 IIS是否接受端口80的连接?系统磁盘是否有20%的可用空间? eventlog中的这些特定错误吗?任何证书是否已过期?我可以到达数据库服务器吗?纠缠可以介入最后一英里,让DSC做它最好的事情。

纠缠,OVF和DSC。更好的在一起

这是事情开始真的好的地方,而我写这篇文章的整个原因。由于OVF将查看用于验证测试的所有模块,因此您可以将验证测试放在自定义DSC资源模块中。让那个沉没只是片刻。

ovf正在寻找的基于模块的方法和结构赞美DSC资源模块的结构。您可以组合它们,因此您的系统验证测试为自定义DSC资源从DSC拉动服务器使用资源自动分发。

我只是以为这真的很聪明,所有这些关系都在一起。如果您正在创建自定义DSC资源而不是每个人都在这样做,最后的技巧只能有效。对于某些社区项目来说,可能是一些额外的功能的机会,而不是任何东西。

包装东西

我对这个项目的新发现欣赏和潜在的提供。它解决了我目前发行测试方法的最大问题之一,并将它们更新在系统上。我已经开始转移到这种新方法。