Sunday, 13 December 2015

Upgrade to VCAP6 or VCIX6 ?

VMware has just started to release a 3 part series around VCIX6 certification. I remembered initially there was talks about removing VCAP (VMware Certified Advanced Professional) certification and replacing it with something else where you had to pass both the lab and design exam before you actually earned a certification. Well it looks like VMware has done a U turn and decided to keep the tracks of VCAP but added the VCIX (VMware Certified Implementation Expert). To obtain the VCIX status you need to pass the design AND lab exam. 

As I am already VCAP5-DCA I was looking at options for obtaining either VCAP 6 or VCIX 6.  Based on VMware blog posts here are the following upgrade options :
  • From VCAP5 Design to VCIX6 → Earn the VCAP6 Deployment certification by passing the VCAP6 Deployment Exam (lab).
  • From VCAP5 Administration to VCIX6 → Earn the VCAP6 Design certification by passing the VCAP6 Design Exam.
  • From VCAP5 Administration and VCAP5 Design (both) to VCIX6 → Earn either the VCAP6 Design or the VCAP6 Deployment certification
  • From VCAP5 Administration to VCAP6 Deployment → Pass the VCAP6 Deployment Exam (lab)
  • From VCAP5 Design to VCAP6 Design → Pass the VCAP6 Design Exam
I also did a quick diagram for reference -


So for people who want to stay technical then you just take the lab exam and obtain a VCAP6 deployment certification. Those who wish to stay as architectures/design can do the design exam and obtain a VCAP6 design certification. 

If you already have VCAP5-DCA AND VCAP5-DCD then you just need to do either the lab exam or design exam to be a VCIX6.

People with just VCAP5-DCA have to do VCAP6 design to obtain VCIX6. If you have a VCAP5-DCD then you need to do VCAP6 deployment to obtain VCIX.

Please note from VMware blog:
The VCIX6-NV certification will continue to be a little different for the foreseeable future (there is not a Design Exam component). There will only be a VCIX6 Deployment exam and a VCIX-NV certification can be earned by passing the related Exam. In our current framework the Design component for Network Virtualization is covered at the VCDX level. This will likely change in 2016.

For me I need think if I want VCAP6 deployment or VCIX6 certification over Christmas now ^_^.

VMware should be releasing the final part of the blog series which should have the blueprints for the exams.

Friday, 11 December 2015

Automated Installation of SQL 2014 - Basic Starter

I have always been told by our Database Administrators that it is very hard to automate the installation of SQL server. We already had a process to automatically deploy some software like SCCM and Anti-Virus when a new server is provisioned. The next step for me was to try and deploy applications/features such as SQL and IIS.

After much digging around Microsoft site I came across a few articles around deploying SQL Server 2014 via command line, sysprep and configuration file.

Sysprep:
Sysprep is good if you are going to have a specific VM image that will always be for deploying SQL as default.

Command Line:
You can use command line to type in all your options, features that you would like to install but that command could be a very long one!!!

Configuration File:
A configuration file can be generated by going through the installation process selecting your options up to the stage before actually hit the "Install" button. This method captures all the options and settings that you have chosen and writes out to a .ini configuration file. You then use this configuration file to deploy across your environment with the same settings/options.

As you can see depending on your environment you have a number of ways to deploy SQL server with the same base configuration. Based on my environment I have chosen to use the configuration file option and reason for this is:
  • Command line would require me to know all the setup parameters and I could end up with a very long command. As always with long commands they are probe to errors.
    • Using sysprep means I would need to maintain another VM image. If the base build changes then I would need to update two VM images.
    Using configuration file in my environment would give me the flexibility of knowing I have all the settings in a file and I can choose to deploy on any server that I wish.

    I will show you how I captured a configuration file and how to use it

    • Ensure you logged in as administrator for the server you are working on
    • Ensure the server has access to all the installation file for SQL
    1. Run the setup.exe program from the SQL media and  if the User Account Control prompts up click "Yes" to continue
    2. You will be presented with the "SQL Server Installation Center", select "Installation" on the left hand side menu and then click on "New SQL Server stand-alone installation or add features to an existing installation" 
    3. Leave Microsoft Update box unchecked and click "Next"
    4. Ensure all of them are either "passed" or "warning" status and click "Next"
    5. Enter your product key and click "Next"
    6. Check box "I accept the license terms" and click "Next"
    7. I chose the "SQL Server Feature Installation" so that I could select what I wanted to be installed and click "Next"
    8. Select the feature you would like to install and click next. I selected "Database Engine Services, Client Tools Connectivity, Management Tools & SQL Client Connectivity SDK". Also select where you would like to install the instance if the default one is not suitable and click "Next"
    9. Decide if you would like to name the instance or just leave as default. I selected leaving it as "default" and clicked "Next"
    10. Decide for the windows services if you want specific accounts to be used. If you do use specific accounts for certain services then make your changes here. I left them as default
    11. On the "Collation" tab make any changed if you are not happy with the default one. Once the selection has been made click "Next"
    12. On the "Server Configuration" tab choose the authentication mode you would like to use. We currently use mixed mode so I have selected this option and type in the password you wish to use. You will also need to add a Windows user or group as well so use the "Add" button to perform this task
    13. On the "Data Directories" tab if the default locations for database, logs etc is not what you want then change them to your preference. I have changed them from the default to just demonstrate. Once you are happy click "Next"
    14. Now you are on the "ready to Install" screen, from here checked that you are happy with all the features and configuration that you have selected. DO NOT CLICK "INSTALL". As you can see there is a section "Configuration File Path" and you can see where the generated configuration file is. Browse to the directory and copy this file to another location so that we can use it later. Once you have done this we can cancel our install as we have captured our install parameters.

    So the above process has described how we managed to very quickly generated a configuration file that we can use for future installs of SQL server. There are a couple more changes we need to do to the configuration file to get it working. Below are the following changes I performed
    1. Locate the configuration ini file you have just done and open it using your favourite editor ( I use Notepad++) 
    2. Locate "UpdateEnabled" and change the value from "True" to "False". This will prevent it from trying to locate and update SQL installation files. I rather have a build where I know it is always going to be the same
    3. Locate "UIMODE" and comment it out like ";"UIMODE""
    If you look in the configuration file you will notice that there is no password for the account we set for "SA". For any accounts we you have defined in the configuration file we would need to add the password on the command line. You would need to look up for the correct parameters to use from the above document links I provided.

    How do we now use the Configuration File to do the silent install ?

    It is a simple command line but make sure you are running in Administrative mode for command prompt. The command line is

    %Path_To_%setup.exe /ConfigurationFile=%Location_Of_File% /SAPWD=%password% /IAcceptSQLLicenseTerms 

    So example could be
    z:\setup.exe /ConfigurationFile=e:\ConfigurationFile.ini=e:\ConfigurationFile.ini /SAPWD=Kinsql123 /IAcceptSQLServerLicenseTerms

    You will see that in the command line I now have added the password that I would like to give to the SA account. The options that I have set for my configuration.ini file would show the progress of the installation just for information. I tend to keep it this way so that I can see it happening.

    My next steps for this project is to speak to the DBAs and find out what options/features they normally use and turn those to configuration ini file. Then as we have prefixes for our server names for different roles I will use powershell to query the name. If it is suppose to be a SQL server then it will call my command to install SQL.

    So go ask the DBAs how they do the installs and modify them so that you can have them automate, streamlined and a consistent build where you can now deliver much quicker for your customers.

    Please remember you can use these installation methods to also add/remove SQL features so it is not just for installing SQL from scratch.

    Wednesday, 9 December 2015

    vROPS- Capacity Remaining What Will Fit?

    I have been using vROPS for a few months now and noticed that under "Capacity Remaining" tab there is a section "What Will Fit". 


    As you can see vROPS has already done some analysis based on the metrics it has collected in your environment. If you click on the down triangle it will tell you what metrics it is using to base on that assumption


    From the above diagram "Average Profile" it tells us that my cluster is over provisioned by 81 VMs and the specs it has used to help give the number. As you can see this is based on "Demand". In my environment we are doing capacity by "Allocation" and also we deploy VMs with specific configurations for different clusters. So how do we do that ?

    On the same screen click on the right or left arrows until you see the "+" sign and click on this


    A new screen will prompt up

    • Give the profile a name which will be display name as well
    • Leave the object type as "Virtual Machine" 
    • Decide if you want this to be used for all policies and if they are then tick box "Enable this profile for all Policies" otherwise under the "Advanced" section decide which policies you would like to enable or hide the profile from.
    Use the scroll bar to go further down the options


    • Under Metrics section decide on the filter (model) which is either "Allocation" or "Demand". In my case we are using "Allocation" so I will select this one. 
    • You have a option to then either import metrics from an existing VM or type in the values you wish to set then click "OK"
    You will now see your newly added profile under the "What Will Fit" but the number of VMs are shown as "?". Depending on the size of your environment that should change to a number once it has worked out what is should be


    What if I want to change the setting of this?
    • Click on  "Content" icon

    • Select "Custom Profile" and on the right navigation panel highlight the server you wish to edit. Click on the "Pencil" to edit
     

    • You can now editing the settings and then click "OK"
     



    Wednesday, 25 November 2015

    ESXi Embedded Host Client Fling



    Over the years it has always be quite a pain to manage an ESXi host standalone. You would either need to have installed the C# client or know your ESXCLI commands to do anything. As VMware is moving away from using the C# client you would most likely need to know your command lines to perform actions on the ESXi host.

    Recently released on VMware’s Fling website is “ESXi Embedded Host Client” which I think will overcome the above problem.

    So what is “ESXi Embedded Host Client” you may ask?

    It’s a small client software which is installed on the ESXi host for you to get a GUI interface by using a web browser.  It looks just like the web client for vCenter but is purely for just managing an ESXi host. You may wonder why would I need this as I could just use the web client and manage it.

    Well I have been through times where I had my ESXi host disconnected from vCenter and I need to SSH to the host or use C# client to access the host to perform some tasks. With this new fling all I would need is a web browser and I can get to my ESXi host... how cool is that?

    At the moment the product is still in development stages so there are limited feature for you to use but it is worth deploying to your lab to try it out. It is really just 6-7 easy steps and no reboot of the host is required....


    Requirements:

    The software will only work on ESXi 6.0 and 5.5u3 onwards and you would need a browser which has java script and cookies enabled.
    Taken from fling website

    Install Methods:

    There are two methods to install the VIB onto the ESXi host.

    ESXi host which has Internet access

    1) Use your favourite SSH client software to connect to the host, I will be using Putty
    2) Run the following command to install the VIB: "esxcli software vib install -v http://download3.vmware.com/software/vmw-tools/esxui-signed.vib" (URL subject to change)
    If the URL has changed for whatever reason go to to https://labs.vmware.com/flings/esxi-embedded-host-client. Right click "Download" button and select "Copy link address". The address would be copied to your windows clipboard so that you can paste it in notepad, putty etc.


    3) If the VIB was installed successfully you should see the screen below
    4) In your web browser navigator to URL https://<ESXi-Host-IP/ui and enter your credentials to log on

    ESXi host without Internet access

    1) Go to https://labs.vmware.com/flings/esxi-embedded-host-client and tick box "I have read and agree to the Technical Preview Agreement. I also understand that Flings are experimental and should not be run on production systems." Now you can click the "Download" button to download the VIB.

    2)  Once you have downloaded the file upload the VIB to either a shared datastore the host can see or the local datastore of the ESXi host. I have documented the steps below of me uploading to a ESXi host using WinSCP
    • Using WinSCP launch the program and enter the details of your ESXi host IP, username, password then click "Login".
    • Once connected navigate to the directory where you would like to upload the VIB. I have uploaded to "tmp" directory and remember to make a note of the VIB name and disconnect your WinSCP session from the host

    3) Use your favourite SSH client to connect to the host. ( I will be using Putty)
    4)Run the following command to install the VIB: "esxcli software vib install -v <location of the VIB>" so for me the command was "esxcli software vib install -v /tmp/esxui-signed.vib"

    5) If the VIB was installed successfully you should see the screen below
    6) In your web browser navigate to URL https://<ESXi-Host-IP>/ui and enter your credentials to log on


    As you can see from the screen shot below the amount of information that you have presented to you in a single panel of glass is really good and now you can also use your Mac to access these. There are limited features available to be used such as:
    • VM operations such as Power off, on, reset, suspend
    • Creating a new VM, from scratch or from OVF/OVA (Limited OVA support)
    • Displaying summaries, events, tasks, performance monitoring, notifications/alerts
    • Console to VMs
    • Host services such as maintenance mode, reboot, advance settings, security & users
    • Configure host networking and storage 



    Removing the VIB
    1) SSH to the ESXi host and run the following command "esxcli software vib remove -n esxui"


    2) You should see the following message if it has been successful and using your browser going to URL https://<ESXi-Host-IP>/ui should give you a blank page


    As you can see it is really quite simple to install and try out this really powerful tool. So give it a go and provide some feedback so that we can get a better host client software going forward from VMware.

    Head here for all the information on ESXi Embedded Host Client https://labs.vmware.com/flings/esxi-embedded-host-client


    Azure Resource Support for Availability Zone

    Over the years, an increasing number of services are consumed in the cloud and as architects one of the key considerations is designing the ...