OWSUG.ca

Welcome to Ottawa's Windows Server User Group Community!
Welcome to OWSUG.ca Sign in | Join | Help
in Search

Canadian IT Pro Blog

April 2011 - Posts

  • A Career in IT Requires more than Code, Prove you have the Skills for Free!

    Originally posted on the Canadian Developers’ Connection blog by my colleague Susan Ibach. 

    ---------------------------

    ICTC logoThe traditional view of the developer or system administrator is that of a nerd. A complete geek with no social skills whatsoever (Big Bang Theory anyone?) But those of you who have a successful career in IT understand that even though we work with technology, we also work with people. We have deadlines to meet, we have priorities to balance, we have new staff to train, we have users with requirements.

    I am a big believer in the value of certification. I think it is well worth the effort to become Microsoft certified in the technologies you use. But that is a blog for another day. Microsoft Certifications test your technical skills. If you are a hiring manager, you want to hire someone with a combination of technical and business or soft skills. This has generated demand from the industry for a certification that demonstrates business skills. How do you know an applicant has the necessary business skills for the role. Enter I-ADVANCE Certification! The Information and Communications Technology Council (ICTC) has developed certifications that validate your business skills for different IT roles. There are six professional designations you can earn:

    • Business Management
    • Technical Leadership
    • Software
    • Infrastructure
    • Hardware
    • Quality Control

    In order to offer certification, you need some form of validation that an individual has the necessary skills. ICTC has developed a set of multiple choice exams for each designation with questions to test your knowledge of the competencies. Competencies might include decision making, risk management, business analysis, analytical thinking, or planning and organizing.

    Here’s the really good news! They are ready to beta test the I-ADVANCE certification exams and they are looking for subject matter experts (ie YOU!) to do the beta testing. The results of the beta testing will be used to establish the cut score for the exams. Beta testers will take an online exam for one of the six I-ADVANCE designations in order to test the test items difficulty and quality. The time commitment is two and a half hours. Based on the results of this exam, beta testers can receive one-year certification, once the cut-score has been determined and the I-ADVANCE program becomes operational. A great opportunity for you to help ensure the quality of this new certification and possibly earn a new certification in the process.

    To register contact Gesine Freund at i-advance@ictc-ctic.ca

    My 5

    5 non technical skills I think are important to succeed in IT

    1. The ability to evaluate a tool or technology– Users have problems that technology can help solve. As IT professionals it is up to us to determine which technology is best suited to solve each problem. We need to be able to answer questions like what services or parts of our services are right for the cloud? What should we continue to host ourselves? What do we gain by moving to Silverlight or IE9? Knowing how to evaluate a tool’s strengths and weaknesses so you can pick the right tool for the job is a skill every manager and stakeholder will appreciate.
    2. A desire to learn – One of the challenges of working with IT, is the technology we work with is always changing.  So the most successful IT professionals are those who are are curious about new technologies and make and effort to learn about them. Read a blog, attend a conference, listen to a podcast. See what you can find out about Office 365, or what new features will be offered with Windows Phone 7 Mango.
    3. Persistence – There will come that day when your code just doesn’t work! And you can’t figure out why! Never give up never surrender! Well almost never Smile there does come a point where the answer is, we can’t do it this way (refer to Number 1)
    4. Research skills – You can’t know everything. You need to know where to get resources on new technologies or new features, like say the Canadian Developers blog Winking smile
    5. Willingness to ask questions – Although researching yourself is important, if it takes you half a day to figure out something that someone else could have told you in 5 minutes, you are not using your time effectively. Sadly, on some teams, asking questions is seen as weakness. I believe it is a strength, as long as you have made *some* effort on your own before you ask.
  • Virtualization Resources for all Virtualization faiths (HyperV, VMware, Xen)

    Just got word that the High Definition videos of our recent JumpStart training program on the MS virtualization stack is now available online at TechNet Edge.

    hyper-v2-large-1024x571

     

    Yup – it’s your one stop shop to get access to over 15 hours of co-presented goodness on the following topics:

    Entire course on TechNet Edge: Microsoft Virtualization for VMware Professionals

    o Platform

    o Management

    o VDI

    (Links to course materials on Born to Learn)

    Kudos to Symon Perriman and Corey Hynes and the whole Microsoft Learning team for putting this together!  The whole content will soon be published to the Microsoft Virtualization Academy. Get a head start now reviewing the content and prepin’ to write those exams!

    Rick
    IT Pro Team Blog | IT Managers Blog |Twitter | Facebook | LinkedIn

    Check out my about.me profile!

  • Deploying a Simple Cloud App: Part 6 - Taking Down the Application

    If you’ve started reading from this post, you’ll need to go through the previous parts of this series before starting this one:

    Introduction
    Part 1: Provisioning and Configuring SQL Azure
    Part 2: Provisioning a Storage Account
    Part 3: Configuring the Service Package
    Part 4: Configuring the Hosted Service, Deploying the Package, and Testing
    Part 5: Promoting from Staging to Production 

    Deploying-a-Simple-Application_thumb[3]Since this deployment is for learning purposes only, we need to make sure that we take down the deployment so as to make sure that your credit card won’t be billed.

    Dropping the SQL Azure Database

    1. From the Windows Azure Management Portal, click on Database in the left hand navigation.
    2. In the left hand top navigation, expand the subscription under which you created the SQL Azure database server and database.
    3. Expand the SQL Azure database server and highlight the NerdDinner database.
    4. Click Drop from the ribbon.

      image
    5. You’ll be asked if you want to drop the database. Click Drop.

    The database has now been dropped.

    IMPORTANT: Once a database is dropped, it can’t be restored. In a real scenario, make sure that the database you select to drop is, in fact, the database you want to drop.

    Dropping the SQL Azure Server

    1. Select the server node in the left hand top navigation.
    2. Click Drop from the top toolbar.

      image
    3. You’ll be asked if you want to drop the server. Click Drop.

    The database server has now been dropped.

    IMPORTANT: Once a database server is dropped, it can’t be restored. In a real scenario, make sure that the server you select to drop is, in fact, the server you want to drop.

    Deleting the Storage Account

    1. Click on Hosted Services, Storage Accounts & CDN from the left hand bottom navigation.
    2. Click on Storage Accounts (X) (where X is the number of storage account that you have provisioned) from the left hand top navigation.
    3. From the right hand list, expand the subscription under which you provisioned the storage account.

      image
    4. Click on the account you provisioned earlier.
    5. Click Delete Storage from the top ribbon.
    6. You’ll be asked if you’re sure you want to delete the storage service. Click Yes.

    The storage account has now been deleted.

    IMPORTANT: Once a storage account is deleted, the account and everything stored in it is deleted and it can’t be restored. In a real scenario, make sure that the account you select to delete is, in fact, the account you wanted to delete.

    Deleting the Hosted Service

    1. Click on Hosted Services, Storage Accounts & CDN from the left hand bottom navigation.
    2. Expand the subscription under which you created the hosted service.
    3. Expand the previously created hosted service.
    4. Click on the row that specifies Deployment as the type.
    5. Click Stop in the ribbon.

      image

      After a few moments, the list will refresh indicating that the deployment has been stopped.

      image

      NOTE: From a billing perspective, even though your deployment is stopped (i.e. no one can access the hosted service), you’ll still be billed for the compute hours. This is because your deployment is still consuming resources on the server to which it was deployed.

    6. With the deployment still highlighted, click Delete from the ribbon.

      image
    7. You’ll be asked if you want to delete the deployment. Click Yes.

      IMPORTANT: Once a deployment is deleted, it can’t be restored. In a real scenario, make sure that the deployment you select to delete is, in fact, the deployment you want to delete.

      After a few moments, you will see that the deployment has been deleted.

      image

    8. Click on the row that specifies Hosted Service as the type.
    9. Click Delete from the toolbar.
    10. You’ll be asked if you want to delete the hosted service. Click Yes. After a few moments, you will see that the hosted service has been deleted.

      image

    With that, you’ve now removed all of the resources that you allocated during the setup the environment.

    Congratulations!

    You have successfully set up staging and production environments, deployed an application to the Cloud, and then decommissioned those environments when they were no longer required. Let’s take a step back for a moment and reflect on what we’ve done here and the ease with which we did it. We’ve proven why Cloud computing works and how IT Pros, such as yourself, now have an infinite platform on which to deploy solutions that deliver on business opportunities without the constraints of physical infrastructure and geographic location.

    Comments and Feedback

    Take a moment to share what you thought of the walkthrough, what you’ve learned, and what next steps you’ll take on your journey to the Cloud in this LinkedIn group discussion. I’ll be reading through your responses and taking your feedback as input for next walkthrough and series of events that we’ll do together. We’ll go deeper into Windows Azure concepts and explore further.

  • Deploying a Simple Cloud App: Part 5 - Promoting from Staging to Production

    If you’ve started reading from this post, you’ll need to go through the previous parts of this series before starting this one:

    Introduction
    Part 1: Provisioning and Configuring SQL Azure
    Part 2: Provisioning a Storage Account
    Part 3: Configuring the Service Package
    Part 4: Configuring the Hosted Service, Deploying the Package, and Testing 

    Deploying-a-Simple-Application_thumb[2]_thumbAlmost done! With your testing completed, it’s now time to promote the application from the  staging environment to production. With Windows Azure, promoting from staging to production can’t be any easier.

    Promoting from Staging to Production

    1. In the Windows Azure Management Portal, from the Hosted Services screen, click on the Nerd Dinner v1.0 deployment.
    2. Click on Swap VIP in the ribbon.

      image

      Notice, the production line is empty – which makes sense since we don’t have any production instances of the solution running. If we did, the deployment name would show and this process would effectively swap the staging version of the solution (a.k.a. the new solution that we want to put up) with the current production version (a.k.a. the solution that we want to replace).
    3. Click OK.

    Within a few seconds, you’ll see that the deployment shows Ready and that the environment shows Production.

    You’re done! Don’t believe it? Test it.

    Testing the Production Application

    1. Click on the Nerd Dinner v1.0 deployment and look at the DNS name in the Properties pane. It now shows the DNS name that you reserved when you created the hosted service.
    2. Click on the DNS name it to launch the solution in the browser.

      image

    If you get a DNS error within the first little while after you promote the solution to production, don’t worry. Nothing has gone wrong – the subdomain just hasn’t had time to propagate to the DNS servers used by your ISP. After about 5 to 10 minutes, the solution should come up with no problems.

    Once you’re done testing the application and exploring all of the features and functions of the Windows Azure Management Portal, you should remove the web instance, the storage account, and the SQL Azure server and database so as to not incur any charges on your credit card. We’ll go through that next.

  • Deploying a Simple Cloud App: Part 4 - Configuring the Hosted Service, Deploying the Package, and Testing

    If you’ve started reading from this post, you’ll need to go through the previous parts of this series before starting this one:

    Introduction
    Part 1: Provisioning and Configuring SQL Azure
    Part 2: Provisioning a Storage Account
    Part 3: Configuring the Service Package 

    Deploying-a-Simple-Application_thumb[2]Good new - updating the Service Configuration file with the storage account and database information was probably the most challenging part of the deployment. Now, it’s back to wizard-based tasks.

    The Hosted Service is the container of your application in Windows Azure. It breaks down into a deployment and one or more instances of roles required to run your application. In order to run the application, a hosted service is created and the application is deployed into it.

    Let’s get started.

    Creating a Hosted Service

    1. On the top ribbon, click New Hosted Service.

      image

    2. Select the subscription under which you previously provisioned your SQL Azure server, database, and storage account.
    3. In the Service Name field, type a name for this service (e.g. Nerd Dinner). The service name will help you identify this particular service when you you have several services deployed.
    4. In Choose a URL for your service, type a subdomain name to create the URL at which your service will be available.

      This subdomain name must be unique among all the services, yours or anyone else's, running on Windows Azure.

    5. From the region drop down, select North Central US as that is the data centre in which the database and storage accounts reside and will therefore result in optimal performance.
    6. Click on Deploy to stage environment.

      It is recommended that you always deploy to the staging environment first. This will allow you to perform any kind of testing you need on the application prior to it being available for everyone to use.

    7. In the Deployment Name field, enter Nerd Dinner v1.0.

      It is also recommended that you give each deployment a name that describes the package you are deploying, such as a version.

    8. Click on Browse Locally under Package Location and browse to the location on your computer where you saved the deployment package provided by the developers. Select the NerdDinnerCloud.cspkg. Click OK.

      The CSPKG file is an encrypted file that contains all of the files that are required for deploying the application as well as the configuration information required to describe the infrastructure requirements your application needs in order to run.

    9. Click on Browse Locally under Configuration file and select ServiceConfiguration.cscfg. Click OK.

      As discussed previously, the CSCFG file contains additional configuration parameters that require easy access in order to be able to modify as necessary, such as the storage account and database information previously configured or the instance counter.

    10. The service configuration file will now be validated. You’re going to get a warning about only having one instance in your solution. Click Yes to override and submit your solution for provisioning.
    11. Windows Azure will now provision the instances. You can follow the provisioning status from the portal.

      image

    12. After a few minutes, you’ll see the status as Active. Your solution is now deployed in the staging environment.

      image

    A service deployed to the staging environment is assigned a URL with the following format: {deploymentid}.cloudapp.net. A service deployed to the production environment is assigned a URL with the following format: {hostedservicename}.cloudapp.net.

    You have now successfully deployed the application to the staging environment in Windows Azure. Before going to production, it’s always important to make sure that everything is working as it should.

    Testing the Solution in the Staging Environment

    1. From the Hosted Services page, click on Nerd Dinner (the one that is listed as Deployment under the Type column).
    2. In the Properties pane on the right, you’ll see its very long staging environment DNS name. 
    3. Launch the solution by clicking on the DNS name. Test the application to make sure that everything is working.

    Let’s go back to our to do list and see what we have to do next.

  • Deploying a Simple Cloud App: Part 3 - Configuring the Service Package

    If you’ve started reading from this post, you’ll need to go through the previous parts of this series before starting this one:

    Introduction
    Part 1: Provisioning and Configuring SQL Azure
    Part 2: Provisioning a Storage Account 

    Deploying-a-Simple-Application_thumb[2]_thumbWith the database and storage account created, the application has to be configured to use them.

    Though developers are used to placing configuration parameters in the web.config or app.config, with Cloud applications, these two files are not easily accessible. They’re wrapped into the service package that is encrypted when it’s created. For configuration parameters, such as database connection strings and storage account details, it’s best to place these in the Service Configuration file. This way, the parameters can be changed at any time and will not require the service package to be recompiled and re-uploaded.

    Technically you can provide the database and storage account information to the developers who can go into the service configuration file, make the changes, and then send it to you. However, in order to maintain separation of concerns (required by some regulatory bodies) and to maintain the security of the information, it is best not to share the configuration information unless absolutely necessary. The service configuration file is an XML file that can simply be edited using Notepad or your favourite XML editor. For this walkthrough, we’ll use Notepad.

    Let’s get started.

    Open the Service Configuration File

    1. Use Notepad to open the ServiceConfiguration.cscfg file provided in the deployment package from the developers."

      image

    Retrieve and Setting the Storage Account Information

    1. If you closed the Windows Azure Management Portal window, log back in.
    2. Click on Hosted Services, Storage Accounts & CDN in the left hand bottom navigation.
    3. Click on Storage Accounts (X) (where X is the number of storage accounts that you have provisioned. Most likely this will be 1).
    4. In the list on the right hand side of the screen, click on the storage account previously created.

      image
    5. Click View under Primary access key in the right hand Properties pane.

      If the properties pane is not visible, it may be closed. Click the arrow at the top of the closed properties pane to open it.

    6. Click on Copy to Clipboard to the right of Primary Access Key.

      image

    7. You may receive a message from Silverlight asking if you would like to allow the application access to your clipboard. Click Yes.

      image
    8. Click OK to return to the storage account list.
    9. With the storage account still highlighted, make note of the Account Name in the Properties pane. You’ll need that as well.
    10. Go back to your Notepad window.
    11. Locate the below in the file:

      image
    12. Replace [AzureStorageAccount] with the Account Name noted in the Properties pane.
    13. Replace [AzureStorageKey] with the key copied to the clipboard from the Management Portal.
    14. Save.

    The application is now configured to use the storage services account securely.

    Retrieving and Setting the Database Connection Information

    1. If you closed the Windows Azure Management Portal window, log back in.
    2. Click on Database in the left hand lower navigation.
    3. Expand the subscription node under which you provisioned the SQL Azure server in part 1.
    4. Expand the SQL Azure server under which you provisioned the NerdDinner database in part 1.
    5. Click on the NerdDinner database.
    6. Click on the button under Connection Strings in the Properties pane. A message will pop up displaying the connection string to use in the application to connect to the SQL Azure database.

      image
    7. Since the application the developers packaged up for you is a .NET-based application, you’ll be using the ADO.NET connection string. Copy the ADO.NET connection string.
    8. Click Close.
    9. Go back to your Notepad window.
    10. Locate the below in the file:

      image
    11. Highlight the text between provider connection string=" and " “/> and replace it with the connection string you copied to the clipboard. Make sure you don’t delete the two " tags.
    12. Find Password=mypassword in the text you pasted in. Replace mypassword with the password of the SQL Azure server provisioned in part 1.
    13. Save.

    The application is now configured to use the SQL Azure database.

    Let’s go back to our to do list and see what we have to do next.

  • Deploying a Simple Cloud App: Part 2 - Provisioning a Storage Account

    If you’ve started reading from this post, you’ll need to go through the previous parts of this series before starting this one:

    Introduction
    Part 1: Provisioning and Configuring SQL Azure 

    Deploying-a-Simple-Application_thumb[2]The architecture of the application also calls for Windows Azure storage to store some of the application’s configuration data, as well as data for the ASP.NET providers.

    If you’d like to find out more about Windows Azure Storage, read through the Windows Azure Storage section in Introduction to Windows Azure Platform on the Microsoft Patterns and Practices site.

    Let’s get started.

    1. If you’re not already logged in to the Windows Azure Management Portal, navigate to the portal and log in.
    2. From the ribbon, click on New Storage Account.

      image
    3. Choose your subscription from the subscription drop down.
    4. Choose a unique URL prefix for your storage account.

      Storage accounts have unique URL prefixes under the cloudapp.net domain. You’ll need to choose a unique prefix as this is the address that allows HTTP based access to the application’s storage services and you wouldn’t want someone else accessing your storage services.

    5. As with the SQL Azure server, we need to specify a region or affinity group for our storage account. For the purposes of this walkthrough, select North Central US.
    6. Click Create to kick off the provisioning process. Within a few moments, the view will update, displaying the created storage account.

      image

    That’s it for the storage account. We’ll come back to here later on in order to grab the configuration information the application will need in order to securely connect to the storage services.

    Let’s go back to our to do list and see what we have to do next.

  • Deploying a Simple Cloud App: Part 1 - Provisioning and Configuring SQL Azure

    If you’ve started reading from this post, you’ll need to go through the previous parts of this series before starting this one:

    Introduction

    Deploying-a-Simple-Application_thumb[2]

    The architecture of the application calls for a SQL Azure database to store the application’s data. The developers have created the database on their on-premise development SQL Server instance and since you can’t simply detach the database from SQL Server and then attach it to the SQL Azure server, they have scripted the database for SQL Azure and have included it in the deployment package.

    To find out how the on-premise SQL database was scripted for SQL Azure, see the part 2 of the developer walkthrough, Scripting the On-Premise Database for SQL Azure.

    Let’s get started.

    1. Log in to the Windows Azure Management Portal.

      Once you get started with Cloud services, you’re going to be visiting this site often. I highly suggest bookmarking it or committing https://windows.azure.com to memory.

    2. In the navigation menu on the left, you’ll find the Databases button. Click on the Databases button.

      image

      At the top, you’ll see a list of Windows Azure subscriptions that are associated with your Windows Live ID.
    3. Click on the subscription that will host your SQL Azure server(s) and database(s). You’ll see a listing of all the SQL servers associated with your subscription. We’ll come back to this screen later on and you’ll see it populated with server information.

    Provisioning the SQL Azure Server

    1. Click on Create in the Server tab group of the toolbar (located at the top of the screen). The Create Server dialog box will popup where you’ll configure your SQL Azure server. The neat thing here is that you’re actually provisioning a server as if you would in your own data centre, except you’re doing it through a wizard and the actual work of installing Windows Server, SQL Server, and configuring everything is done for you.

      image
    2. Select a Region. Selecting a region allows you to host your database in one of several regions (data centres) around the world. This allows you to geo-locate your database servers throughout the world in order to optimize performance. For this walkthrough, select North Central US.
    3. Click Next.
    4. Now you have to create your administrative credentials so that you can log in to the database. SQL Azure uses SQL authentication, so this process is like setting up your “sa” login on an on-premise box. Choose a login that is unique. Usernames like “admin”, “administrator”, “sa”, “root”, “guest”, “dbmanager”, and “loginmaster” are not allowed – people know these logins, so to minimize any security exposure, you’re prevented from using them.

      image

      Notice the red warning? I tried to use an easy password (“demo” – clearly not a strong password!). The red warning highlights the password rules that you have to use when creating a password to ensure that everything is kept secure. As soon as you enter a password that meets the rules, the warning will disappear and the Next button will become available.
    5. Click Next.
    6. Now we have to create firewall rules so that our database can be accessible. Typically, you’ll just want your application connecting to the database, so you’ll add the IP of the server that hosts your application. Similarly here, select Allow other Windows Azure services to access this server to allow the application hosted in Windows Azure to access the SQL Azure server.
    7. We’ll also need access to the database from our local machine so that we can use SQL Management Studio (or the SQL management tool of your preference). Click on Add to add a new firewall rule to the list.

      image
    8. First things to do is to give the rule a name. The best thing to do is to give the rule a name based on the location from which you’re going to be connecting – something like “Toronto Office”. This will make it easy for you to locate the rule in the future and remember its purpose.

      It is recommended that you add the firewall rule right before you start working and make sure to remove it when you’re done. This just makes sure that your database(s) stay secure at all times.

    9. After naming the rule, enter the starting and ending range of the IPs that will have access to the database. Notice that your IP is shown at the bottom. If you’re creating a rule for yourself (this is what we’re doing in this walkthrough), the guess work is taken out of the equation – you can simply use the IP address shown for both the start and end range.
    10. Click on Finish. You’ll notice a little green wheel spinning. This tells you that the server is being provisioned.

    The server is now provisioned.

    screen 

    We can now see that we have one server provisioned. At a glance, we can see the server name, user, region, and the fully qualified server name. We’re going to need these later on when we connect to the server.

    Creating the Database

    1. Now that we have a server, the next step is to provision a database on that server. While still on the Subscription Home screen, click on Create in the Database group of the ribbon. Notice the same wizard-like approach as creating a server.
    2. Give the database a name. For this walkthrough, we’ll use NerdDinner (that’s the app that’s going to use this database).
    3. Select an edition. For the purposes of this walkthrough, let’s use the Web Edition.

      For more information on the differences between the editions, see the SQL Azure FAQs.

    1. Select a size. We’ll stick with 1GB for now since that’s all we need for this application.
    2. Click OK. You’ll see the green wheel spinning meaning. Like before, the provisioning process is now occurring. Once it’s done, we’ll have a database.

    That’s it! We now have a database. Let’s see what that database looks like. Go over the left navigation pane, and expand the subscription and then expand the server. There’s our database. Click on it.

    image

    You’ll now see some information about the database in the right-hand side Properties pane.

    If you’re interested in the online Database Manager, click on Manage from the toolbar. You can manage the database online as well as with the SQL tools that you’re already familiar with.

    Connecting to SQL Azure Server

    1. In the Windows Azure Management Portal, click on the previously provisioned server. The Properties pane on the right-hand side of the screen will refresh with the server information.

      If, for some reason, you can’t see it, hover your mouse on the right-hand side of the screen until you see the cursor change to a two arrow cursor. Drag it towards the left and the Properties pane will appear.

      image

    2. In order to connect to the database, we’re going to need the fully qualified DNS name of the server. Highlight the value in the Fully Qualified DNS Name and press CTRL+C.

      Remember, the Windows Azure Management Portal is a Silverlight application. Don’t bother trying to right-mouse click to copy because you’re just going to get the Silverlight menu.

    3. Open SQL Server Management Studio and open a new connection.
    4. Paste the server name in the Server name field.
    5. Change the authentication type to SQL Server Authentication.
    6. Enter the administrator login and password setup earlier in the Login and Password fields respectively.

      If you don’t remember the login, just flip back to the Windows Azure Management Portal and it will be in the Properties pane.

      image

    7. Before we click on Connect, click on Options.
    8. We want to make sure that the connection is secure. To do that, click on Encrypt connection.
    9. Click on Connect. Give it a few seconds and you’ll be connected.

      image

      Notice the icon next to the server name? The icon is blue, indicating that the connection is to a SQL Azure server. Expand the Databases node to see our NerdDinner database.

    10. Open the first of the developer provided scripts. From the File menu, click on Open, and then select File. Select InstallCommon.sql.

    11. Change the database to NerdDinner and click Execute.

      image

      It should run relatively quickly and execute with no problems.

    12. Repeat steps 10 and 11 for each of the provided scripts. Don't forget to ensure that the NerdDinner database is selected before running each script.
    13. Let’s check that the tables and stored procedures were created. Expand the NerdDinner database. You should now see tables and stored procedures.

      image

    That was relatively painless, right? Not too different from running scripts against your on-premise SQL Server, right? Right! Congratulations! You have now successfully deployed the SQL Azure database.

    Online Database Manager

    Let’s pause for a moment and look at a scenario where you may not have SQL Server Management Studio available to you. No problem. You can deploy the scripts from the online management console.

    1. Go back to the Windows Azure Management Portal.
    2. Click on the NerdDinner database, and then click on Manage in the ribbon. A new tab or window will open. It’s going to open up a new tab.

      If you have a pop-up blocker, it may prevent the window from opening. Allow the window to pop-up in your pop-up blocker, and click on Manage again.

    3. All the login information is pre-populated because you previously selected the database. Just enter your password and click Connect.

    You can do pretty much everything from here. New query, tables, etc. For example, to deploy scripts:

    1. Click on Open Query.
    2. Select a script file and click Open.
    3. Click on Execute.

    image

      There you have it – deployments from anywhere!

      SQL Azure Deployment Completed

      With that, we’re done the SQL Azure portion of our deployment. Let’s review what we did:

      • We created a SQL Azure Server.
      • We created a SQL Azure Database.
      • We connected to the SQL Azure database, and executed the scripts provided by the developers against it.

      Let’s go back to our to do list and see what we have to do next.

    1. Deploying a Simple Cloud App

      Deploying-a-Simple-Application_thumb

      I’d like to take this opportunity and introduce myself, as this blog post series is my debut on the Canadian IT Professionals blog. My name is Jonathan Rozenblit (@jrozenblit). I work alongside Rick and Damir though I focus on the developer tools and platforms. Windows Azure is one of those technologies that is both an infrastructure platform and a development platform, so when it comes to Windows Azure, I’m an developer evangelist as well as an IT Pro evangelist.

      As I work with developers throughout the country, showing them what’s possible with Windows Azure, the conversation always comes up around environment setup, deployment, scaling, and decommissioning. Developers should know how things work; however, companies that have IT departments usually delegate Cloud services responsibilities to you, the IT Pro. As Rick mentioned here on the blog time and time again - "The Cloud is Coming" and it's best that you get in front of the ball and learn how this works in order for you to have more of a PROACTIVE conversation about cloud technologies instead of a nay-sayer reactive conversation. Position yourself as a thought leader who understands what the implications of cloud technologies are and demonstrate you already know how to leverage them.

      Having said that, I’d like to take this opportunity to walk YOU though the steps required to deploy an application to the Cloud. Before we get started, you’ll need a Windows Azure account, which you can get by either activating a new Windows Azure Introductory Special or a Windows Azure Pass. You can find out more about these here.

      In this walkthrough, we’ll deploy a simple ASP.NET MVC application that the developers have converted from an on-premise hosted application to a Cloud-ready application.

      What We’ll Need

      Here’s the deployment package prepared by the developers. You’ll need to download the package before you proceed.

      Here’s what we’ll need from an infrastructure perspective:

      1 SQL Azure database to store the application’s data
      1 Storage Account to store some of the application’s settings and provider data.
      1 Hosted Service as a Web Role to host the application itself

      How We’re Going To Do It

      We’re going to:

      Since this deployment is for learning purposes only, we’ll also want to make sure that we take down the deployment so as to make sure that your credit card won’t be billed.

      As you’re going through this walkthrough, if you run into any trouble or have any questions, feel free to send me an email. I’d be more than happy.

      Comments and Feedback

      At the end of the walkthrough, please take a moment to share what you thought of the walkthrough, what you’ve learned, and what next steps you’ll take on your journey to the Cloud in this LinkedIn group discussion. I’ll be reading through your responses and taking your feedback as input for next walkthrough and series of events that we’ll do together.

    2. Office 365 Public Beta is Available!!

      logo-office-365Over the last few weeks Ruth Morton and I have been out on the AlignIT Tour talking to IT managers about how organizations can embrace the cloud and increase IT staff and end user productivity.  During the tour we got a lot of questions regarding Office 365 and when it will be available for everyone to try.  Well, the wait is over.  Office 365 is now out as a public beta, meaning you can now sign up for the beta and give it a try!!

      For those of you not familiar with Office 365, it is the successor to our Business Productivity Online Suite (BPOS) and is the next generation or business productivity tools – also with a much better name!  Office 365 includes the ability to provide hosted email and calendaring with Exchange Online, an online location for your staff to collaborate through SharePoint Online,  as well as the ability to have real-time presence information and the ability to take part in video conferences using Lync Online.  There are several different subscription levels starting for as little as $7 per month per user, but you can enjoy the beta for free.  In fact, some of the subscription levels also include rights to Microsoft Office Professional Plus 2010 as part of your service plan!

      If you have not yet signed up for the public beta of Office 365, visit www.office365.ca to find out more and sign up today.  There you will be able to gain an insight into the various service offerings available for organizations of all sizes from small businesses who don’t have IT expertise or the desire to invest in infrastructure but whose staff just want to be able to work the way they want no matter where they are, right up to the largest organizations looking to integrate Office 365 with their on-premise business productivity infrastructure so better serve their users. 

      If you want to keep up with the latest information about Office 365, you should also visit the Office 365 Blogs site, where you can learn about how to take advantage of Office 365 for your business, the integration of cloud-based services like Exchange Online and SharePoint Online with your on-premise infrastructure providing a seamless user experience as well as single sign-on with your Active Directory, and more.  As well, you can find out about the “Ready for Work” contest where you can win $50,000, a one-year subscription to Office 365 for your business, and more just by sharing your story on our Facebook group.  So, go ahead and share your story today!

      Based on the number of questions I have been getting asked about it, Office 365 is of interest to many of you.  Now’s your chance to take it out for a spin and see if it fits your business.  As always, please share your feedback with us and let me know if you have any questions.  So go ahead - sign up for the Office 365 beta right now!

      DamirB-BlogSignature

    3. Creating HA VMs for Hyper-V with Failover Clustering using FREE Microsoft iSCSI Target 3.3

      In my last piece (Creating a Storage Area Network Using Microsoft iSCSI Software Target 3.3) I showed you how to create software Logical Unit Numbers (LUN). In this article we are going to take what we have learned to leverage the benefits of a SAN device to create redundancy for our Hyper-V environment. We will:

      1. Create a failover cluster between two servers (nodes);
      2. Enable Cluster Shared Volume (CSV);
      3. Ensure Hyper-V is properly configured on both nodes;
      4. Create a highly available virtual machine (HAVM); and
      5. Test both Live Migration and Failover between the nodes.

      The equipment I am using for these demos are matching HP EliteBook laptops with Intel Core2 Duo T7700 CPUs and 8 GB of RAM. They are both running Windows Server 2008 R2 Enterprise Edition Service Pack 1. For most clustering there is no requirement for identical machines. For Hyper-V Live Migration, the ultimate goal of the article, the CPUs of all nodes have to be of the same family (a limitation of live migration from any vendor). Enterprise Edition (or Datacenter Edition) is required as Failover Clustering is not a feature of Windows Server Standard Edition. Because we are also using Cluster Shared Volumes this must be performed on Server 2008 R2.

      Proper networking is of course a requirement… although I strongly recommend having a dedicated network for storage, in this case I am using a simple D-Link gigabit switch to connect my two portable nodes, and have ensured that proper networking has been configured between my hosts:

      • host1.alpineskihouse.com (172.16.10.10)
      • host2.alpineskihouse.com (172.16.10.11)

      Connecting your second server to the iSCSI Target

      In the previous article we configured our LUN to present to host1. Before we create our cluster we have to repeat these steps for host2, or there will be no shared storage.

      In the server where the iSCSI Software Target is configured:

      1. Open the iSCSI Target (Start – Administrative Tools – Microsoft iSCSI Software Target)
      2. Right-click on LUN1 and click Properties.
      3. In the iSCSI Initiators tab click Add…
      4. In the Add/Edit Identifier screen select IP Address as the Identifier Type. Enter the Value as the IP Address of your second server, and click OK.

      clip_image002

      A dialogue box should appear warning you that you are assigning multiple initiators to a single iSCSI target. Accept the warning by clicking Yes. Click OK in LUN1 Properties.

      In the second server (host2)

      1. Open the iSCSI Initiator (Start – Administrative Tools – iSCSI Initiator (If there is a notice to enable the iSCSI Initiator Service accept it)
      2. In the Targets tab enter the IP address of your iSCSI Software Target and click QuickConnect…
      3. In the Quick Connect window you should have confirmation that you have discovered a target, along with its IQN. Click Done.
      4. In the Volumes and Devices tab confirm that your two volumes are listed, and click OK.
      5. Open Disk Management, and bring both volumes on-line. Assign them the same drive letters you had assigned them in host1.
      6. Log off of host2.

      Create a failover cluster between two servers (nodes)

      The first step requires installing the Failover Clustering feature in Windows Server. As with any other feature this is fairly simple:

      1. In Server Manager click on Features, then click Add Features.
      2. Select Failover Clustering and click Next.
      3. On the Confirm Installation Selections screen click Install.
      4. When you have successfully installed the feature, repeat the process on all servers.
      5. In Host1 open Failover Cluster Manager (FCM) (Start – Administrative Tools – Failover Cluster Manager)
      6. In FCM click Validate a Configuration…
      7. In the Select Servers or a Cluster screen enter the names of the servers (in this case Host1 and Host2, which can be added individually or together separated by a semi-colon) and click Add; when the servers appear in the Selected Servers box click Next
        clip_image004
      8. In the Testing Options screen, make sure that radio button next to Run all tests (recommended) is selected.

        Note: It is an easy step to skip… and a potentially disastrous one. Running the Validation tests lets you see what might not work properly so that you can fix it. By not running the Validation tests you can not only set yourself up to fail, you can also pretty much guarantee that when your cluster does fail that nobody will be able to help you! 
      9. On the Confirmation screen click Next to begin the tests. This process will run for several minutes. Be patient!
      10. Once the Validation tests are complete you should receive a message in the Summary screen that looks like the one below, stating that your configuration appears suitable for clustering, despite some warnings. You can view the complete report if you’re curious. Once you are finished, click on the link to Create the cluster now using the validated nodes….
        clip_image005
        The Create Cluster Wizard will open. After reading the information click Next on the Before You Begin screen.
      11. In the Access Point for Administering the Cluster screen assign the cluster a name and an IP address in the appropriate subnet, and click Next.
      12. On the Confirmation screen confirm your settings are correct and click Next.

      The cluster will take a few minutes to create; be patient! You should get a Summary screen like the one below. Click Finish.

      clip_image007

      Enable Cluster Shared Volumes

      Cluster Shared Volumes (CSVs) is a feature of Failover Clustering in Server 2008 R2 for Hyper-V; it is a standard clustered NTFS volume that is available to all nodes that gives the HAVM (Highly Available Virtual Machines) complete mobility as any node can be an owner.

      To enable CSVs:

      1. On host1 open Failover Cluster Manager (Start – Administrative Tools – Failover Cluster Manager).
      2. If your cluster is not opened automatically, click Manage a Cluster and select your cluster from the drop-down list.
      3. In the main window under Configure click Enable Cluster Shared Volumes… You should receive the following warning in a pop-up window:

      “The Cluster Shared Volumes feature is only supported for use with Windows Server 2008 R2 Hyper-V role. Creation, reproduction and storage of files on Cluster Shared Volumes that were not created by the Hyper-V role, including any user or application data stored under the ClusterStorage directory of the system drive on every node, are not supported and may result in unpredictable behavior, including data corruption or data loss on these shared volumes.

      For information regarding support services, please see http://go.microsoft.com/fwlink/?LinkId=137158.”

      Click the check-box and click OK. Cluster Shared Volumes should now appear in the navigation pane under your cluster.

      clip_image008

      1. In the navigation pane click on Cluster Shared Volumes.
      2. In the Actions Pane click Add storage.
      3. The Add Storage window will appear; select the Cluster Disk 2. You can expand it to see your configuration is correct (as shown). Click OK.

      clip_image009

      Under Cluster Shared Storage you should now have your CSV configured. It is essentially a hard-link to your VHD that sits on the C drive on the host node under C:\ClusterStorage\Volume1.

      clip_image011

      Ensure Hyper-V is properly configured on both nodes

      Ensure the Hyper-V role is installed on all nodes in the cluster

      Hyper-V is an easy role to install. To ensure that it is installed, open Server Manager on each node, click on Roles, and ensure that Hyper-V is listed under Roles Summary. If it is not, add it now.

      clip_image013

      Ensure Virtual Networking is properly configured on all nodes in the cluster

      Under Virtual Networking you must ensure that each host has a virtual network that is identically configured. The name and connection type must match, else failing over will truly fail.

      clip_image015

      Create a Highly Available Virtual Machine (HAVM)

      There are two ways to create a highly available virtual machine.

      1. Configure an existing Virtual Machine (VM) as Highly Available; or
      2. Create a new Highly Available Virtual Machine (HAVM).

      For the purpose of this article we are going to create an HAVM.

      1. In host1 open Failover Cluster Manager (Start – Administrative Tools – Failover Cluster Manager).
      2. In the navigation pane navigate to Ski-Cluster – Services and applications.
      3. In the actions pane click Virtual Machines… click New virtual machine >. Select the node on which you wish to initially create it. For the sake of this article I will create it on host2.

      The New Virtual Machine Wizard will launch. Create the VM as you would any VM, ensuring that:

      • The Location of the VM is C:\ClusterStorage\Volume1\.
      • The Connection is connected to a virtual network that is identically configured on both (all) nodes.
      • The virtual hard drive is created in C:\ClusterStorage\Volume1\. If you are using a pre-created virtual hard disk, first move it to the shared storage.
      • Install an OS on the new VM.

      Note: You can install the OS on the VM on host2 from host1 in a number of ways; one way is to open Hyper-V Manager in host1, right-click on Hyper-V Manager in the navigation pane, and click Connect to Server… then type the host name (or IP Address) of host2. However you can also launch the Virtual Machine Connection from within the Services and Applications window in Failover Cluster Manager.

      Configuring HA and Testing Live Migration

      Once you have an HAVM created, we can configure it and then test it out.

      1. In host1, open Failover Cluster Manager and Hyper-V Manager. Connect to host2 and confirm that your highly available virtual machine is running.
        clip_image017
      2. In Failover Cluster Manager navigate to Services and applications. Right-click on your HAVM and click Properties.
      3. In the General tab select Host2 as the Preferred owner. Ensure the checkboxes for Enable persistent mode and auto start are selected.
      4. In the Failover tab select the radio button Allow failback. Click OK.
      5. In the Services and applications window right-click on your HAVM; hover on Live migrate virtual machine to another node and click (in the call-out) 1 – Live migrate to node Host1.

      clip_image019

      The HAVM should migrate relatively quickly to Host1. Verify in the Services and applications section that your HAVM is now owned by Host1. In Hyper-V Manager manage Host1 and verify that it is there.

      Following the same steps as above, Live Migrate your HAVM back to Host2.

      Testing HA Failover

      Now that we have performed an Active Live Migration, we have three tests left to go:

      • Perform a shutdown Live Migration
      • Verify Failback
      • Test Dead-hardware Failover.

      1. On Host1 make sure Failover Cluster Manager is open and that you can see that your HAVM is running on Host2.
      2. Log into Host2 and Restart it!

      clip_image021

      Notice in Failover Cluster Manager that the HAVM is restored on Host1 but in reality it is a Quick Migration, and the VM is not rebooted.

      Once Host2 is rebooted, after a few minutes your HAVM should fail back to its preferred owner. This may take a few minutes! Do not continue until the current owner for your HAVM is Host2.

      clip_image023

      Our last test is so simple that you can ask the least technical person in the room to do it. Turn off Host2. Do not perform a shutdown – this is supposed to simulate hardware failure. If it is a laptop unplug the power source and then remove the battery. If it is a server then just yank the power cord!clip_image025

      Within a second or two the HAVM should restart on Host1… it will be the equivalent of a dirty boot, but it will come up, alive and well. When you restart Host2 the HAVM will fail back to it just as it did before.

      Does it look and feel like black magic? Probably… but you’ll get used to it; you will get used to high availability without the high costs; you will get used to redundancy without excess hardware. Most of all you will be able to rest easy, knowing that your Hyper-V environment is truly highly available, and that you were able to do it all using a bunch of free tools from Microsoft.

      What’s next? Build it! Test it! Implement it! Love it! At long last we have true redundancy available for all.

      Mitch Garvis, MCT | Senior IT Consultant & Trainer | SWMI Consulting Group
      My blog | Twitter | Facebook | LinkedIn | MVP Profile

      I'm a PC

    4. We’re growing… And we need you!

      imageAs many of you know I work for Microsoft Enterprise Services as a Senior Technical Account Manager.  I've been here for 6 years and I constantly get the question “what is it like to work for Microsoft?”. I always answer the same thing.  “it’s fantastic!”. You get to work with really smart, interesting people, on challenging engagements. and the environment and culture is second to none.

      imageWhile we’re on the subject of places to work. Microsoft Canada has earned the coveted “Best Workplaces in Canada” and we’re very proud of that.

      The list was published as a Special National Report in The Globe and Mail on April 12, 2011


      Anyway,back to the point of this post.  We’re growing.  This is a year of growth for us and we are constantly looking for additional talents to join our Services family.

      To that end we will be hosting our own Microsoft Canada Career Webinar on On Wednesday, April 20th, at 6:30pm.

      By attending you could discover new and exciting career opportunities in the following areas:

      • Technical Consulting
      • Support Engineering
      • Service Delivery Management

      By being part of this event and have a chance to interact with leading professionals in the industry.  so go. Visit www.microsoft-webinars.com and register for the Webinar. 

      The webinar will highlight:

      • An introduction to Enterprise Services
      • Current open opportunities and future growth opportunities
      • Testimonials from our technical professionals

      you won’t regret it.  such an easy thing to do in order to get a glimpse of what’s possible for you.

      Cheers!

      Signature

      Pierre Roman, MCITP, ITIL | Senior Technical Account Manager | Directeur de Compte Technique Senior
      IT Pro blog | Twitter | Facebook | LinkedIn

    5. Security Bulletins for the Regular IT Guy–# 29, April 2011

      150x150-11Over pints Pierre Roman, Bruce Cowper and Rick Claus decided they would put together a concise and timely podcast each “Update Tuesday”. The object is to keep it simple by letting you know in plain non technical language what the updates are, what they resolve and why you should care.

      As always - if you have suggestions on making it better - please pass on your comments. Mail Rick directly  – rick.claus@microsoft.com

      Direct Download:

      mp3

      Subscribe to the podcast: (so you don't miss an episode)

      zunebtn rssbtnitunesbtn

      Disclaimer: This podcast was produced with the best information available to us at the time of recording. Your primary source for all things Security Bulletin related should always be the Microsoft Security Response Center blog.

      Bulletins discussed for April12th, 2011:

      Podcast Participants: Rick Claus, Pierre Roman

      Additional Technical Show Notes:

      • Sorry for the delay – Rick was sick and on the road.
      • PodSafe music from PodSafe Music Network @ http://music.podshow.com/. Artist: Derek K Miller, song - “You’re the Big Sky - rock guitar instrumental”

      Rick
      IT Pro Team Blog | IT Managers Blog |Twitter | Facebook | LinkedIn

    6. Creating a SAN using Microsoft iSCSI Software Target 3.3

      When Microsoft released their iSCSI Software Target to general download in April they opened up a world of possibilities for smaller companies (as well as IT Pros and hobbyists) who use servers, but cannot justify spending thousands of dollars on a Storage Area Network (SAN) device. In this article I will show you how to create a virtual SAN in your environment.

      Installing the iSCSI Software Target (available here: http://www.microsoft.com/downloads/en/details.aspx?FamilyID=45105d7f-8c6c-4666-a305-c8189062a0d0) is a simple process. It comes as a self-extracting package which installs seamlessly on any Windows Server 2008 R2 operating system (RTM or SP1). Once installed it appears under Administrative Tools.

      clip_image002

      clip_image004Before we create our iSCSI Target we will create two VHD files: One as our Witness Disk and one for Shared Storage. Right-click on Devices and click Create Virtual Disk.

      In the Create Virtual Disk Wizard type the full name (including directory structure) of the VHD file you want to create. The Witness Disk does not have to be very big (8GB is my norm), but the Shared Storage Disk should be as large as you would need it to be… depending on what you will be storing it might need to be quite large.

      1. In the Welcome screen click Next.

      2. In the File screen type the name and location of the VHD file you want to create (c:\disks\Witness.vhd) and click Next.

      3. In the Size screen enter the size of the VHD in megabytes (for the Witness disk enter 8192) and click Next.

      4. In the Description screen enter a description (Witness Disk) and click Next.

      5. On the Access screen click leave the fields blank and click Next. We will configure this once we create our Target.

      6. On the Completing the Create Virtual Disk Wizard screen click Finish.

      clip_image006Make sure to repeat these steps for the Shared Storage disk, changing only the file name, description, and size appropriately.

      For each VHD two files will be created – the Virtual Hard Disk file which will be Fixed Disks, and a Microsoft iSCSI Software Target Change Tracking Bitmap file, which is a .cbm file that Microsoft uses for integrity checking.

      Now that our storage is allocated we will create our iSCSI Target. To begin we will right-click on iSCSI Targets in the navigation pane and click Create iSCSI Target.

      1. In the Welcome screen click Next.

      2. In the iSCSI Target Identification screen enter the name of your iSCSI target. This will be the name of your Logical Unit Number (LUN). You can also optionally enter a description. Click Next.

      NOTE: Although not a requirement, it is a best practice to exclude punctuation, especially periods and dashes, as they are used in the iSCSI Qualified Name (IQN) that will be created by both the target and initiator.

      3. In the iSCSI Initiators Identifiers screen we will select the Windows machines that will be able to access the iSCSI target. Click on Advanced… to enter the DNS domain name, IP address, MAC address, or multiple pre-determined IQNs. In most cases the iSCSI Initiators of your devices will not have been enabled yet, but by entering their IP address you can save extra steps later.

      clip_image008There are two components of an iSCSI SAN – the target, which is the LUN on the actual SAN device, and the initiator, which is the computer that will be accessing it. Because SANs are commonly used with clusters, it is possible to have several initiators configured to access a single target. However if the target is not configured for the initiator, it will be invisible to that system when it tries to access it.

      4. Click Next on the iSCSI Initiators Identifiers screen, then click Finish on the Completing the Create iSCSI Target Wizard screen.

      clip_image010At this point your iSCSI target has been created. We can look at the properties by right-clicking on the iSCSI Target we created and click Properties.

      The LUN properties box should have five tabs: General, iSCSI Initiators, Authentication, Virtual Disks, and Advanced.

      Under the General tab you will see (for the first time?) your IQN. In the example created for this article it is iqn.1991-05.com.microsoft:ski-storage-lun1-target. This convention may appear long and convoluted, but it can be broken down into two parts… the device manufacturer and the actual target.

      Because we are using the iSCSI Software Target, the manufacturer is Microsoft, and because their domain name (microsoft.com) was registered in May of 1991 the first part of our iqn is 1991-05.com.microsoft. (If you had an EMC device, you would have an IQN of iqn.1997-07.com.emcJ

      The first part of the IQN is separated from the second part by a colon. The actual target (LUN1) is on a server called Ski-Storage, hence ski-storage-lun1-target.

      Under the iSCSI Initiators tab you can see, add, edit, and remove initiators. This will be important if you plan to add new initiators to a cluster, for example.

      Under the Authentication tab you can set CHAP (Control Host Authentication Protocol). This is the only method of authentication supported by iSCSI.

      Under the Virtual Disks tab we will add our pre-created VHDs.

      1) Click Add…

      2) Select both disks and click OK.

      3) In the LUN Properties screen click OK.

      At this point our LUN is created and populated, and ready to go! Now it is a simple matter of pointing our initiators to the device.

      In Windows Server, click Start – Administrator Tools – iSCSI Initiator to launch the iSCSI Initiator. If this is the first time you are running it on your server you will be warned that in order to run the Initiator, the Microsoft iSCSI Initiator Service must be running, and that Windows will configure it to auto-start.

      In the iSCSI Initiators Properties box there are six tabs: Targets, Discovery, Favorite Targets, Volumes and Devices, RADIUS, and Configuration.

      clip_image012In the Targets tab type the IP address of the server on which you configured your software target, and click Quick-Connect… In the event of a successful connection a Quick Connect window will appear with the IQN of your iSCSI target and the status Connected in the Status column. Click Done to close the Quick Connect window.

      The IQN of your target will now appear in the Discovered Targets list on the Targets tab.

      Click on the Volumes and Devices tab of the iSCSI Initiator Properties window. The Volume List should be blank. Click Auto Configure to automatically configure all of the devices on the discovered target. Two devices should appear.

      clip_image014

      The rest of what we are doing should be pretty familiar to you.

      1) Open Server Manager.

      2) Navigate to Disk Management.

      There should be two new disks attached to your server.

      3) Right-click the 8.00 GB disk and click on-line. Right-click the 64.00 GB disk and click on-line.

      4) Right-click the 8.00 GB disk and click Initialize. The Initialize Disk screen should appear, allowing you to select both disks to be initialized. Click OK.

      5) Create a Simple Volume on each disk.

      a. On the 8.00 GB disk right-click on the unallocated space and click Create Simple Volume.

      b. In the New Simple Volume Wizard click Next.

      c. In the Specify Volume Size screen click Next.

      d. In the Assign Drive Letter or Path screen select Q and click Next.

      e. In the Format Partition screen change the Volume Label to Witness Disk and click Next.

      f. On the Completing the New Simple Volume Wizard screen click Finish.

      Repeat the same steps for the 64.00 GB disk, replacing the drive letter with M and the label to Shared Storage.

      At this point your LUN is created, formatted, and ready for data!

      In the next article we will use this LUN to create a cluster, and configure that cluster to make a Hyper-V Virtual Machine Highly Available.

       

       

      Mitch Garvis, MCT | Senior IT Consultant & Trainer | SWMI Consulting
      My blog | Twitter | Facebook | LinkedIn | MVP Profile

      I'm a PC

    7. All for SAN and SAN for ALL!

      As Pierre Roman pointed out on April 5th, Microsoft released its Software iSCSI Target to the Download Center (The Microsoft iSCSI Software Target is now free).  I call it The Great Equalizer.  Let me explain:

       

       

      There are two ways of creating shared storage.

      1. Network Attached Storage (NAS) is file-level storage that you create by formatting a volume on a server (or workstation or NAS device), and then enabling Sharing.  Depending on the type of share you can assign different types of permissions to different users and groups.  You access a share by using a Share Name (formerly called User Principal Name – UPN) such as \\servername\sharename.  If the share was created on a Windows server (or client) you could access the same directory by navigating to the shared location in Windows Explorer.
      2. Storage Area Networks (SANs) are a block-level shared storage, which means they are accessed very differently.  The SAN device is an array of disks that is ‘sliced’ into Logical Unit Numbers (LUNs).  Each LUN is in effect its own hard drive, which is assigned a drive letter (i.e.: M:\) and can be formatted by the computer accessing it (using an iSCSI Initiator).  This gives us options that we could never have with shares… such as NTFS permissions and actually booting servers from a LUN (diskless boot).

      There are actually two different SAN technologies in play:

      iSCSI (Internet SCSI), which uses familiar RJ-45 cables and communicates over standard TCI/IP networks.  As such all of what we know from basic networking applies, and although it is usually recommended that the storage network be segregated from the production networks, this is often done by using VLAN tags rather than separate NICs (actually referred to as HBAs (Host Bus Adapters) and cables.  By default (for those of you implementing or simply studying for an exam), iSCSI traffic is transmitted on TCP Port 3260.

      Fibre Channel (FC) uses proprietary ports, cables, and switches.  Although it essentially speaks the same language (SCSI protocol) it is encapsulated in Fibre Channel packets.  Fibre Channel is usually the more expensive of the two options.

      The problem is that neither of these technologies is cheap.  While the investment for an organization has obvious benefits and the ROI is apparent, neither technology is really prevalent in small business because of the cost.  It is very rare that an individual – even an enthusiast – would have a SAN at home.

      Does this really affect anyone?  You bet it does. 

      • It affects the guys trying to get into the industry who don’t enrol in a school, but rather try to learn on their own.  They can read all about clustering in books, but until they get their hands on it they will never really know it… and without a SAN they will never really know it. 
      • It affects the IT Pro who have been pigeon-holed in a role and see no possibility for advancement in their organization, and want to take a few certification exams before they update their CV. 
      • It affects the small business IT Pro whose organization hasn’t invested in SANs, but wants to grow into the ‘Enterprise.’
      • It affects anyone who wants to learn virtualization and pass the MCTS exam for Windows Server Virtualization.
      • If you don’t have a SAN that you can play with, it affects you!

      Microsoft iSCSI Software Target 3.3  changes all of this. 

      • It allows an IT Pro – anyone, really – can install it on Windows Server 2008 R2 and create a software iSCSI target – essentially a simulated SAN. 
      • It is going to allow us to create clusters in our basements, without investing heavily in hardware. 
      • It means that the youngsters of the industry – our future – can implement and learn Clustering, Live Migration, and all of the other great tools that Windows Server 2008 R2 offers. 
      • Because it is now a supported product from Microsoft, it means that smaller organizations that are interested in virtualization, but scared that it means they are creating a single point of failure if they aren’t able to invest heavily in a SAN device.

      In fact, the product is not new… it was released with Windows Storage Server 2008 R2, which was only available through the OEM channel.  Prior to that it was only available internally.  Now that it is being made available widely, it is be supported for (smaller) production environments.

      So what are you waiting for?  Go forth and cluster!

      (In my next article I will take you through the step-by-step implementation of the iSCSI Software Target… stay tuned to this space in the next a couple of days!)

      Mitch Garvis, MCT | Senior IT Consultant & Trainer | SWMI Consulting
      My blog | Twitter | Facebook | LinkedIn | MVP Profile

      I'm a PC

    8. The Microsoft iSCSI Software Target is now free

      Hello Folks,windows 2008R2

      Over the last few years while demonstrating the Windows 2008 and Windows 2008 R2 Cluster and Virtualization capabilities, I've been asked several times, How can I  take advantage of Hyper-V and/or cluster capabilities such as Live Migration (LM) and High Availability (HA) if i don't have access to a SAN?  As you know, to use both LM and HA, these require shared storage. This shared storage can be in SAS, iSCSI or Fibre Channel SAN.  Yes there are third party solutions like the StarWind iSCSI SAN software which i have used in the past in lab environments with great success. But nothing out of the box.

      In large environment access to a SAN is not necessarily an issue but in some other scenarios where you may need LM and HA, the cost of a dedicated SAN can become a blocker.  Like if you’re staging an environment for testing. Like if you’re learning the technology and you only have a TechNet subscription and a few PCs. And many other scenarios

      Wouldn't it be great to have options other than spending more money? well now we do. Microsoft is making the Microsoft iSCSI Software Target available for free.

      You can install the Microsoft iSCSI software target on a Windows Server 2008 R2 system and use it as shared storage for Live Migration or High Availability.

      you can find the The Microsoft iSCSI Software Target Download here and Jose Barreto has written a great article on how to configure the Microsoft iSCSI Software Target with Hyper-V.  you can find this article here.

      before you start asking the standard questions here is what i know. Yes, the Microsoft iSCSI Software Target is supported in a production environment, but only on Windows Server 2008 R2 Standard, Enterprise and Datacenter Editions.  other details can be found in the official Windows Virtualization Team Blog.

      Have fun.

      Cheers!

      Signature

      Pierre Roman, MCITP, ITIL | Senior Technical Account Manager | Directeur de Compte Technique Senior
      IT Pro blog | Twitter | Facebook | LinkedIn

    9. Rogers Windows Phone 7 (Samsung Focus) Update is live

      Whoo-Hoo!

      I saw a tweet, plugged in my Samsung Focus on the Rogers network and look what popped up?

      (12:35)

      image

       

      I hit the update Now button and then it started (12:37)

      image

      some more checks and then this… (12:39)

      image

      quickly followed by a backup procedure and cute image

      image

      DSC_0002

      Update in progress (12:51)

      image

      restart of phone (1:01)

      image

      Update complete! (1:02)

      image

       

      DSC_0006

    This Blog

    Syndication

    Powered by Community Server, by Telligent Systems