针对Windows系统的自动化运维实现方式?

核心系统是金证,用了金智维的自动化运维系统,涉及到自定义脚本调用的话,有没有什么好的方式?Linux比较简单,就是Windows比较麻烦,不清楚同行是怎么做的?显示全部

核心系统是金证,用了金智维的自动化运维系统,涉及到自定义脚本调用的话,有没有什么好的方式?
Linux比较简单,就是Windows比较麻烦,不清楚同行是怎么做的?

收起
参与33

查看其它 4 个回答youki2008的回答

youki2008youki2008  系统架构师 , DDT

针对Windows系统的自动化运维管理,一般有这几种:

  1. 通过 Server Manager、System Center 批量管理多台服务器
    这是 Windows 系列操作系统内置的自动化管理工具。Server Manager是一个 GUI 工具,它是每台 Windows Server 都内置的管理工具。它可以添加多台服务器,对目标服务器启停 Windows 功能(比如 IIS、DNS 服务等),还可以查看目标服务器的性能状态(CPU、内存使用率),以及日志事件。
    System Center 是微软主推的集群管理产品,它是一套独立出售的产品,提供桌面和 Web 界面,主要包括基础设施装配(比如虚拟机、网络)、自动化与配置(集群脚本编排、密钥存储等)和运维管理(监控与告警)等几个方面。System Center 不仅能管理 Windows Server,还能管理 Linux 服务器。
  2. [Windows 远程管理(WinRM)
    如果上面的工具不够满足需求,还可以利用 Windows 内置的远程管理 API 来自定义开发远程管理和自动化运维工具。

在 Windows 中内置的 PowerShell Remoting 的功能,以及在 PowerShell 5.0 中增加的 PowerShell DSC 自动化脚本编排配置工具,都是基于 WinRM 来实现的。前者提供远程命令行功能,类似于 SSH 连接;后者提供集群化自动化状态管理,类似于 Ansible。在最新的 PowerShell 6 中,也提供基于 SSH 的连接

  1. PowerShell DSC
    PowerShell DSC 是一整套的批量自动化运维的工具,可以用于 Windows 服务器的管理;随着跨平台的 PowerShell 6.0 的运用,也可以用于管理 Linux 服务器。
  2. 第三方的自动化自动化运维工具

本质上,PowerShell DSC 只是一种远程执行 Windows 任务的一种机制,而支持这种机制的工具有很多,比如 Chef,ansible,puppet与 Terraform。这些工具的特点是,都可以按一定的格式指定要在服务器上运行的脚本,所以通常它们可以用来做自动化部署工具,而往往并不能用作运行期的维护工具。如果只是自动化部署,常见的持续集成工具也是可以帮上忙的,比如 Jenkins、GoCD 和 TFS 等。所不同的是,前面这些环境编排工具平台通常提供了体验更好的安装、卸载和配置功能,而后面的持续集成工具则只提供了任务运行和结果展示功能。还有一些专门的“变更管理”软件,把这一过程标准化了,比如 TFS/VSTS Release 功能、Octopus Deploy 等。

  1. 容器化的运维
    Windows 容器技术从 [Windows Server 2016 的 1709 版本开始就可以用于生产环境了。简单来说,Windows 容器技术与 Linux 容器在运维技术方面没什么不同,除了容器镜像的大小一般比 Linux 容器要大(Linux 镜像一般 100~500M 大小,Windows 镜像一般 2G~12G 大小),所以整个集群的存储应该要准备更大的存储空间。编排工具方面,流行的 Kubernetes、Docker Swarm 和 Mesos 都支持 Windows 容器的编排,因此按照标准的 Linux 容器平台来进行管理即可。

如果条件允许,当然 Windows Nano Server 是要比 Server Core 要好很多的,毕竟它没有界面可以更轻量级地去以命令行的方式来运维和管理。

互联网服务 · 2020-04-28
浏览4157

回答者

youki2008
系统架构师DDT
擅长领域: 服务器云计算数据库

youki2008 最近回答过的问题

回答状态

  • 发布时间:2020-04-28
  • 关注会员:7 人
  • 回答浏览:4157
  • X社区推广