在前面我们已经做了不少功能,Lync Server拓扑已经逐渐的完整,但仍然还有一些空白,比如存档和监控功能。虽然Lync Server 2013的存档和监控已经不再是单个角色,但是我们仍然需要对其进行准备才能够实现。而这些已经不属于标准版的范畴内了,因为需要准备数据库服务器,也就是Lync Server企业版中说的后端。今天我们的内容就是搭建存档功能所用的数据库及配置,说的更明确一点是一台对Lync Server有用的SQLServer服务器。
首先我们来准备先决条件,第一步骤当然是装系统,装好后各种设置IP、更换计算机名称、加域。然后是设置防火墙:
netsh firewall set portopening protocol = TCP port = 1433 name = SQLPort mode = ENABLE scope = SUBNET profile = CURRENT
OK之后打开PowerShell,安装Windows身份认证3.5:
Import-Module ServerManager
Install-WindowsFeature Windows-Identity-Foundation
完成之后我们就可以开始SQLServer的安装了,这里我选择的是在Windows Server 2012中安装SQLServer 2012标准版。
安装程序规则是全部满足了的,如果这里有问题请及时更正。
然后是先决条件,这里防火墙一般都会出感叹号如果觉得防火墙麻烦可以直接关掉。后面根据SQL开启的端口进行配置防火墙策略。
在设置角色页面我们按照默认的SQLServer 功能安装。
在功能选择处,我们选择几个对我们有用的,数据库引擎、报表、客户端工具向后兼容性以及管理工具Many Studio。
OK,安装规则也是全部通过的,直接下一步。
在实例配置处我们不按默认实例,我们进行命名,那就LYNCSERVER吧,相应路径会自己调整,实例目录可以自己选择,建议不要在C盘。
这里SQLServer列出了空间占用情况,如果没有问题就下一步吧。
这里我们可以把SQLServer的代理服务改为自动,否则一会儿在安装数据库的时候会出现警告。
在数据库引擎配置页面,我们将当前的账户加为管理员,也可以顺便在AD里建一个SQLServer管理员账户,添加到这里面。
这里的报表服务我们暂时选择仅安装,因为我们今天的目的是安装存档功能,不需要报表。
在安装配置规则界面如果没问题,就进行下一步确保准备安装页面内容都没有问题后就单击安装吧。
漫长的等待开始,如果累了去喝杯咖啡吧。
OK,所有功能均安装完成。
我们这里顺便安装下2012 SP1补丁包。
相比安装SQLServer,安装SP1更新简单不少。
OK,确认无误开始更新吧。
然后我们顺便安装一下Lync Server 2013核心组件,也可以不安装。因为我觉得在SQLServer服务器上装上Lync Server管理工具是个非常不错的想法。
安装管理工具。
OK后打开拓扑下载当前拓扑,我们来看下Lync Server 2010和Lync Server 2013在存档上的不同。大家都知道Lync的存档在Lync Server 2010是单独的一个角色,是单独的服务器。
而在Lync Server 2013中我们已经找不到存档服务器的踪影。因为它已经变成了Lync Server 2013前端的一个可选功能,虽然也要安装独立组件,但至少不是独立的服务器角色了。
我们打开前端的属性,找到存档,复选上,然后新建SQLServer服务器。
定义我们的SQLServer存储吧。这里需要填入完整的SQL服务器限定名称,比如sql.contoso.com,下图我做了隐藏,所以只有机器名。
OK,SQLServer存储建立和前端存档功能开启完成!
发布拓扑时可以看见Lync Server会自动建立数据库,这是Lync Server 2013正式版才有的功能哦,预览版都是需要手动建立的。如果要手动指定存放数据库的路径,请选择存储,然后单击右下角的高级按钮。
单击下一步进行 拓扑的发布。
这里出现了警告,具体可以看后面的原因及解决方法,我们先看看下一步需要做什么。
如果前面没有修改SQLServer的代理服务为自动,这里就会出现警告。
但如果安装SQLServer时没有注意,那么在这里打开SQLServer配置管理器,定位到“服务”,右键SQLServer代理,打开属性面板。
这里选择“服务”然后将启动模式改为自动,如果前面改过就没不需要了。
然后切换到Lync Server 2013前端打开服务管理单元,重新启动Lync Server服务。如果觉得重启服务比较麻烦,可以直接重启Lync Server前端服务器。也可以在Lync Server命令行管理程序中执行Stop-CsWindowsServices和Start-CsWindowsServices。
搞定好后打开Lync Server 2013控制面板,选择监控和存档,确保存档配置中的存档内外部通信是选中的。
存档配置中我们需要设置存档内容,我这里选择的时IM和Web会议。并且选中了如果存档失败,将阻止。这样很方便我们的测试,因为发不了消息就是失败了。这里大家可以顺便看下,存档是可以直接存到Exchange Server的,这个如果有时间我们后面专门来说。
OK,确认无误提交后我们打开客户端随便互相码字吧。之后我们打开SQLServer Management Studio,然后连接到我们的SQLServer服务器及实例。
找到Lcslog数据库,展开,找到dbo.Messages,右键选择前1000行。如果看到查询有数据出来,那就没问题了。如果没有那就需要花点时间了。
这里我们进行存档数据的导出,这也是一种非常好的排错手段,可以排查前端是否能连接上SQLServer的LyncServer实例。在前端以管理员身份运行Lync Server命令行管理程序,执行以下:
Export-CsArchivingData -Identity archivingDatabase:<SQLServer FQDN> -StartDate <开始时间日/月/年> -OutputFolder <导出位置>
如果没有问题的话可以看到类似以下结果。
如果有问题的话,可以根据红字内容进行排错。这里我们看下导出的数据,默认是eml格式,也就是用Outlook看的,由于我的服务器没有Outlook,我就直接改成mht格式进行查看了。
用ie直接打开吧,可以看到内容,不错吧!
这里比较细心的朋友会发现一点,时区不对!是的,时区是UTC,而我们是UTC+8,这是为什么呢?在哪里来设置存档数据的时区呢?这里就非常有意思了,这是微软的设计使然。其实我们可以看到时间后面有“UTC”标识,这并非是微软弄错了。而是微软就按照UTC时区来存档的,因为可能会存在出差、或者时区变化的情况,所以时区不是一个固定的参数,所以微软干脆使用UTC+-0,这样可以很好的计算真实时间。顺便说下,有Outlook的朋友可以试下用Outlook直接打开eml格式来看看什么样,大同小异,但确实要方便些。
这里也算是仁者见仁,智者见智吧。我个人觉得这里可以做些改进,比如改成自动计算按当前时区进行显示,或者可以设置时区。其实这是一个很老的问题了,从OCS时代的存档就一直是这样,其实要改的话早就应该改了吧。今天的内容就到这里,感谢大家的支持,谢谢!有任何问题,欢迎回复文章。