微软最为人熟知的是 Windows 操作系统,如 Windows 7,Windows 10 等桌面系统,在桌面系统大获成功后,微软终于通过发布 Windows NT 系统进入服务器操作系统。
这就使得 Windows NT 或是 Windows Server 系统,带着很强的 Windows 桌面系统特点:图形化操作界面,易上手。微软将 Windows 桌面系统的特点和优势继承到 Windows Server 系统中,当然是将自己的优势再一次释放,因为要进入一个新的领域,与其完全从零开始,还不如利用现有的资源和思路,这样也可以快速推出 Windows Server 产品。
微软他们还可以鼓吹来用 Windows Server 吧,他与 Windows 7 一样易上手,会打字就能月薪过万哦。
当然,这也会给我们从业者带来一些错觉,以使用 Windows 7 或 Windows 10 的经验,来判断 Windows Server ,甚至会得出 Windows Server 不稳定,是个玩具的结论。
毕竟是两个不同场景的产品,对于 Windows 桌面系统来说,易用性,兼容性是首要目标,而对于 Windows Server 系统来说,稳定性,可用性,可靠性,扩展性是首选目标,从 Windows Server 2008 开始,最近十年,微软一直致力于这方面的改进,而这种持续改进,在管理工具方面,也导致了一些混乱。
举个例子,管理员想了解 Windows Server 己经更新了哪些补丁,基本上有三种方法:
1、图形化管理工具
这种方法继承于 Windows 桌面系统,点点鼠标,轻轻松松。
2、命令行工具:wmic qfe list
命令行工具有着这样的一些特点:
A、可以实现一些更高级功能,如将补丁结果保存为 TXT 或是 HTM 的文件:wmic qfe list /output:d:\hotfixes.htm qfe list
B、可以编写自动化的脚本,如 bat 或是 cmd
3、Powershell: get-hotfix
Powershell 运行起来看起来很像命令行工具,但是在易用性,扩展性,安全性方面都是完全不一样的。
所以接下来导致混乱的问题就在于,不用列这么多了,第一个图形化的工具我就能完成这个任务了,何必瞎折腾,还有命令行和 Powershell 好可怕啊,无从下手。要解决工具选择的问题,还是得看场景:
1、一次性任务,单服务器任务,图形化工具有的功能,点点鼠标,是可以的;
2、如果我想获取所有服务器的补丁更新情况,并且生成 HTML 报告或是 CSV 报告呢?难不成一台服务器一台服务器用图形化工具查,然后自己写在 csv 文件中?
3、那如果我还想每个月收集和统计所有服务器更新报告,并定期将结果发邮件给指定管理员呢?这个图形化工具只能表示无能为力,臣妾办不到啊。
这一些还不算,更为重要的,做为一个合格和优秀的 Windows Server 管理员,仅仅依赖于图形化的管理工具,你会有心无力:
1、高薪岗位的要求
可以看看上述职位要求中,自动化和 Powershell 是必备技能
2、自动化
管理员的工作是要规划,部署,运维和快速响应,保障系统的可用性,可靠性,而这个过程中,就会有来自于业务的要求,如
其实这个只需要一个非常简单的 Powershell 代码
Import-Module ActiveDirectory
$Sid = Read-Host "Input Sid"
$ADUsers = Get-ADUser -Filter *
foreach ($ADUser in $ADUsers){
If($ADUser.sid -eq $SID){
write-host $ADUser.Name
}
}
再如,要持续监视服务器的 CPU 内存,磁盘等情况。。。这种例子,相信读者在实际工作中都可以列举出来很多。而只有我们有效的掌握了 Powershell 的自动化技术,才能够从容地面对高薪岗位的挑战,这一步不是我们闭上眼,再睁开眼就可以轻松翻页过去的。
3、Windows Server 本身的发展
就像我们刚才为大家描述的一样,微软从 Windows Server 2008 开始,在 Windows Server 系统平台上,更加强调了系统的稳定,可靠,陆续增加了 Server Core,Nano Server 这样的部署方式,安装完,完全没有了图形化界面,甚至在 Windows Server 2016 RTM 之后的更新版本中,都不再提供图形化的部署版本了。
这一点,微软在不断的适应时代和技术的变迁,做为 Windows Server 运维人员,当然没有理由不再拥抱变化,拥抱未来。
最后再来谈谈咱们的这个专栏价值,Windows 管理员是从图形化再到 Powershell,先易后难。Powershell 一开始就挑战了我们的习惯,以至于我们打开 Powershell 运行环境后,无从下手,这是一个艰难的过程,很多人也在挑战中回到了舒适区,职业生涯和工作任务也因此受阻。
我们也希望通过这一个专栏的文章,以工作中常见实例为导向,包括了从网络配置,角色安装,服务器状态监视,文件管理,域服务帐号管理,WSUS 服务器清理,虚拟机批量创建等最常见的管理任务。
通过专栏的学习,您不仅仅是能够同样编写出类似任务的 Powershell 脚本,同时更重要的是在这一个过程中,我们能够了解到 Powershell 的基本规范,什么是 Powershell 的模块,Powershell 的命令查询和使用方法,Powershell 远程管理特性,Powershell 变量、判断、循环,函数等。那么接下来的,就是反复练习实例,反复在实际中应用,不适感,恐惧感也将随之消除,Powershell 之美之神也将助力我们 Windows 运维更加专业化和职业化。
而关于作者,拥有超过 10 年的微软技术工作经验,连续六年微软 MVP,微软技术专家,51CTO金牌讲师,录制超过1000小时的课程,长期使用 Powershell 改进和优化工作,Powershell 代码量超过十万行以上。
感兴趣可来51CTO订阅专栏《Powershell 自动化运维指南》
早鸟优惠只需39元,还剩17个名额<<<
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。