写点什么

Powershell 的期望状态配置支持推、拉模式

  • 2013-12-24
  • 本文字数:1265 字

    阅读完需:约 4 分钟

Windows PowerShell 博客一直在写有关于 PowerShell 的期望状态配置(Desired State Configuration,DSC)的内容。DSC 是 Microsoft 针对 Windows 世界计算机配置管理的提议。最新的一篇文章解释了DSC 是怎样支持推和拉两种配置模式的。

DSC 是 PowerShell 工具中新增的内容,它让我们能够声明对于给定的节点或者机器什么是期望的配置。这种方式和 PowerShell 已经支持的命令式风格是不同的。利用 DSC 的脚本用户仅需要声明想要的配置,不需要关注为了配置一台机器需要执行哪些步骤。PowerShell 的 DSC 系统会决定应该如何做。

PowerShell DSC 包含资源的概念。资源是允许配置项的构建块,例如:用户、组、服务器角色或者注册表项。PowerShell DSC 已经有一些内置的资源,但是也能够创建自定义的资源。下面的示例使用文件资源声明了在本地主机上 C:\inetpub\wwwroot 文件夹中的内容应该完全复制于 C:\SiteFiles 文件夹:

复制代码
Configuration SiteConfig
{
# A Configuration block can have zero or more Node blocks
Node "localhost"
{
# File is a built-in resource you can use to manage files and directories
# This example ensures files from the source directory are present in the
destination directory
File MyFileExample
{
Ensure = "Present" # You can also set Ensure to "Absent"
Type = "Directory“ # Default is “File”
Recurse = $true
SourcePath = "C:\SiteFiles" # This is a path that has web files
DestinationPath = "C:\inetpub\wwwroot" # The path where we want to ensure
the web files are present
}
}
}
{1}

为了应用一个配置,PowerShell 提供了两种模式:推模式和拉模式。推模式是通过执行 Start-DscConfiguration 命令立即触发的。例如,下面的命令会将当前路径上的配置应用到脚本内部的所有指定节点上:

Start-DscConfiguration -Wait -Verbose -Path .

拉模式将主动权交给了节点本身。节点需要轮询一个拉服务器以便于查看是否有新的配置。如果检查到了新配置,那么本地配置管理器(Local Configuration Manager,LCM)——PowerShell DSC 的引擎——就会下载并应用它们。拉模式的设置稍微有一点复杂:需要配置拉服务器和一个 web 网站,同时还需要通过 Set-DscLocalConfigurationManager 命令在每一个目标节点上配置一个LCM。 Windows PowerShell 团队发布了一篇文章和一个帮助工具,以便于让用户能够更容易地设置拉服务器。

尽管大部分工具同时支持这两种模式,但是也有一些工具喜好推模式,例如 Ansible ;还有一些工具喜好拉模式,例如 Puppet Chef 。有关于这两种模式的争论有很多。推模式更加简单、更容易控制:它不需要在目标节点上安装任何特定的软件,同时配置在用户请求时才会触发。拉模式的可伸缩性更好,支持丰富的元数据:目标节点自己完成配置工作,使用异步方式,同时拉服务器能够集中存储每一个目标节点状态的元数据。

查看英文原文 Powershell’s Desired State Configuration Supports Push And Pull Modes

2013-12-24 09:011940
用户头像

发布了 321 篇内容, 共 132.3 次阅读, 收获喜欢 19 次。

关注

评论

发布
暂无评论
发现更多内容

别只盯着Sora,中国AI视频的实时交互已悄悄领先

脑极体

AI

区块链Web3 项目开发的技术栈

北京木奇移动技术有限公司

区块链开发 软件外包公司 web3开发

NL2DSL2SQL是实现ChatBI的正确技术路线吗?

飞鲤

数据分析 Data + AI ChatBI

企业出海的挑战与应对方案

Wolink

品牌 跨境电商 出海企业 海外营销推广 达人营销

从 JSON 字符串到 Java 对象:Fastjson 1.2.83 全程解析|得物技术

得物技术

Java json `后端 开源‘

海外营销是做什么的?

Wolink

海外营销推广 沃链Wolink 达人营销

10个使用YashanDB的最佳实践

数据库砖家

如何有效利用海外社交媒体监测网站做好舆情监测?

沃观Wovision

社交媒体 沃观Wovision 舆情监测系统 海外舆情监测

心灵馆咨询管理系统:专业心理咨询行业的数字化解决方案

微擎应用市场

区块链技术在各行业的应用领域

北京木奇移动技术有限公司

区块链技术 软件外包公司 web3开发

12个提升YashanDB数据库用户满意度的技巧

数据库砖家

性能测试进阶秘籍:如何用JMeter分布式压测挖掘系统极限潜

测试人

软件测试 性能测试

【隐语SecretFlow社区】万字长文解读构建可信数据空间相关标准

隐语SecretFlow

区块链 隐私计算 标准 可信数据空间

小五商城极简版:一站式小程序商城解决方案,助力商家轻松开启数字化经营

微擎应用市场

安全设备的静默之谜:我们花百万买的,究竟是功能还是效果?

塞讯科技

网络安全

直播 QoE 监控体系设计与落地(三):原生卡顿优化实践

奔跑中的蜗牛666

android 卡顿

区块链 Web3 项目开发技术栈

北京木奇移动技术有限公司

区块链开发 软件外包公司 web3开发

充电桩测试系统:数字化测试管理新范式,驱动充电设施高效运维

深圳亥时科技

我的 App 终于告别 “虚胖”!靠 FinClip 这套前端组件化方案

xuyinyin

10个实用技巧帮助你快速上手YashanDB数据库

数据库砖家

赋能伙伴,共赢市场:万界星空MES开发平台

万界星空科技

低代码平台 mes AI低代码平台 AI智能化MES MES平台

全面适配iOS 26液态玻璃,基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v10.2发布

JackJiang

网络编程 即时通讯 im开发 RainbowChat ios26

批量获取1688商品数据,精准筛选与分页查询

Datafox(数据狐)

1688API 1688商品数据采集 1688数据分析 1688商品列表api

技术创新的舞台:零碳园区如何成为绿色科技的试验场和展示窗?

西格电力

电力 光伏发电 绿色能源转型 零碳园区 能源可再生

企业如何利用海外社交媒体监测工具搭建舆情监测体系?

沃观Wovision

社交媒体 舆情监测 沃观Wovision 海外舆情监测

区块链 U 卡 App 关键技术栈

北京木奇移动技术有限公司

区块链开发 软件外包公司 web3开发

打破应用跳转流失困局,提升推广链接转化率

HarmonyOS SDK

HarmonyOS SDK应用服务

10个步骤快速掌握YashanDB数据库管理核心技能

数据库砖家

2023年YashanDB数据库用户满意度及反馈技术分析

数据库砖家

微信论坛社区小程序:助力高效社区运营与流量增长的优质解决方案

微擎应用市场

海外社交媒体监测工具是什么?从原理到应用的完整指南

沃观Wovision

社交媒体 舆情监测系统 海外舆情监测

Powershell的期望状态配置支持推、拉模式_DevOps & 平台工程_João Miranda_InfoQ精选文章