January 8th, 2015 by JFrappier

Jonathan Frappier Virtxpert

Chalk this up in the “useful error messages” column. When you attempt to enter a license key in the vRealize Automation appliance you receive “Error code: 500.”

error500

Now when I saw this I immediately thought “internal server error,” however in the case of vRA it may simply be an expired or invalid license key. Before extensive troubleshooting validate that your license key is correct, and it has not expired.

license-success

vRealize Automation Error Code: 500 when submitting license key

Posted in Tech Tagged with: , , , , , , , , , , , , , , , ,

December 4th, 2014 by JFrappier

Jonathan Frappier Virtxpert

In part 4 we published an application blueprint through Application Serivces, that is pretty awesome but we still really haven’t done anything just yet.  I mean its all just about working but the real hard part is creating the application blueprints.  Just for fun, lets create a generic blueprint and run a deployment.  While logged into Application Services go to Applications and click on the green + (plus) button to create a new application.

  • Name the application and select a business group, if you’ve followed along my various home lab series you would select StarWars here since it is the only business group we gave permission to in vRealize Automation.
  • Click save, click Create Application Version then click Save
  • Now you are able to create a blueprint; click Create Blueprint
  • Drag the logical template to the design pane, again if you’re following along with me this would be the CentOS 64 logical template
VMware Application Services / Application Director application designer

VMware Application Services / Application Director application designer

  • Now all this would do is create a virtual machine like you could do through vRealize Automation or vSphere; here however we also have several preconfigured services we can drag into our logical template to install applications.
  • Let’s do a typical single node web and database server
  • Drag Apache, vFabric RabbitMQ and and vFabric Postgres into the logical template, it should look something like this:

apps-app-services-addedNow one of the hardest parts about automating something is now all the dependencies.  In this scenario I happen to know a few things are missing, not because I am a genius but because I went through several iterations of this blueprint before getting it to work.  This, however also allows me to demo some other features of Application Services.  In my CentOS template, SELinux is enabled – now I could convert my template to a virtual machine, disable it, clean up the virtual machine machine again and convert it back to a template.  It’s what I would have done not 6-8 months ago.  Now, however, I’ll simply use the tools available to me, tools like Application Services or Ansible to put the virtual machine into the state I want it:

  • From the Application Components page, drag two “script” items into the logical template
  • Edit the first script by clicking on it; name it (no spaces), click on Actions, click “Click here to Edit,” copy the following into the window and click the reboot checkbox

#!/bin/bash
# set SELinux disabled
cp /etc/selinux/config /etc/selinux/config.bak
sed -i s/SELINUX=permissive/SELINUX=disabled/g /etc/selinux/config

  • SELinux will now be disabled upon reboot.
  • We also have to tweak the EPEL install to allow it to pull data properly (seems to be a known issues right now).  Rather than letting the EPEL package install as part of the services we used earlier, we can also do that in a script and configure the options we need for it to work.
  • Edit the 2nd script as you did before but copy the following into the window

#!/bin/bash
# install EPEL
yum -y install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
sed -i “s/mirrorlist=https/mirrorlist=http/” /etc/yum.repos.d/epel.repo

  • Click the OK button, you should now see something like this:

apps-blueprint-configd

  • Now click the deploy button, name the deployment, and select the business group
  • Click Map Details, ensure all details match what you have setup, and click Next
  • Provide a name to your virtual machine and edit CPU and memory as needed (and to match your vRA blueprint limits) – click Next
  • Review the deployment blueprint and click Next
  • Click the deploy  button (you could also publish to vRA here as we did in part 4, but I’m just demonstrating the deployment)
  • The deployment will start

Now at one point I wasn’t sure it was working, I could see Application Services say it was working (system was under 80-90% load consistently) however I wanted to see what vSphere was doing.  As you an see in the two screenshots below, the virtual machines are being deployed as you might expect (they are from two different deployments so yes the dates are different)

Application Services - virtual machined deployed via the web client

Application Services – virtual machined deployed via the web client

VMware Application Services deployment viewed in vSphere Client

VMware Application Services deployment viewed in vSphere Client

In addition, you can zoom in on the Execution Plan pane to see what step the deployment is currently on

Application Services provisioning a virtual machine

Application Services provisioning a virtual machine

This process took quite a while in my lab, but it I am pretty resource bound now.  Now, as I mentioned this is an iterative processes, good chance it may have failed in your environment, review errors and run the deployment again.  After working through any specific environment issues you should be able to successfully deploy the application components.

apps-successful

Deploy an Application Blueprint – Application Services Series Part 5

Posted in Tech Tagged with: , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

December 1st, 2014 by JFrappier

Jonathan Frappier Virtxpert

When deploying an Application Services blueprint, you notice that the workflow does not move past the 2nd step in the provisioning process – agent_bootstrap node setup, however the previous step which renames the virtual machines appears to work fine.  In this scenario you have also successfully installed the AppD agent in the vSphere template.

VMware Application Services / Application Director hangs at agent_bootstrap node setup

VMware Application Services / Application Director hangs at agent_bootstrap node setup

If you log into the virtual machine, you can see that the vmware_appdirector_agent should be set to on, however when checking the running services (for example by running ps -ef | grep vmware_appdirector_agent) you do not see any processes running.

When working with vSphere templates that are used in Application Services / Application Director blueprints there are a few things to be aware of.  After the agent installation initially, you shutdown the virtual machine, however making changes to the template after the initial shutdown requires additional steps to be performed.   Not only do you need to remove the /etc/udev/rules/70-persistent-net.rules file and make sure the vmnic MAC is not in /etc/sysconfig/network-scripts/ifcfg-eth0 but you also need to run

/opt/vmware-appdirector/agent-boostrap/agent_reset.sh

This reset the agent configuration and allows it to start properly after being cloned.  Once the agent_reset script has been run, shutdown the host and convert it back to a template.  You should now be able to run your Application Services / Application Director blueprint (or at least get past that step :) )

VMware Application Services / Application Director agent_bootstrap completes node setup

VMware Application Services / Application Director agent_bootstrap completes node setup

VMware Application Services Linux deployment hangs at agent_bootstrap node setup

Posted in Tech Tagged with: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

November 30th, 2014 by JFrappier

Jonathan Frappier Virtxpert

With my vRealize Automation / vCloud Automation Center lab mostly working, I did want to recognize a few things we missed that you might like to investigate further on your own.

First, if you look back you’ll notice we did not do anything specifically with vCenter Orchestrator.  Like vSphere templates, you can publish vCO workflows as catalog items to perform advanced or no routine tasks.  For example maybe you are an organization that makes heave use of vApps in vSphere and want to continue that.  vRA has no concept of vApps but using vCenter Orchestrator I could publish a workflow that will create the vApp and create virtual machines inside the vApp.  Additionally I could tie vCO into other infrastructure such as Active Directory or my storage layer using EMC ViPR for example.

We did not work with any of the advanced networking solutions such as VMware NSX or vCloud Networking and Security.  Consider the need for an isolated multi-virtual machine development environment, I could deploy an NSX edge device and places all of the virtual machines behind the edge device and provide access to the application to a specific set of users or other network segments.  Also missed in these posts were adding additional endpoints to connect to services such as vCloud Air or EC2 – things that could enable you to build a “hybrid” cloud

The last item I will cover here is charge back using vRealize Business (formerly IT Business Management Suite).  With vRB…no sorry not doing it – with ITBM you can get much more granular in cost tracking and turn that data into charge back to other groups or show back to justify your IT budget (remember IT people – you job is not to make money, its to support the business).

Thank you for following along with my vCAC / vRA posts, I hope you found them useful!

Whats missing from my vRealize Automation lab

Posted in Tech Tagged with: , , , , , , , , , , , , , , , , , , , , , ,

November 24th, 2014 by JFrappier

Jonathan Frappier Virtxpert

Application Services is configured, now its time to create and publish an Application Blueprint.  During the installation I chose to install the sample content so I would have some an existing application blueprint available; I am going to take advantage of that sample content for my lab and edit one of the existing applications.  If you are not already, log into Application Services as luke and use the pull down menu in the upper right to change to the Application view.

  • Click on jPetStore
  • In the Application Versions pane, click on the 1.0.0 version
  • Click on the blueprint
VMware Application Services jPetStore blueprint

VMware Application Services jPetStore blueprint

  • Click on CentOS32 v6.3
  • Drag the CentOS64 v6.4  logical template into the application builder
  • Drag the components from jPetStore to the CentOS64 operating sytem
  • Delete the CentOS32 item and click the Save button

apps-new-os-blueprint-b

  • Click the Deploy button in the upper right corner
  • Name the new deployment profile and select the business group; Click the Deploy button
  • Select the Deployment Environment, click the map details button then click Next
  • Click into the hostname field and enter a name then click Next
  • Review the execution plan and click next
  • Click the publish button, name the item and click OK

Now we need to provide entitlements in vRealize Automation; log into vRA as tenantadmin:

  • Click on the Administration tab >> Catalog Management >> Catalog Items
  • Click on jPetStore (or whatever you named it), add it to the Clone Linux Template service and click Update
  • Log out and log back in as luke
  • Click on the Catalog tab; you should now have your basic VM template catalog item and the jPetStore catalog item.
Application Services Blueprint published in vRealize Automation Catalog

Application Services Blueprint published in vRealize Automation Catalog

You are now able to request Application Services blueprints through vRealize Automation!

This was a pretty basic example, and not likely to be replicated in real world use cases.  In fact, I have seen projects to automate the installation of software take upwards of 6 months to complete. Remember with Application Services we have moved beyond installing an application and simply cloning it, as that doesn’t work or scale for many applications – they require connection strings, network information etc..  What you are doing now is leveraging a release engineering or application automation tool so building a solid Application Services blueprint will go through its own SDLC.

Create an Application Blueprint – Application Services Series Part 4

Posted in Tech Tagged with: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,