做IT系统管理员有一阵子了,在各大博客和论坛都走访过,看过各式各样的技术帖子,深深地有感而发:
可能是因为第一份系统管理员的工作环境的熏染,如果我的观点有任何不合理的地方,我愿意听大家的意见。
1 我不用Administrator!Domain Admins!
我看到了太太多的技术文档,部署教学,里面10篇文章9篇文章在用域的Administrator部署应用,
我不太相信你们所工作的环境也是使用此账号来部署应用,因为这不合理也不科学,这个最高权限的账户通常是不需要使用,连密码可能也是放在了某个RMS加密后深层再深层的文件夹中。因为这个账户权限太高,风险太大。
那么如果你不是使用这个账户在真实环境部署系统,请不要发这种博文来误人子弟。
所有的应用全部应该是使用普通的专用域账号来部署,后面还会说道。如果真的是需要Domain admins这种权限,我也会在文档中明确说明,比如Exchange的部署需要标准的三大admins,Enterprise Admins,Domain Admins,Schema Admins。大部分的系统的部署只需要普通的Domain User就够了。
2 先关闭防火墙!
好吧,我现在的公司也是默认关闭了所有服务器的防火墙,但是我不推荐,非常不推荐。公司的策略不是我能更改的,我不知道前人是如何得出关闭防火墙这个结论。
很多公司默认服务器是需要开启防火墙的,我相信很多新人参照文档部署的时候发现这个服务器连不上,那个数据库无法访问,尤其是应用角色和数据库分开部署的时候。然后这个时候去咨询博主,博主回复到,先检查一下数据库服务器的防火墙关了没,那我的服务器不能关防火墙怎么办?
在我的文章中所有的防火墙都不会关闭,我会明确的告诉大家,需要开启防火墙的哪些端口。连接数据库需要哪些权限和角色。哪些应用,哪些服务通过那个端口做连接,这是系统管理员应该了解的,你可以多花几分钟,就可以在博客中告诉新人,省去了很多新人自己撞墙的麻烦。
3 自己的域账号做管理员!
好吧,我又不得不承认,我的新公司也是这样要求我的,我也不做任何评论。
所有的系统部署账号和管理账号都不应该是一个普通员工的域账号,而应该是一个特殊的固定账号或者用户组,比如XXadmin,XXXADMINS等,最最简单的原因就是当这个员工离职,不会对任何系统产生任何影响,只需要修改更新特殊管理账号的密码即可,而有新人加入企业后,也可以使得权限的添加变得更加容易。所有我自己在部署任何应用都是使用一个或者多个特殊账号。
4 Allinone和勾选所有功能!
这个我看到的最多的地方就是在有SQL相关部署的地方,一上来就告诉新人,安装SQL,勾选所有功能,然后把这个安装账号加到数据库的sysadmin中。比如我看到过的SharePoint的部署文档,写到,勾选安装SQL的所有功能,然后将用来装SharePoint的账号加到sysadmin中,这么做没有任何错误,我只是觉得会误导新人,实际应该是只勾选SQL的DBengine,如果需要SharePoint有Report服务,也勾选Report服务,且如果是群集环境,那么Report是不支持群集的,需要单台工作。安装Sharepoint的账户需要是SQL数据库中DBcreator组和Securityadmin组中即可。我们既然写文档来教别人,就应该教的仔细一些,我之前得领导对我写文档的要求只有一个:假如我写Exchange的部署文档,那么就算看我的文档的人连Exchange是什么都不知道,也可以照着文档一步步将环境搭建完毕而不会出现问题。
至于Allinone(All Feature in one machine)我认为怎么至少也要把数据库和应用分开吧?allinone是为了项目测试某些功能而临时搭建一台才会这样,超过一个月的测试或者真实环境都不应该allinone,而且多服务器环境与单台环境截然不同,只会allinone你是没法了解这个系统的全部功能的。
5 保持默认配置直接下一步即可!
我同意大部分系统部署过程中或者部署完毕后,很多配置使用默认配置是没有问题也是正确的,但我认为至少要说明和理解这个位置,这个勾是做什么用的,为什么勾着,不勾又会怎么样,在文档中说明,不然新人部署的时候也完全不理解。
一时半会儿就写了这么多,有空再补充吧