Saturday, May 8, 2010
Set objRootDSE = GetObject("LDAP://rootDSE")
Set objContainer = GetObject("LDAP://cn=Users," & _
For i = 1 To 1000
Set objLeaf = objContainer.Create("User", "cn=UserNo" & i)
objLeaf.Put "sAMAccountName", "UserNo" & i
WScript.Echo "1000 Users created."
' Description: This script creates multiple sequential computer accounts
' in an AD OU. It appends a 3 digit number to the base name starting with
' the number entered at the prompt.
Const ADS_SCOPE_ONELEVEL = 1
DQ = Chr(34)
Set objShell = CreateObject("Wscript.Shell")
Set objNetwork = CreateObject("WScript.NetWork")
'Verifies script was run using Cscript, and if not relauches it using Cscript
If Not WScript.FullName = WScript.Path & "\cscript.exe" Then
objShell.Popup "Relaunching script with Cscript in 5 seconds...", 5, _
"Script Host Message", 48
objShell.Run "cmd.exe /k " & WScript.Path & "\cscript.exe //NOLOGO " & _
DQ & WScript.scriptFullName & DQ, 1, False
intWarn = MsgBox("This will make changes to AD." & VbCr & _
"Are you sure you want to do this?", 308, "ID 10 T Check")
'308 = Yes/No (4) + 'Exclaimation (48) + Default Button 2 (256)
If intWarn = vbNo Then
'Construct an ADsPath to the Current Domain with rootDSE
Set objRootDSE = GetObject("LDAP://rootDSE")
strADsPath = "LDAP://" & objRootDSE.Get("defaultNamingContext")
'Convert domain Distinguished Name to FQDN format
strDomainDN = objRootDSE.Get("defaultNamingContext")
strDomainFQDN = Replace(Replace(strDomainDN, "DC=", ""), ",", ".")
'Connect to Active Directory
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_ONELEVEL
'Prompt for Path to OU
strOUPath = _
InputBox("Please enter the path to the OU where the computer accounts " & _
" will be created - Seperate OUs With a \", "OU Path Input", "TopOU\SubOU")
If strOUPath = False Then
Loop Until strOUPath <> ""
'Split OU path by OU
strOUPath = UCase(strOUPath)
strOUPath = Split(strOUPath, "\")
'Prepare variables for search
intOULevel = 0
strSearchADsPath = strADsPath
'Search through each OU level in path provided
For intOULevel = 0 To UBound(strOUPath)
objCommand.CommandText = "SELECT ADsPath FROM '" & strSearchADsPath & _
"'" & " WHERE objectCategory='organizationalUnit' AND Name = '" & _
strOUPath(intOULevel) & "'"
Set objRecordSet = objCommand.Execute
'Verify OU was found
If objRecordSet.EOF Then
WScript.echo "OU named " & strOUPath(intOULevel) & _
" not found, Exiting script."
Do Until objRecordSet.EOF
strSearchADsPath = objRecordSet.Fields("ADsPath").Value
'Get current username to use in description field
strAdmin = objNetwork.UserName
'Prompt for the base computer name
strBaseName = _
InputBox("Please enter the base computer name to use for new accounts:", _
"Base Computer Name", "TestPC")
If strBaseName = False Then
Loop Until strBaseName <> ""
strBaseName = UCase(strBaseName)
'Prompt for starting computer number
intStartNumber = _
InputBox("Please enter the beginning number to use in computer names:", _
"Starting Computer Number", "001")
If intStartNumber = False Then
Loop Until intStartNumber <> ""
intStartNumber = CInt(intStartNumber)
intRecord = intStartNumber
'Prompt for number of accounts to be created
intRecordMax = _
InputBox("Please enter the number of accounts to be created", _
"Count Input", "10")
If intRecordMax = False Then
Loop Until intRecordMax <> ""
intRecordMax = CInt(intRecordMax)
'Bind to OU that computers will be created in
Set objOU = GetObject(strSearchADsPath)
'Create the user accounts
Do Until intRecord = intRecordMax + intStartNumber
intRecord = Right("000" & intRecord, 3)
strNewComputerName = strBaseName & intRecord
WScript.Echo "Creating " & strNewComputerName
Set objNewComputer = objOU.Create("Computer", "cn= " & strNewComputerName)
objNewComputer.Put "samAccountName", strNewComputerName & "$"
objNewComputer.Put "userAccountControl", 4096
objNewComputer.Put "description", "Account created: " & Date() & " by: " _
objNewComputer.SetInfo 'Writes settings to AD
intRecord = intRecord + 1
WScript.echo "Finished creating computer accounts."
Tuesday, May 4, 2010
- Processor: Up to two Intel Xeon 5500 and 5600 processors, up to six cores per socket, up to 12 sockets per server.
- RAM: Up to 64 GB, 128 GB, or 192 GB DDR3 RAM, depending on which Dell resource you use. (See “RAM options are inconsistent” in the What’s wrong section below for more information.)
- RAID: Wide variety of RAID controller options to support internal and external storage.
- Drive bays: Chassis options include 4, 8, or 12 drive bays.
- Drive options: Up to 12 disks at 2 TB each. Supports 2.5″ and 3.5″ SATA and DAS disks and includes a solid state disk option. The 12 disk chassis also has space for two more internal drives.
- Network: 2 x 1 Gb Ethernet ports on board (Broadcom 5716).
- Power: Redundant power supply available.
- Additional information: Product Web site
- Photos of the Dell PowerEdge R510
The target market
The Dell PowerEdge R510 server is aimed squarely at space-constrained data centers or small and medium-size organizations. I see these primary use cases:
- Common platform: Organizations that want significant server use flexibility and also want a common platform to administrative ease. The Dell PowerEdge R510’s versatility makes it a natural fit for many applications.
- Smaller is better: Organizations that need to pack more servers into a data center and that don’t want to move to blades to gain density. The Dell PowerEdge R510’s 26″ depth makes it possible to support this need.
- Mega storage needed: Small and medium organizations that need a server with massive internal storage and that may not want to invest in a SAN.
What problem does it solve
Many organizations have a desire to standardize on a single server platform in order to make it easier to support the server environment and to keep spare parts on hand in the event of a failure; however, those organizations often have a wide variety of computing needs, each requiring different computing resources. A VMware host, for example, will need RAM and processing power and will generally be connected to a SAN. Exchange, on the other hand, needs RAM, processing power, and raw disk space. SQL Server has similar needs. With its flexible chassis options, dual quad-core processing capability, and support for triple digit GBs of RAM, the 2U Dell PowerEdge R510 can meet the needs for all but the most processor intensive applications. IT can deploy a wide array of services on this single computing platform without sacrificing in any area of the computing spectrum.
The Dell PowerEdge R510 is also a short server, measuring only 26″ deep. This makes it an ideal choice for smaller organizations that have small data centers and need to eke out as much space as possible without sacrifice.
In addition to offering very flexible computing options and having a short depth, the Dell PowerEdge R510 offers an optional LCD display that allows administrators to quickly determine chassis status and choose boot options. The availability of the display is dependent on which chassis option is selected. For example, as you will see in the photo gallery, getting a display on the 12 chassis model would be tough.
This is not a specific product issue, but rather a gap in Dell’s line. Ideally, I’d love to see the company release a version of the Dell PowerEdge R510 with support for up to four processors. Obviously, with a short depth, support for a lot of RAM and 12 disks crammed in the existing chassis, this four-socket dream might be difficult to produce in this form factor.
RAM options are inconsistent
Another negative element of this server is not necessarily a knock on the server itself — instead, it’s directed at Dell’s marketing folks. I got frustrated when I looked at various views of the Dell PowerEdge R510 on Dell’s site. Depending on the page being viewed, the site lists the server’s maximum RAM at three values:
- 64 GB (the Dell PowerEdge R510 dedicated page’s Tech Specs tab)
- 128 GB (the Dell PowerEdge R510 PDF specs) (I suspect that this is the true limit with the availability of 16 GB memory modules.)
- 192 GB (the PowerEdge server overview page)
In purchasing a server, the maximum RAM configuration available at present is 128 GB.
In the Dell PowerEdge R510’s complete technical guide, there is mention that the chassis selected also impacts the availability of certain RAM configurations. The 4 drive chassis is listed as accepting 1, 2, and 4 GB memory modules; the 8 drive chassis is shown as accepting 1, 2, 4, 8, and 16 GB modules.
My recommendation: Work with your sales rep to make sure your system has the memory options you expect and need.
Bottom line for business
The Dell PowerEdge R510 server is a very welcome addition to Dell’s server lineup and certainly fills an important niche by providing a single-platform solution to organizations that have a wide variety of needs.
Monday, May 3, 2010
The following list provides specific information about each tool in the toolkit.
- Client Spy - A tool that helps you troubleshoot issues related to software distribution, inventory, and software metering on Configuration Manager 2007 clients.
- Delete Group Class Tool - A tool used to remove inventory group definitions along with history data, tables, views and stored procedures for the group.
- Desired Configuration Management Migration Tool - A tool used to migrate from the DCM Solution for SMS 2003 to DCM in ConfigMgr 2007.
- Desired Configuration Management Model Verification Tool - A tool used by desired configuration management content administrators for the validation and testing of configuration items and baselines authored externally from the Configuration Manager console.
- Desired Configuration Management Substitution Variable Tool - A tool used by desired configuration management content administrators for authoring desired configuration management configuration items that use chained setting and object discovery.
- Management Point Troubleshooter Tool - A tool that checks a computer system before and after a management point installation to ensure that the installation meets the requirements for management points.
- Policy Spy - A policy viewer that helps you review and troubleshoot the policy system on Configuration Manager 2007 clients.
- Preload Package Tool - A tool used to manually install compressed copies of package source files on Configuration Manager 2007 sites.
- Security Configuration Wizard Template for Configuration Manager 2007 - The Security Configuration Wizard (SCW) is an attack-surface reduction tool for the Microsoft Windows Server 2008 R2 operating system. Security Configuration Wizard determines the minimum functionality required for a server's role or roles, and disables functionality that is not required. The Configuration Manager 2007 Service Pack 2 Security Configuration Wizard template supports new site system definitions and enables the required services and ports.
- Send Schedule Tool - A tool used to trigger a schedule on a Client or trigger the evaluation of a specified DCM Baseline. You can trigger a schedule either locally or remotely.
- Trace32 - A log viewer that provides a way to easily view and monitor log files created and updated by Configuration Manager 2007 clients and servers.