部署服務的目的是讓用戶更便捷的使用,知足領導對成本及資料安全的需求。 公司因使用帶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帳戶成功綁定到該主機。