部署服务的目的是让用户更便捷的使用,知足领导对成本及资料安全的需求。 公司因使用带license的CEVA编译工具进行开发,为了节约成本,购买了单机版程序,目的是让10人的开发团队使用。起初设想经过部署远程桌面服务,知足多人使用的场景。 但是该程序在远程桌面下最关键的build按钮没法按下!!! 要求是 1.员工不能接触到该主机(禁止直接使用USB接口导入导出) 2.全部远程桌面是必备的,同理VNCserver也是没法访问(且不能控制远程桌面导出文件到本机) 我想到XenCenter下VM的console下试试,克隆系统后,build能够按!!! 可是介于多用户使用且权限不能太高,使用多个用户和用户组来管理XenServer服务器,就必须使用 Active Directory 用户帐户进行身份验证。
方案分析:
资料安全需求:
避免用户直接链接鼠标键盘操做,USB直接暴露的问题,决定将该编译环境虚拟化,方案为XenServer。
成本需求:
知足领导对成本的要求,决定不上XenDesktop、XenApp之类的,使用免费的XenCenter安装到几个须要编译的用户计算机用于“按下build按钮”。
与此引入风险问题:
到底普通用户可否使用XenCenter去操做,介于风险,决定针对用户权限引入AD进行XenCenter权限的控制。shell
方案搭建:
1、AD域基础环境
操做系统:Windows 2008 R2(此处注意我尝试屡次使用Windows 2012去安装,可是XenCenter中老是报错(详见附录1),建议使用Windows 2008 R2避免反复调试的麻烦)windows
安装步骤: 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
2、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个权限,我分别对权限作了简要的解析:ide
Read Only:经理使用,多用于查看虚拟机使用状况的领导使用,基本也就是看看有什么名称的服务器,内存使用情况等。工具
VM Operator:开发使用,可用知足基本console查看,开关机操做等平常操做;测试
VM Admin:运维测试使用,能够选则在何处启动虚拟机及模板,修改内存属性等;ui
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帐户成功绑定到该主机。