Thursday, March 22, 2012

Setting up Master Data Services for SQL 2012 RTM



I recently had to learn how to set up Master Data Services on our development SQL 2012 RTM server.  It's supposed to be relatively straightforward to do, but I happened to run into a few issues when setting up the web application, but one of the problems I had was my fault and so we'll get to that too.  First off, lets start by installing Master Data Services.

Installing Master Data Services
Prerequisites-Database Engine Installed, can also be performed at the same time Master Data Services is installed
                    -Domain Admin rights to create databases and service accounts


1.  I'm going to assume you at least know how to install SQL Server instances and features, so this section will be relatively short.  When you're on the feature selection page of the install, Master Data Services is all the way at the bottom.  Select it, and proceed with the rest of your installation


2.  Once installation has completed, if you click on the start menu, there should be an application called "Master Data Services Configuration Manager".  Open it.   It should present you with this screen.


Ideally you should have Windows PowerShell Version 2.0 installed and IIS 7.5 already if you're on Windows Server 2008 R2, but it doesn't hurt to make sure.

3.  At this point you're going to need Administrator access with database creation permissions on the account you're logged in as, and a service account set up for master data services.  Optionally, you can select a SQL User account that has database creation permissions, like the sa account. I used my own Administrator account to create the database.  Click on the Database Configuration tab on the left, and choose to create a new database.  The Wizard will open up, click next, and you'll see this screen.  Make sure you select the account you want to use to create the database, test the connection, and then click next.

 4.  Give the database a name, I'd suggest keeping it all one string with no spaces, as given in my example below.  Keep the SQL Server default collation box checked unless you know what you're doing, I'm not going to cover how to configure the collation in the blog post.  Click Next when done.

 5.  Now here's where you assign the service account you created earlier for master data services.  Don't forget which account you used for this step, it's vital you remember which account you used as I'll explain later! Click Next.


 6.   Confirm all the parameters you want, click Next, and let it create the database and finish the wizard.





7.  Once the database has been created, you'll end up back at the database configuration screen.  Click the select database button and connect to the database you just created.  Once you've done that, the one thing you'll really want to change on here is the option to show the download excel add-in on the main page at the very bottom.  Also, you'll want to update the link to the plugin to Microsoft® SQL Server® 2012 Master Data Services Add-in For Microsoft® Excel® as the current link in there is no longer valid.  You may also want to configure a mail profile, but it's not necessary.


8.  Next, click on the Web Configuration Tab, here's where all the problems began for me.  What ended up working the best in the long run, is I created a new website, and called it MDS Test, and assigned it a port of 8080.

Once you click ok, it will give you a warning telling you that if you want to secure the website you'll have to create an SSL certificate and bind it  in IIS.  I didn't do this because the site is internal only.

 Now this should actually get you up and running with the website, and into the master data services control panel.  In this next section, I'll tell you what caused my problems also go over how to assign permissions for user accounts.
---------------------------------------------------------------------
PROBLEMS BEGIN WHEN...
The main problem I ran into here, is that I created my website with a host header.  Don't do it!  I assigned it the header of http://Denali, and once I hit OK, I received the SSL warning, clicked ok, and then I received this error.
 
I go into IIS to look at the website and find the website isn't even started.  I try to start it and it tells me: 



So I go into the event viewer, go to custom views, and administrative events, and find this entry.




It's complaining about the site binding, which you should know also has to do with that host header I told you to leave blank earlier.  Lets go look at it in IIS.



Well if that didn't look wrong I wouldn't know what does.  I had forgotten when you specify a host header using http://, that it's actually putting it into the site bindings that already has http specified.  Lets remove the extraneous information.

Before:

After:




You can actually specify a different hostname other than leaving it blank as long as you don't use any characters specified in the event viewer error.  I just left my host name blank because as I said, it's an internal website on a dev environment.

Now back on the IIS manager, click on your MDS website if you don't already have it selected, and start the website.  It should start up, but now I run into a new problem when I try to browse to it.



I get the same error if I try browsing to http://servername:portnumber.  In order to resolve this we need to disable Anonymous authentication in IIS.  Go back to the control panel, select the website, and then open up authentication.  Disable Anonymous authentication and enable Windows Integrated authentication.



Once you've done that, browse to the site, and it should open right up.  If it doesn't, then it may be just because I'm connecting a Test website to a working MDS database. !!IMPORTANT!! In any case, if you're prompted with a login window, login as the master data services account.   From there you'll be able to configure permissions of who has access to what.  Scroll down to the bottom of the page after you've logged in as the service account, and click on "User and Group Permissions".



From here, you can select either users, or groups to assign who has access to Master Data Services.  Lets start with adding your own domain account to the users tab.  Click the green + sign, and enter the domain accounts you want to add.  The same functionality applies for groups.  Once you've added a user or group, you should give it the appropriate permissions.  Click on the little arrow next to the user you want to assign permissions, click Edit, and then select Functions.



In this screen, you simple transfer over permission levels to the box on the right.

 Some users or groups will need more than Explorer Access.  They may need access to everything but User and Group permissions.  Other than that however, you've now successfully installed and configured Master Data Services.





No comments:

Post a Comment