我们有多个 ESX 3.5 集群,但特别是遇到了一个集群的性能问题。
内存消耗 http://molcat.bl.uk/gwicks/esxmemory20100216.png
为什么集群内存在每小时 10 分钟和 25 分钟下降 50%。我们认为这可能是 ESX 进行了某种内存回收,但我们认为这也会导致应用程序变慢,这是我们在负载测试期间观察到的。
有 8 个来宾、4CPU 和 16GB Redhat 5 服务器,带有 Java 应用程序(Lucene 文本搜索)
我们有多个 ESX 3.5 集群,但特别是遇到了一个集群的性能问题。
内存消耗 http://molcat.bl.uk/gwicks/esxmemory20100216.png
为什么集群内存在每小时 10 分钟和 25 分钟下降 50%。我们认为这可能是 ESX 进行了某种内存回收,但我们认为这也会导致应用程序变慢,这是我们在负载测试期间观察到的。
有 8 个来宾、4CPU 和 16GB Redhat 5 服务器,带有 Java 应用程序(Lucene 文本搜索)
我是一名 DBA,管理一个主要托管 SQL Server 和一些应用程序服务器的 vmware ESX 3.5 集群,我对如何设置资源组有疑问,但我与 ESX 系统管理员之一就如何管理资源。
集群(3 个节点,每个节点 32GB)目前托管 33 个客户机,配置为消耗 77GB 的 RAM,尽管 ESX 报告只有 44GB 处于活动状态。集群托管实时、测试、开发服务器和其他一些其他来宾。
我想做的是简化服务器资源的管理,并能够管理和报告相关服务器的性能。
例如,Live SQL 服务器、SharePoint 服务器、CRM 服务器等消耗的资源(RAM、磁盘、CPU)。
我接下来要做的是创建 4 个“顶级”资源组。
1-High - For the most mission critical services (ie. the live SQL server)
32768 memory shares
2-Normal - For the majority of the remaining live systems (CRM, Sharepoint etc)
16384 memory shares
3-Dev - Test and development systems
8192 memory shares
4-Low - Non supported servers (no sla, temporary build servers etc)
1024 memory shares
我已将服务器分组到它们自己的“应用程序”资源组(SQL Live、SQL 测试、CRM Live、CRM 测试等),但没有对这些组设置任何明确的资源限制。
然后我将“应用程序”组放入适当的“顶级”资源组。
例如,每个子组有 4 个来宾,每个 1 个 CPU 和 1GB RAM
1-High 32768 shares
SQL Live 4 guests
2-Normal 16384 shares
CRM Live 4 guests
Sharepoint Live 4 guests
3-Dev 16384 shares
CRM Test 4 guests
SQL Test 4 guests
Sharepoint test 4 guests
4-Low
Remaining cruft 4 guests
系统管理员小伙告诉我“Sharepoint 只能获得它所需资源的 50% 的 28%!”
在我回复他之前,我能否获得一些建议并检查一下我的假设:
你有什么想法和经验??
需要一点帮助来完成我的第一个 Powershell scriptlet...
我想为我的 AD 域(大约 3,000 个)上的所有 XP PC 创建一个 CSV 文件,并记录所有连接的打印机。最终,我想知道我们有多少台本地连接的打印机。
我的“Googled”脚本将愉快地使用 WMI 扫描所有 PC 的打印机并将结果输出到屏幕上。但是,我似乎无法重构代码以将结果输出到 CSV(通过Export-CSV
),而不仅仅是继续覆盖文件。我希望它附加到文件中。
# Get the list of computer names from AD
$strCategory = "computer"
$objDomain = New-Object System.DirectoryServices.DirectoryEntry
$objSearcher = New-Object System.DirectoryServices.DirectorySearcher
$objSearcher.SearchRoot = $objDomain
$objSearcher.CacheResults = -1
$objSearcher.PageSize = 5000
$objSearcher.SizeLimit = 5000
$objSearcher.Filter = ("(&(operatingSystemVersion=5*)(objectCategory=$strCategory)(operatingSystem=Windows XP*))")
$wmiPrinterClass = "win32_printer"
$colProplist = "name"
foreach ($i in $colPropList)
{$objSearcher.PropertiesToLoad.Add($i)}
$colResults = $objSearcher.FindAll()
$colResults.count
# for each computer, use WMI to scan for printers
foreach ($objComputer in $colResults)
{
$machine = $objComputer.Properties.name
$machine
get-WmiObject -class $wmiPrinterClass -computername $machine | `
ft systemName, name, shareName, Local -auto | `
Export-CSV "c:\printers.csv" #<<< HOW DO I STOP THIS FROM OVERWRITING???
}
该脚本将扫描所有 XP PC 的 AD,然后在Win32_Printer
. 如何将所有这些信息放入一个 CSV 文件中?
我看过一些关于如何使用WMI 来管理 SQL2000服务器的文章(在手动安装 SQLWMI80.msi 之后),但我没有看到关于 SQL2005 和 SQL2008 的任何内容。
这是贬值了吗?或者 WMI 现在是否作为 2005 和 2008 的标准安装?