VMworld Etiquette

Posted: June 13, 2014 in VMworld 2014
Tags: ,
What not to do at VMworld

This is a list of things that get under the skin of a lot of people at the convention. I thought it should be posted as I have not seen a post yet that mentions these. Following these will make sure you are not looked at by your peers as a leper or worse not invited to any social events!

  1. When in a session, at times it is quicker to take a picture of a slide than to write the contents of the slide down. Now, note that the slides will be made available after the convention. However if you need to do so, please make sure that your sound is OFF and your flash is also. You may have no idea how annoying it is to hear 20 shutter clicks on every slide. As for the flash, your presenter may not like it much.
  2. If you get in early, do not ostracize the attendees that come in after you or on Monday. Last year on Monday morning I heard an obnoxious guy with a loud mouth close to the registration desk with his friends saying “Look at these noobs just getting here”. Friends, this is about sharing and learning information, passing on and teaching the VM message. I saw twenty people that wanted to slap the instigator. This also will not get you invited to any parties.
  3. For heaven’s sake do not take all the swag! Try and keep it to one per person. Not one for you and 4 for your colleagues that did not show up. Think about the guy that paid for his pass, maybe he wants a Tintri sticker or a PHD (now unitrends) t-shirt.
  4. Bragging about your job? Who cares?
  5. If someone asks you a technical question, do not act surprised that they don’t know. If you knew everything you would not be at the convention. A polite answer will suffice.
  6. Not many women are in our industry, it is dominated by men from a numbers standpoint. So when you see a lady in your session or on the floor, do the rest of us a favour and do not stare like she has a donut around her neck. Call me crazy but I believe that will make her think you are creepy, or even worse, a vStalker. She will not invite you to any parties!

 

After having some time to spend with Tintri datastores I can honestly say it is the most administratively liberating storage that I have ever managed, and I use the term managed loosely. First, the installation of the storage array was quite easy. Take it out of the box, plug in your power, management cables, data cables and turn it on. That’s it for the physical part. For the logical side, you have to give it an IP address and connect it to vCenter. Yes that’s it. No LUNs to carve, no extents, no special setups. Not many storage providers can come close to that kind of setup ease.

The hardware is also surprisingly simple. The magic in these storage arrays come from an intimate knowledge of VMware and what the consumer needs from it. That is mostly encompassed in the firmware, logic and higher functions of the array that you never have to see. You get an all in one unit that has redundant controllers, management interfaces and a mix of hard disk drives and SSDs.

Once setup is complete you are ready to provision Virtual Machines. Because of my experience with the storage solution, and make no mistake this is a solution not a storage system. I would recommend that you first make a template with your company specifications. After which you may create as many as 1000 (or more) vm’s on my model with a couple clicks via the Tintri interface or using the vCenter web plugin. It’s pretty simple. It creates all the vm’s with almost no additional space, sort of like a VMware linked clone. The only space consumed is delta changes from the base template. You may also use snapshots as a template or any vm on the storage.

If you are a power user like me, then you will be glad to know the solution is also feature rich. For instance, if a user or manager mentions that a system seems slow, using the dashboard you are able to see latency not only for the array but network and hosts as well, you can even see cpu rdy for that vm.

What most administrators will like is that with the logic the solution is built on, most if not all data is served from solid state drives. The hard drives seem to function as storage only. Once data is read or written the first time it is kept in flash. The chance of it moving out of flash I extremely slim. There is no block sizes to set or vmdk’s to assign.

For my use case I am utilizing the solution as an immediate recovery point as well. With the ability to schedule snapshots of individual vms or the entire array, I have opted to do 7 day revolving snaps of the entire storage. What this means is that every day at a time that the administrator can set (I have 12 noon and 6 pm daily) the solution will take a snapshot of all the vms. While you may think that this may interrupt production when used at these times there is no freezing when this happens. It is completely transparent. If a vm was accidently deleted, corrupted or could not be used for whatever reason then a snapshot could be used to replace the vm within seconds, yes seconds! No need to run to a backup product with would increase your Recovery Time Objective. I use this snapshot scheduling along with my normal backup for greater resiliency of the environment.

I have also found that the snapshotting and immediate vm creation come in handy for development use. When a member of my development team needs a copy of a production vm I am able immediately give them a copy that uses almost no additional space. This is seen not as a linked clone in vCenter but a full copy. The only thing that gives away the magic of what happened is the system stats that will state the vm is using less than one (1) MB of space when it is created.

There so much to mention about this solution. I think I will do a technical deep dive at some point for the uber geek in most of us.

VMworld 2014

Posted: June 7, 2014 in VMworld 2014
Tags: ,

 

It’s that time again VMworld 2014

 

Here are some tips to get you there and back smoothly.
  1. Book as early as you can. Why? First, the tickets are cheaper and second hotels are the one thing you want to get right. If you do not book a hotel within the first 2-3 weeks chances are you will be taking a taxi, rental or bus to the event every day. Book early and you are rewarded with a hotel that is 1-4 blocks from the event. That money can be saved for drinks.
  2. Make sure your flights are booked with enough time between connections if you have to change planes. Last year I missed a connection because my first flight was late. I had to wait later on in the day and got there about 11 PM at night.
  3. Try your best to get there on Saturday. Why? Because you will be able to register on Saturday or Sunday morning (if you arrive late) and have Sunday to do hands on labs. That way during the week you will have the time to attend sessions or use the time you were going to spend in the labs during the week in the Hang Space.
  4. During the Hall Crawl bring a bag! Why? Trust me!
  5. Bring walking shoes. Why? You will be sorry if you do not.
  6. Bring a light sweater or jacket. San Fran is cool during summer.
  7. Attend special events if you can. You will find that vendor parties will give you the chance to ask their engineers questions that you may not get the chance to ask during the Hall Crawl. (And drinks are free).
  8. Space your sessions so you have time to get to them. When booking sessions pay attention to where they are located. You will find that you may have to go to another building. I book sessions with a ½ hour in between them. If you have to take 2 sessions that end and start at the same time then you will have to leave the first early to make the other. Make sure you will not want to ask the presenter questions after.
  9. The presenters will be available to answer questions after the session, make yourself available, even to listen to others questions and you will be wiser for it.
  10. Book your returning flight the day after. Even though Thursday is a half day you will want the downtime before returning to the real world.
  11. Have fun!

A vCloud Automation Technical White Paper

Posted: January 7, 2014 in vCAC
Tags:
A vCloud Automation Technical White Paper

By Neeshan Peters

1. Introduction

The purpose of the white paper is to illustrate the benefits of vCloud Automation Center version 6.0 in a dispersed enterprise environment. Helping to resolve such issues as IP address management VM sprawl, labeling, descriptions, and control of overprovision.

2. Trends

Today’s virtualization technology gives us the ability to rapidly provision VM’s, and networks. The problem comes when you have more than two or three people that have the ability to provision VM’s and networks. It gets even worse the larger the IT department is and doubles in fault if the department is dispersed geographically.

Industry challenges

Complexity increasing

Long project lifecycles

Application definition

VM isolation

VM tracking

VM sprawl

Need to coordinate virtual enterprises

3. Problem

When a VM is created we find it hard for the creator to place notes on the VM for things like, the VM owner & the purpose of the machine. They may build the machine with way to much resource such as too much CPU, memory or disk space. Maybe they are building the machine on the wrong resources all together. This is where vCAC comes in.

Conventional management methods not up to the challenge

They is no product right now that will make these items a requirement and also is customizable to any environment.

4. Solution

vCloud Automation Center can resolve these issues and more. It is capable of being installed and running within a day to address these challenges. It gives you Ip address management, required fields and automatically making notes on the VM of who created it. Controls that make sure no user may over provision a machine without your consent via workflows.

This new generation of management systems can meet the challenge
  • Resource Reservations
    Resources can be pre allocated for a particular group’s usage assuring that they will be available when needed. However, they can also be reallocated if necessary to meet changing business needs.
  • Service Level Resource Thresholds
    vCloud Automation Center’s policies govern how compute resources are allocated to assure optimal performance for the task that needs to be performed. Optional approvals are available for requests, which exceed standard service levels.
  • Service Tiers
    Resources can be pooled within various service tiers (e.g. gold, silver, bronze). The combination of service level resource thresholds and service tier policies assure that resource consumers receive the “right size” compute or application service at the “right service level” for the task that need to perform.
  • Service Approvals
    vCloud Automation Center can be configured to facilitate automation of an approvals process. Where approvals are necessary, vCloud Automation Center can integrate with Active Directory and configured for alternate approvers to ensure that change management and business requirements are met.
  • Service Entitlements
    Each service created in vCloud Automation Center can be designed with entitlements to ensure that each user, or group, has access to the services they have been preauthorized to consume. – See more at: http://www.vmware.com/products/vcloud-automation-center/features/policy-governance-engine.html#sthash.uOHPW3Jc.dpuf
5. Benefits

There are just too many benefits to place into this white paper but here are a few that may be of interest;

Reduce unauthorized and over-provisioning of machines

Reuse resources automatically

Recycle inactive and abandoned machines

Build with the same speed or faster as being at the vCenter console

Control IP address management

Provision new networks with a VM

Integrate with hybrid services

Manage and see the cost of services and VM’s

Results

Better visibility into you infrastructure and the cost of running it. You will be able to know everything that goes on when you need to know and answer the tough questions when the arise.

7. Conclusion

As you can see vCloud Automation Center has the capability to resolve all of the problem specified and more. This is just the tip of the proverbially iceberg. You will be better able to manage you environment proactively rather than reactively in a world where being reactive is too late.

Additional information

For more information, visit the vCloud Automation Center product page

http://www.vmware.com/products/vcloud-automation-center/resources.html

White Papers

Posted: January 7, 2014 in vCAC

A list of White papers that i will be writing.

vCAC 6.0 vCloud Automation Center White Paper

VMware Stencils

Posted: January 7, 2014 in Tools
Tags:
VMware Stencils

VMware vSphere Visio Stencils

Presentation Pack

Veeam Stencils

VCE Vblock Visio Stencils

VisioCafe

 

vCenter Tools

Posted: January 7, 2014 in Tools
Tags:
vCenter Tools

vSphere Plugin Wizard 2.0

sshAutoConnect vCenter Plug-in

Auto Deploy GUI

vCloud Connector

VMware vCenter Support Assistant

VMmark

vCenter Converter

vSphere Management Assistant

PowerCLI

VMware Support Toolbar

VMware SiteSurvey

CPU Identification Utility

VMware Studio

VMware vCenter Update Manager 4.1 Sizing Estimator

VMware Compliance Checker for vSphere

VMware vCenter Orchestrator Appliance

Wavemaker

VMware Posters

 

vCAC 6 AD Forest Problem

Posted: January 3, 2014 in vCAC
Tags:
AD Login Problem

It seems I have hit my first major problem with vCAC 6. After doing a few test runs and other scenarios it looks like I have found the problem.

I have a multitiered domain, a forest. The main domain the users of vCAC will use is just under the main/root domain, we will call root level 1. So that means we are using the domain on level 2. Now what happens is I am only able to use AD accounts that I configure for vCAC that are on level 2 (identity source points to level 2) and do not belong to any AD groups of level 1 or 3. What happens if the account belongs to any group that is outside of level 2, is after a log on attempt, the progress bar on the log on page will stop and nothing will happen.

I found  the problem by looking at the “vmware-sts-idmd” log. It will say that the log on was successful however there was an error calling for an ldap search of a group the account is in, in domain level 1 or 3. In the log will be an ldap referral error code 10.

Error received by LDAP client: com.vmware.identity.interop.ldap.LinuxLdapClientLibrary, error code: 10

Exception when calling ldap_search_s: base=CN=ROL_3Par_User,OU=AdminRoleGroups,OU=Admin,DC=DOMAIN,DC=com, scope=0, filter=(objectClass=group), attrs=[Ljava.lang.String;@20bea718, attrsonly=0

I have tried using the global catalog port 3268 instead of 389. I thought this would work but it seems that the ldap client cannot bind on this port. I have also tried using just the root domain as the identity source with no luck.

So I am still working on this. Any help would be welcomed.

vCAC 6.0 Review

Posted: December 28, 2013 in vCAC
Tags:
vCAC 6 Review

I previously wrote my thoughts on the vCAC 6 preview in a post titled the same. My greatest issue with the application was the new web interface. I must say now that I was gravely mistaken.

I am very impressed with the interface. It has managed to keep it’s simplicity for end users and also seemed to have made the administrative tasks feel easier as well with the advent of the “My Goals” section. The interface seems to load quick and clean and I hope the next revision of vsphere will have such an interface. The install is a lot better that it was in 5.2 and with the help of the pre-req PowerShell script it was a breeze to install.

Now for the things I believe could use some improvement. While the interface is still simple, it does not feel streamlined at all. Without the “My Goals” section it will be a pain for a newbie to setup the product. I even find myself going back to this section for reference for new setups. The install while vastly improved, if not followed as laid out in the documentation exactly you will encounter problems. Now I know what you may be saying, that’s what documentation is for. VMware’s products, most if not all, you are able to install and run without documentation until you want to get very technical. Their interface is intuitive for there applications, but not this one. It must be precise or it will not install. Lastly I hope that the PowerShell script is built into the next install.

This is a great product for those with the appropriate license and another reason to upgrade to the vCloud level of licensing.

Stuck VM in vCloud Director

Posted: November 22, 2013 in vCloud Director
Tags:

After using vCloud Director for some time I have run into the occasion when we have VMs that will get stuck in the interface. An example would be when it is stuck powering on/off, updating hardware or doing most changes when a cell dies for whatever reason. Usually it ends up being busy for the rest of the time without timing out. For whatever reason it becomes stuck I have not found much resources online to assist with resolving the problem.

It is good to know that the Director cells are stateless and most if not all operations are controlled in the database. With this being said most of the fixing that needs to be done happens at the database level. So let’s get started. In this example I will give a you a case for resolving a stuck VM that is ok to power off or is already off. You will need access to vCloud Director’s database, the name of the vApp and the name (display name not the OS/Host name) of the VM.

1. From vCenter, clone the VM (unless you do not want it or it no longer exists) use whatever name you choose

2. From vCenter, delete the original VM (you have that clone from step one right?)

3. Open SMS (SQL Management Studio) and go to the vCloud Director Database

Now the SQL script below will remove any VM from any vApp in vCloud Director. It is wise to note that using this script without deleting the VM from your infrastructure will only remove the reference of it from vCloud Director, it will not delete the VM from DISK. The reason we delete the VM from disk in step two is for two reasons, first, when we later add the clone back into vCloud Director we may have problems with the mac address on the network card. You may want to keep the same mac address in certain cases. Second it gives us a clean VM without the vCloud tags for import.

4. Open/paste the script in SMS and edit the two parameters for “vAPP Name” and for “VM Name”

5. Run the script and hang on for dear life. 🙂

When the script is complete just refresh your vApp page and that will be the end of your problem.

Any improvements to the script is welcomed. I will also create one for a complete wipe of the vApp and it’s contents in a future post.

–******************************
–Created By Neeshan Peters
–November 22 2013
–For personal Use Only
–This script will remove any VM form any vApp in vCloud Director
–It will not delete the VM from disk or remove it from vCenter inventory
–******************************

–******************************
–Declare and Set variables
–******************************
declare @vAPP VARCHAR(254)
declare @vm VARCHAR(254)
set @vAPP = ‘[vApp Name]’
set @vm = ‘[VM Name]’

–******************************
–Remove VM vCloud
–******************************

DELETE FROM computevm WHERE id IN (
SELECT vappvm.cvm_id FROM
computevm cvm INNER JOIN vapp_vm vappvm ON cvm.id = vappvm.cvm_id INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);

DELETE FROM deployed_vm WHERE vm_id IN (
SELECT dvm.vm_id FROM
deployed_vm dvm INNER JOIN vm svm ON dvm.vm_id = svm.id
INNER JOIN vapp_vm vappvm ON svm.id = vappvm.svm_id INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);

DELETE FROM vm_disk WHERE vm_id IN (
SELECT vmdisk.vm_id FROM
vm_disk vmdisk INNER JOIN vm svm ON vmdisk.vm_id = svm.id
INNER JOIN vapp_vm vappvm ON svm.id = vappvm.svm_id INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);

DELETE FROM vm_snapshot WHERE vm_id IN (
SELECT vmsn.vm_id FROM
vm_snapshot vmsn INNER JOIN vm svm ON vmsn.vm_id = svm.id
INNER JOIN vapp_vm vappvm ON svm.id = vappvm.svm_id INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);

DELETE FROM guest_personalization_info WHERE id IN (
SELECT guest_per.id FROM
guest_personalization_info guest_per
INNER JOIN vapp_vm vappvm ON guest_per.vapp_vm_id = vappvm.id INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);

DELETE FROM shadow_vm WHERE primary_vm_id IN (
SELECT shadowvm.primary_vm_id FROM
shadow_vm shadowvm  INNER JOIN vm svm ON shadowvm.primary_vm_id = svm.id
INNER JOIN vapp_vm vappvm ON svm.id = vappvm.svm_id INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);

DELETE FROM vm_resource WHERE vm_id IN (
SELECT vmres.vm_id FROM
vm_resource vmres INNER JOIN vm svm ON vmres.vm_id = svm.id
INNER JOIN vapp_vm vappvm ON svm.id = vappvm.svm_id INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);
DELETE FROM vm WHERE id IN (

SELECT vappvm.svm_id FROM
vm svm INNER JOIN vapp_vm vappvm ON svm.id = vappvm.svm_id INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);
DELETE FROM networked_vm_mac WHERE netvm_id IN (

SELECT nvm_mac.netvm_id FROM
networked_vm_mac nvm_mac INNER JOIN networked_vm nvm ON nvm_mac.netvm_id = nvm.id INNER JOIN vapp_vm vappvm ON nvm.id = vappvm.nvm_id INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);

DELETE FROM networked_vm WHERE id IN (
SELECT vappvm.nvm_id FROM
networked_vm nvm INNER JOIN vapp_vm vappvm ON nvm.id = vappvm.nvm_id INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);

DELETE FROM vapp_vm WHERE id IN (
SELECT vappvm.id FROM vapp_vm vappvm INNER JOIN vm_container vapp ON vappvm.vapp_id = vapp.sg_id WHERE vapp.name = @vAPP and vappvm.name = @vm);