部署服务的目的是让用户更便捷的使用,满足领导对成本及资料安全的需求。
公司因使用带license的CEVA编译工具进行开发,为了节约成本,购买了单机版程序,目的是让10人的开发团队使用。起初设想通过部署远程桌面服务,满足多人使用的场景。
可是该程序在远程桌面下最关键的build按钮无法按下!!!
要求是
1.员工不能接触到该主机(禁止直接使用USB接口导入导出)
2.所有远程桌面是必备的,同理VNCserver也是无法访问(且不能控制远程桌面导出文件到本机)
我想到XenCenter下VM的console下试试,克隆系统后,build可以按!!!
但是介于多用户使用且权限不能过高,使用多个用户和用户组来管理XenServer服务器,就必须使用 Active Directory 用户账户进行身份验证。
方案分析:
资料安全需求:
避免用户直接连接鼠标键盘操作,USB直接暴露的问题,决定将该编译环境虚拟化,方案为XenServer。
成本需求:
满足领导对成本的要求,决定不上XenDesktop、XenApp之类的,使用免费的XenCenter安装到几个需要编译的用户计算机用于“按下build按钮”。
与此引入风险问题:
到底普通用户能否使用XenCenter去操作,介于风险,决定针对用户权限引入AD进行XenCenter权限的控制。
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、成都网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的吉林网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
方案搭建:
一、AD域基础环境
操作系统:Windows 2008 R2(此处注意我尝试多次使用Windows 2012去安装,但是XenCenter中总是报错(详见附录1),建议使用Windows 2008 R2避免反复调试的麻烦)
安装步骤:
1.添加角色和功能向导——添加Active Directory域服务;
下面注意点击“此服务器提升为域控制器”
2.此时选择添加新林,在根域名中输入你要添加的域名:XXXXX.com
3.配置林功能基本和域功能级别(XenServer支持使用Active Directory服务器使用的是Windows2003或更高版本,实测的2012版本无法成功),下面输入还原密码。
4.此时配置NetBIOS,默认为XXXXX的域名
5.进行安装
成功安装完成后注意检查windows防火墙的端口
* 53 UDP/TCP DNS
* 88 UDP/TCP Kerberos 5
* 123 UDP NTP
* 137 UDP NetBIOSName Service
* 139 TCP NetBIOS Session (SMB)
* 389 UDP/TCP LDAP
* 445 TCP SMB over TCP
* 464 UDP/TCP Machine password changes
* 3268 TCP Global Catalog Search
二、XenCenter配置XenServer加入AD域控
此时将配置AD域到XenCenter上,并添加用户赋予权限。
1.首先将使用root登录XenCenter,将该pool的网卡DNS设置为AD域控服务器的IP地址,尝试拿console去ping这个地址,看是否生效,如果不生效,请检查DNS的配置;
2.使用root登录的XenCenter,选择该pool,右侧配置Users
使用管理员进行登录,注意安装XenServer与AD服务器主机时钟需要一致,否则报错,详见附录二
3.登录域,Domain注意填写XXXXX.com,User必须使用管理员administrator进行登录,不使用管理员账户登录会报错(详见附录2)
登录成功如下:
3.添加AD账户,并针对Xen进行赋权
此时需要多增加几个账户,并针对账户进行赋权操作
进入Windows2008进行配置——控制面板——管理工具——Active Directory 用户和计算机
找到Users
填写用户名及密码,用户名填写两处
设置密码
在Xen中添加账户
对账户赋予权限
总共6个权限,我分别对权限做了简要的解析:
Read Only:经理使用,多用于查看虚拟机使用情况的领导使用,基本也就是看看有什么名称的服务器,内存使用状况等。
VM Operator:开发使用,可用满足基本console查看,开关机操作等日常操作;
VM Admin:运维测试使用,可以选则在何处启动虚拟机及模板,修改内存属性等;
VM Power Admin:运维主机管理员使用,可以进行动态内存,快照的配置;
Pool Operator:高级运维管理员使用,可以对pool进行相关高级配置管理,如HA,WLB等;
Pool Admin :运维经理使用,类似于root(使用后可以不使用root对XenDesktop配置,存在安全账户机里面)可进行role分配,连接XenServer的命令行及图形console。
相关权限我整理了如下表供大家参考:
最后,配置给开发VM Operator权限即可,可以自主由他们重启避免内存泄露引起的卡顿。
老技术了,大家如果需要都可以转载,下面把自己部署中遇到的一些报错与大家分享
附录1
windows 2012系统搭建好AD域产生的报错信息:
附录2
注意时钟必须一致(可以相差几分钟),否则会报错,无法配置成功。
附录3
必须使用域管理员administrator进行登录,否则报错如下
日常运维故障:
①某一天VM操作员反映使用XenCenter无法登录相应server
解决方法:修改XenServer系统时间与安装XenCenter桌面主机时间一致,即可登录
排查及解决步骤:
第一步:查看AD服务器,查看VM操作员的AD是否密码过期——未过期
第二步:配置用户,离开域
第二步:再次登入报错如下
Could not enable external authentication: Clock skew detected with active directory server
shell方式登入XenServer,修改XenServer系统时间与安装XenCenter桌面主机时间一致,即可登录。
②某天管理接到需求为新员工添加账户,AD中已经添加成功,但是在XenCenter中无法绑定用户,报错:Subject cannot be reslved by the external directory service.
添加后报错如下:
查看日志信息:
解决方法:同步XenServer主机与AD服务器的时间即可将新增的AD账户成功绑定到该主机。