2015 Interests Update

I said here that I wanted to get to 175 (from 148) and I have made it to 154 (if you count this post).  I am sure that is right on track.

The next post that I wrote (after my post count) was a list of things I wanted to work on (or that I was interested in working on) this year.

From that list, I have worked on a few items (and a bunch that weren’t on the list).  I created a PowerShell script to capture Management Pack Dependencies.  Upgrading the OS for the OpsMgr server probably wasn’t on my list, but I did that, too.

I am also taking an Azure class.  So far, most of it is stuff I am already familiar with, or at least comfortable with.  I have picked up a few concepts and found a few resources.  The “Cloud Design Patterns” looks interesting.

The rest of the items on my list are a bit more difficult to tie together.  I have been working on some documentation/automation scripts that should be useful.  I will post those when (if) I get them cleaned up enough for posting.

Operations Manager 2012 R2 Management Pack Dependencies

I am not proficient at managing Ops Manager.  I am at best a competent tinkerer.  I have been needing to do some clean up on our Ops Manager installation, and clear some management packs that are not used, or just used to generate noise that we subsequently ignore.  That is a bit of an annoying task, with trying to trace down all the dependencies.

To make it easier, I looked for  a script to log the management pack dependencies, version and ID.  I found this post from 2009, but it wasn’t very effective in the current version of Ops Manager. http://www.systemcentercentral.com/list-management-packs-dependencies-powershell-script/

So I decided to write a new one.  Here is what I came up with:

New-SCOMManagementGroupConnection -ComputerName <Your Ops Mgr Server Name>

# Create a new Excel object using COM
$Excel = New-Object -ComObject Excel.Application
$Excel.visible = $True
$Excel = $Excel.Workbooks.Add()
$Sheet = $Excel.Worksheets.Item(1)

# Counter variable for rows
$intRow = 2

$Sheet.Cells.Item(1,1) = “Parent”
$Sheet.Cells.Item(1,2) = “MP Name”
$Sheet.Cells.Item(1,3) = “Version”
$Sheet.Cells.Item(1,4) = “ID”

 

$Sheet.Cells.Item(1,1).Font.Bold = $True
$Sheet.Cells.Item(1,2).Font.Bold = $True
$Sheet.Cells.Item(1,3).Font.Bold = $True
$Sheet.Cells.Item(1,4).Font.Bold = $True
$MPCollection = Get-SCManagementPack
foreach ($_ in $MPCollection) {
$intRow++
$MPParent = $_.Name
#     Write-Host $MPParent
$Sheet.Cells.Item($intRow,1) = $MPParent
$Sheet.Cells.Item($intRow,2) = “*************”
$MPChecking = Get-SCManagementPack -Name $MPParent -recurse
foreach ($_ in $MPChecking){
$intRow++
Write-Host $intRow
$MPName = $_.Name
#         Write-Host $MPName
$MPVersion = $_.Version
$MPID = $_.ID
#         Write-Host $MPID
$Sheet.Cells.Item($intRow,2) = $MPName
$Sheet.Cells.Item($intRow,3) = $MPVersion
$Sheet.Cells.Item($intRow,4) = “$MPID”
}
}

Upgrade of System Center Operations Manager Server OS

Our Operations Manager installation is an upgrade from 2007 through (currently) 2012 R2.  The operating system was Server 2008 R2.  I like to stay current, so I was interested in figuring out how to upgrade to Server 2012 R2.  When I did a search on it, I found that there were recommendations on how to go through some complicated steps to perform the upgrade. 

And then I read a few comments where people had just updated the OS.  That seemed like the easier path so I did that.  It worked great, after I ran all the system updates following the upgrade.

The Good and the Bad of Microsoft Ignite (IMHO)

I have been attending a Microsoft conference each year since 2003.  (I think I missed one year because of a child being born close to the same time as the conference.)  Until last year, the conference that I went to was the Microsoft Management Summit (MMS).  I am an infrastructure guy so that conference seemed to be pretty relevant.  TechEd would also have been relevant, but I didn’t attend TechEd until last year when the combined MMS and TechEd. 

This year TechEd and several other conferences were all combined into one giant conference, Microsoft Ignite.  This is the first year for this conference.  As a first run, with a conference that has 23,000+ attendees, it hasn’t been too bad.  I am somewhat disappointed in the logistics.  Chicago is a great city and the dedicated bus route between the hotels and the conference center is a great idea.  Not running any buses for half the day isn’t a great idea. 

With a conference that lasts a full week and covers such a broad range of topics, you can become mentally exhausted.  Being able to go back to your hotel room, take a nap, make phone calls, answer natures call, etc. is a key factor in surviving the conference.  With a conference of this size, in a convention center that is the largest in North America, going to sessions an different topics can be a challenge. 

There are a lot of talented people at Microsoft.  I enjoy going to the conferences and hearing what they are working on, what the plans are, what I should be focusing on to be ready for the next thing they release.  I enjoy hearing about the successes, and how the non-successes are handled.  I manage infrastructure.  My interests span a wide range of topics covered at this conference. 

The good:

  • It is Microsoft
  • The presenters are very talented and knowledgeable people
  • There is a lot of information
  • They are getting better at working with customers every year
  • I like the direction they are going with their products
  • Closing party – I think for the number of people, and how it was laid out, the closing party was actually pretty good. 
  • Second screen – I did spend one afternoon, and Friday morning watching and listening to sessions from my hotel rom via the second screen feature. 

The bad:

  • Selling – I am at a Microsoft conference, to hear about technologies that I already believe in.  Can we cover the technical parts a little more, and the sales part a little less?  If there is a track for a technology, can we not cover the same sales information in every session, for 30 minutes (at least) of the 75, and focus more on the technology?
  • Session length – Most of the sessions I went to could have been handled in about half the time if the sales part had been left out.
  • Announcements – Most Microsoft conferences have announcements.  That is part of the fun.  This time, the announcements seemed a little less spectacular, and a little less fun.  It seemed that the announcements weren’t given the spotlight as much as in previous conferences.
  • Food – I don’t eat much conference food.  This time I didn’t eat any, so this next statement is strictly hear say.  I spoke to a person who claimed to eat pretty much anything, and he said the conference food was very disappointing.  Even for conference food. 
  • Crowded sessions – almost all the sessions I went to were very crowded.  I went to a variety of topics, so it wasn’t just a particular topic.  With 23,000 people, maybe there needed to be more sessions.   Although, we brought 5 people, and there were at least 2, maybe as many as 6 other people that “should” have come.  For us that is a significant number of people.

All in all, I hope that some of the issues I have with this year are resolved for next year.  I will come back next year, but I won’t be as excited as I was in years past.

Goals (or interests) for this year

I said I want to make it to 175 posts (from 148 posts).  I have been thinking (for at least 5 minutes) that one way to do that is to write about some of the things that I want to work on.  Then I could share my progress, as well as the lessons learned from each phase of each goal.  To get me started I wanted to write a list of goals.  Then I thought about it and decided I was too non-committal to call them goals.  I think “interests” is a safer term to use.  So here are some of the things I am interested in working on this year:

  • Windows Server 2016
    • Deployment methods
    • Test environment
    • Useful features list
  • System Center
    • Operations Manager
      • Management pack tuning
      • Automated issue resolution
      • Service monitoring
      • Service definitions
    • Virtual Machine Manager
      • Update Rollup 6 (already in progress, so a pretty easy one I think)
      • Azure management
    • Configuration Manager
      • Use PowerBI to examine the data
      • Report on desktop update status and health
  • Azure Stack
    • Deploy it
    • Use it
  • Roadmap
    • Work with my team (and others) to roadmap our services
    • Communicate the roadmap
  • Communication
    • Communicate our status page
    • Build some automation into the status page
  • Management
    • Be a better manager
    • Read more
    • Listen more
    • Talk less
    • Be positive

 

I am sure that I will have more things that I am interested in doing.  I am sure that a lot of the items on this list will not be accomplished.  They all need some definition.  Maybe I will update this page with links to future posts on how I am doing with all of this.  Maybe…

Blogging–the New Begining

Pretty dramatic title isn’t it?  I am posting this mostly in a humorous (to me) attempt to get myself blogging again.  I have had a blog for several years (6? 7?), but I don’t blog very much.  I think the stats say I have 148 posts.  Maybe I can make it to 200 by the end of this year?  Or at least 175.  Maybe that is a good goal.

Hyper-V Replica DC not working

I used the capabilities of Hyper-V 2012 to create a test environment that mirrors production systems (including a Domain Controller).  I couldn’t get the other computers in the environment to use the replica for authentication.  After a little more testing, I figured out that I couldn’t open AD DS on the DC. 

Lots of searching on various errors eventually let me to this blog post, where a simple registry edit solved my problem:

http://exchangeonline.in/windows-server-2012-naming-information-located-because-domain-exist-contacted/

Error after upgrading Orchestrator to 2012 R2

After upgrading from System Center Orchestrator 2012 sp1 to 2012 R2, my Runbooks weren’t running via my scheduled tasks.  After some digging, I figured out that I couldn’t open the Orchestration Console, because I kept getting this error:

Error executing the current operation.
[HttpWebRequest_WebException_RemoteServer]
Arguments: NotFound
Debugging resource strings are unavailable. Often the key and arguments provide sufficient information to diagnose the problem. See http://go.microsoft.com/fwlink/?linkid=106663&Version=5.1.20913.0&File=System.Windows.dll&Key=HttpWebRequest_WebException_RemoteServer

I did some research, but couldn’t figure it out, and there was a particular Runbook that I needed to have run every night.  So I opened a ticket with Microsoft.  In order to save you the trouble, if you come across this issue, here is the solution:

1. Enable detailed logging for the connection attempt.

Create a folder to store the log file: C:\Logs in this sample:

    initializeData="C:\logs\SRV_Traces.svclog" />

Edit the Web.Config file located in the following default location:

C:\Program Files (x86)\Microsoft System Center 2012 R2\Orchestrator\Web Service\Orchestrator2012

======================

Part1 add the following just below section <configuration>

<system.diagnostics>

    <sources>

      <source name="System.ServiceModel"

              switchValue="Information, ActivityTracing"

              propagateActivity="true" >

        <listeners>

          <add name="xml"/>

        </listeners>

      </source>

      <source name="System.ServiceModel.MessageLogging">

        <listeners>

          <add name="xml"/>

        </listeners>

      </source>

    </sources>

    <sharedListeners>

      <add name="xml"

           type="System.Diagnostics.XmlWriterTraceListener"

                 initializeData="C:\logs\SRV_Traces.svclog" />

    </sharedListeners>

</system.diagnostics>

==============

Part2 added into the  section: <system.serviceModel>

<diagnostics wmiProviderEnabled="true">

      <messageLogging

           logEntireMessage="true"

           logMalformedMessages="true"

           logMessagesAtServiceLevel="true"

           logMessagesAtTransportLevel="true"

           maxMessagesToLog="3000"

       />

</diagnostics>

2. Perform an IISRestart and test connecting to the Orchestration console to generate the error.

3. Stop the IIS Site and view the resulting log file.

4. Opening the log file using: SvcTraceViewer.exe make it much easier to parse.

You can get it either by installing (a non-express version of) Visual Studio, or by installing the (free) Windows SDKs

(http://www.microsoft.com/downloads/details.aspx?FamilyID=E6E1C3DF-A74F-4207-8586-711EBE331CDC&displaylang=en)

5. Drilling into the XML data for the "Handling an Exception" entry and locating the inner exception we found the following:

System.Data.SqlClient.SqlException: The EXECUTE permission was denied on the object ‘GetSecurityToken’, database ‘<SCO DB Name>’, schema ‘Microsoft.SystemCenter.Orchestrator’.

It appears that in uninstalling/reinstalling the Web Console the needed permissions were not updated in SQL.

6. To address this issue we ran a SQL script that was contained in the following MSI

%localappdata%\Microsoft System Center 2012\Orchestrator\Microsoft.SystemCenter.Orchestrator.ManagementServer.msi"

From the *.SQL located the file:  Microsoft.SystemCenter.Orchestrator.Roles.SQL

Using the text from this file, we created a new query to run  against the Orchestrator database to reapply the permission grant operations.

The key was step 6.  The security evidently didn’t get setup correctly on the update, and needed to be fixed manually.

Failed to power on with error the process cannot access the file

I have been moving some of my Hyper-V installs from 2008 R2 to 2012.  Because of the large number of VHD’s attached to a particular VM, I elected to disconnect the disk from the old host and connect them to the new host, and then do an import.

I did this on a few smaller instances and it worked fine, but on this one I kept getting an error every time I tried to start the VM.  The error was “Failed to power on with error The process cannot access the file…” and the path to one of the many VHDs.

In the end, I removed the antivirus.  I believe what was causing the problem was a time out trying to access all the VHDs and the antivirus was slowing it down too much.

SQL Auto Protection Fails

Using DPM 2012 had an error with SQL Auto Protection.  In the error, it says to run “AutoProtectInstances.ps1”  When I did that, I got this error:

Start-DPMAutoProtection : DPM could not enumerate SQL Server instances using Wi
ndows Management Instrumentation on the protected computer <ComputerName> . (ID: 965)
Please make sure that Windows Management Instrumentation for SQL server is in g
ood state.

A quick search turned up this article talking about protecting SharePoint.  The underlying problem was with the SQL instance that they were using so this fix worked:

http://www.mysharepointadventures.com/2013/01/fixed-dpm-could-not-enumerate-sql-server-instances-using-windows-management-instrumentation/

You do have to run the cmd from an elevated prompt.