Quantcast
Channel: VMware Communities : Blog List - All Communities
Viewing all 3805 articles
Browse latest View live

Introduction to Selenium

$
0
0

Introduction

What is automation testing?

Test automation has grown in popularity over the years because teams do not have the time or money to invest in large test teams to make sure that applications work as they are expected to. Developers also want to make sure that the code they have created works as they expect it to.

Developers use a multitude of different testing frameworks to test different aspects of the system. Selenium is one of the most well?known testing frameworks in the world that is in use. It is an open source project that allows testers and developers alike to develop functional tests to drive the browser. It can be used to record workflows so that developers can prevent future regressions of code. Selenium can work on any browser that supports JavaScript since Selenium has been built using JavaScript.

Software applications today are written as web?based applications to be run in an Internet browser. The effectiveness of testing these applications varies widely among companies and organizations. In an era of highly interactive and responsive software processes where many organizations are using some form of Agile methodology, test automation is frequently becoming a requirement for software projects. Test automation is often the answer. Test automation means using a software tool to run repeatable tests against the application to be tested. For regression testing this provides that responsiveness.

What is the use of automation testing?

  • There are many advantages to test automation.
  • Most are related to the repeatability of the tests and the speed at which the tests can be executed.
  • There are a number of commercial and open source tools available for assisting with the development of test automation.
  • Selenium is possibly the most widely?used open source solution.
  • Frequent regression testing
  • Rapid feedback to developers
  • Virtually unlimited iterations of test case execution
  • Support for Agile and extreme development methodologies
  • Disciplined documentation of test cases
  • Customized defect reporting
  • Finding defects missed by manual testing

 

What we need to automate?

It is not always advantageous to automate test cases. There are times when manual testing may be more appropriate. For instance, if the application’s user interface will change considerably in the near future, then any automation might need to be rewritten anyway.

 

When automation is not recommended:

  • Sometimes there simply is not enough time to build test automation.
  • For the short term, manual testing may be more effective.
  • If an application has a very tight deadline, there is currently no test automation available, and it’s imperative that the testing get done within that time frame, then manual testing is the best solution.

 

What is selenium?

Selenium is a robust set of tools that supports rapid development of test automation for web?based applications. Selenium provides a rich set of testing functions specifically geared to the needs of testing of a web application. These operations are highly flexible, allowing many options for locating UI elements and comparing expected test results against actual application behaviour.
Selenium: Selenium is a suite of tools to automate web app testing across many platforms. Selenium…runs in many browsers and operating systems. Can be controlled by many programming languages and testing frameworks.

  • Create by developers at ThoughtWorks
  • Released publically as an Open Source project on OpenQA
  • Selenium is a test tool for web applications.
  • Selenium tests run directly in a browser.
  • Runs on Windows, Linux, and Macintosh.
  • Runs in Internet Explorer, Mozilla and Firefox.
  • Enables Browser Compatibility Testing.
  • Enables System Functional Testing.

 

How it works:

  • Uses JavaScript and Iframes in the browser
  • Core runs the tests and interrogates the DOM
  • RC server and Core communicate via AJAX
  • Language hooks communicate with the RC server.

 

Advantages of selenium

 

Below are the advantages of selenium

  • Open source, Free software
  • Easy Installation
  • Easy Record and Play back
  • Supports Multiple operating systems
  • Supports Multiple Browser Testing
  • Can convert scripts in to other languages (Java, C#, Python, Pearl etc…)
  • Esay to learn
  • Script once, Run on multiple browsers
  • Testing tool for browser?based testing of web applications. It can be used both for functional, compatibility (it has extensive cross?browser support) and regression testing.

Selenium is the best open source tool for doing automation for web based application and it does not have any cost attached to it. The only cost is the effort which will go for designingand developing the script for the application.There are Huge Openings in selenium because companies are trying to migrate from QTP or commercial tools to Selenium – Open source tool.
There are a set of Selenium tools which when combined provides you the power to automate simple to complex web application.

What is the difference between selenium and qtp

S.NoSELENIUMQTP
1Open sourceCommercial
2Works on all OSWorks on Windows only
3Tests only Web applicationsTests web and desktopapplications
4Code can be converted to any one of languages such asJava, C#, Ruby, Python, pearl, php etcUses VB script
5No object repositoryHas got an object repository
6IDE sometimes does not record some fieldsRecording is a little reliableevents

VSphere Lista dos meus documentos publicados

Oracle Business Process Management Assets to Process Cloud Service

$
0
0

Business processes are at the heart of what makes or breaks a business—and what differentiates it from the competition. Oracle helps your enterprise excel in process management by delivering a comprehensive, industry-leading Oracle business process management (BPM) suite.

Quite a number of users with existing Oracle BPM infrastructure and assets are considering moving their assets from on premise to the respective cloud version called Oracle Process Cloud Service.

Oracle Process Cloud (PCS) a subscription-based cloud service for process automation. Offering visibility and management of business processes, and a full life-cycle process management environment including development, test and production- with tooling and run time for process design, execution , monitoring and optimization -without the need to build and maintain an IT infrastructure.

Oracle Process Cloud  empowers Line of Business and Process Designers to build, customize and change custom business applications in a collaborative manner.

Oracle Process Cloud  comes prepackaged with process templates and starter patterns for quick and easy rollout of custom business applications. Users can build all a business application including forms, decisions, data models and implement in a zero code, declarative fashion.

Key features:

  • Rapid Process Automation & Change via starter patterns, collaborative modeling, and zero-code, declarative design
  • Business Friendly Forms Design to create responsive, dynamic web forms.Integration with business data supports design-once and run anywhere
  • Powerful Rules Design that gives designers the agility to dynamically determine approvers and control process flow. Rules are driven by if Then statements or can take the form of Excel-like Decision tables.
  • Richer Business Context for processes via business properties to capture requirements, issues and comments, and other information so that all stakeholders have the same big picture and necessary details. Reports capturing these properties and inter dependency between data can be used for deep impact analysis across processes.
  • User-friendly Sandbox for step-through and testing of business applications
  • Full Lifecycle Management for managing application lifecycle including instant deployment, automatic versioning, and promotion from Test environment to Production.

At the moment, users can export their assets to run on BPM as you will find in the PCS documentation but if you are considering moving your existing Oracle BPM applications and assets to the cloud, then an easy way to achieve this by Migrating your Oracle BPM assets into Oracle Process Cloud Service (PCS). As Andre Boaventura shows in this blog post, this requires a conversion framework and he provides a simple bash script that does the conversion for you.

Manage vCenter appliance

Welcome to VMworld 2017

$
0
0

The VMworld 2017 at Mandalay Bay Hotel, LAs Vegas · August 27 - 31, 2017 was a great show with focus on Solutions and Products. As a vertical Telecommunications was highlighted as a segment that showcased VMware vCloud NFV and its applicability to sectors like IOT. Technical sessions on 5G, Service Function Chaining were discussed. Two NFV Hands on Labs showcased will be available in the public domain by Nov 2017.

 

  The team was honored to have Pat Gelsinger join us the NFV booth along with Shekar Ayyar EVP and GM of Telco NFV.

 

Vmworld-2017-NFV.jpg

 

Now we are on the move to welcome you all at VMworld Barcelona Sept 11 to 14 at FIRA GRAN VIA. See you in Barcelona

 

Configure SecureAuth as IDP in VMware Identity Manager

$
0
0

Instructions to configure SecureAuth as IDP in VMware Identity Manager.

Swisscom Enterprise Service Cloud

$
0
0

During the last 9 months I wrote a series of articles that covered my work for the Swisscom Enterprise Service Cloud.

Yesterday our cloud went online and I'd like to invite you to check out my latest post providing an architectural overview on our new platform.

 

I am very interested in discussing all topics around service provider grade multi-tenancy and developing vRealize Suite artefacts in large teams (GIT/CICD).

VMware TAM Source 9.18

$
0
0

 

FROM THE EDITORS VIRTUAL DESK
Hi TAM Newsletter readers. There has been a lot going on over the past few weeks with new and updated releases and other items which we have been bringing to our customers attention. This week I want to point you attention to our wonderful TAM Blog and the latest post entitled "VMware Compatibility and Order of Upgrade Best Practices Review". This is a very important topic and as many of our TAM customers are upgrading their infrastructure to the latest or later editions of vSphere now is a great time to consult with your TAM on the path that is best to take for your unique situation. This is a really great blog post and I urge you to take a look at this.

 

I hope you enjoy all of the news in this weeks newsletter from general VMware updates to our VMUG partners and more.

 

Have a fantastic week everyone.

 

Virtually Yours
Neil Isserow | VMware TAM Team

Latest News | Twitter | Facebook | LinkedIn | Blog | Newsletter | Archive
-
TAM BLOG | TAM WEBCASTS |
(Kelly Dare) | (Michelle Kaiser) |

 

VMUG (Jodi Shely)
Full Webcasts List

 

NEWS AND DEVELOPMENTS FROM VMWARE
Secure Boot for ESXi 6.5 – Hypervisor Assurance
I’ve talked about how vSphere has been moving towards a “secure by default” stance over the past few years. This can clearly be seen in the new vSphere 6.5 Security Configuration Guide where the number of “hardening” steps are growing smaller with every release. In this blog post we will go over ...

 

AI – An Important Workload for the New IT
When I meet with customers, I often hear that Artificial Intelligence (AI) is presented as “machines making decisions for businesses or individuals,” but my take is that AI is a tool to help people make better decisions. AI helps us connect the dots across huge data sets and gain insights to solv...

 

Top 20 vCenter Server articles for April 2017
vmware-dataservice-sca and vsphere-client status change from green to yellow /storage/log directory is full in vCenter Server Appliance 6.0 Purging old data from the database used by vCenter Server Unable to log into the root account of vCenter Server Appliance “Failed to verify the SSL certifica...

 

Top 20 NSX articles for April 2017
ESXi 5.5 and 6.0 hosts fail with a PSOD: VMCIEventDelayedDispatchCB@com Downloading and enabling VMware vShield Endpoint 5.x on supported VMware vSphere platforms Network ports required to access vCenter Server, ESXi, and ESX hosts vCenter Server certificate validation error for external solution...

 

Top 20 vSAN articles for April 2017
Update sequence for vSphere 6.5 and its compatible VMware products Component metadata health check fails with invalid state error Powering on virtual machines in VMware vSAN 5.5 fails with error: Failed to create swap file vSAN host may encounter a purple diagnostic screen during performance stat...

 

Top 20 vRealize Automation articles for April 2017
Update sequence for vSphere 6.5 and its compatible VMware products Update sequence for vSphere 6.0 and its compatible VMware products How to use JXplorer to update the LDAP string for an identity source for vRA 6.0.x, 6.1.x Directory sync in vRA 7.x fails with error ‘Connector Communication faile...

 

Top 20 vRealize Operations Manager articles for April 2017
Update sequence for vSphere 6.5 and its compatible VMware products Resetting the Administrator password in vRealize Operations Manager 5.x and 6.x Collecting diagnostic information from vRealize Operations Manager 6.x Update sequence for vSphere 6.0 and its compatible VMware products Enabling SSH...

 

Top 20 Horizon View articles for April 2017
Provisioning or recomposing a linked clone desktop pool fails Restart order of the View environment to clear ADLDS (ADAM) synchronization in Horizon View Removing invalid linked clone entries automatically using the ViewDBChk tool in VMware Horizon View 5.3 and later versions VMware View ports an...

 

Top 20 vRealize Log Insight articles for April 2017
Update sequence for vSphere 6.5 and its compatible VMware products FAQ: Log Insight for vCenter Server Authentication with Active Directory is slow in VMware vRealize LogInsight 3.0 when users belong to multiple nested groups Log Insight load balancer incompatible with NSX Distributed Firewall Pr...

 

Top 20 ESXi articles for April 2017
ESXi host fails with PSOD when using Intel Xeon Processor E5 v4, E7 v4, and D-1500 families ESXi host fails with intermittent NMI PSOD on HP ProLiant Gen8 servers Unable to power off the virtual machine in an ESXi host Recreating a missing virtual machine disk descriptor file Permanent Device Los...

 

New KB articles published for week ending 29th April 2017
VMware App Volumes Excluding files and locations from Writable Volumes Published Date: 2017/04/23 VMware ESXi Hosts fails with a purple diagnostic screen when retrieving flows for ALG enabled protocols Published Date: 2017/04/24 VMware ESXi 5.5 & 6.0 may fail with PSOD when IPFIX is disabled Publ...

 

‘May the 4th Be with You’ on Your Journey to the Cloud
The public cloud has stepped out of the shadows and stretched across the solar system as organizations scale their usage of it to extend on-premises infrastructure, consolidate or migrate data centers, and support dynamic capacity requirements.   But many organizations also run apps and manage on...

 

Oracle Database 12c on VMware vSAN — Day 2 Operations and Management
Oracle Database 12c on VMware vSAN — Day 2 Operations and Management Customers deploying production Oracle workloads have stringent requirements to support and maintain critical database operational tasks such as Backup and Recovery, Cloning, Data Refresh for Development/Test environment and Patc...

 

Partner Spotlight: NTT’s Virtual Infrastructure Makes the Switch to the Public Cloud Even Easier
These days, every company has cloud adoption square in their sights. And frankly, it’s a matter of survival . But making the switch to the public cloud is difficult, weighted by legacy systems and incompatible architecture. Fortunately, virtualization may hold the key to success.   In the latest ...

 

The NSX Mindset
The NSX Mindset: one’s mental capability to be a determined leader and catalyst for change in the way a company designs, implements, manages, and operates networking and security. Change isn’t easy. Especially when it involves something personal. Unfortunately, though, it happens whether we like ...

 

Dogfooding the Cloud: How VMware Used vCloud Director to Consolidate Internal IT
By Tina Cressia-Thomas   In Silicon Valley, it’s common to hear of companies, “dogfooding” their product – using their own product internally – to quickly iterate and develop a better user experience before releasing to customers. There’s plenty of famous examples ; however, it’s not every day yo...

 

Apple Takes the Wearables Lead, Decoding Win10 S, Internet 4.0 & More Top Mobile News
Sorry, Fitbit, there’s a new sheriff in town. With nearly 60% growth in shipments in Q1 this year, Apple Watch officially became the king of the consumer wearables castle, according to CNBC . Fitbit, which was the long-time market leader, dropped to second after a 35% decline in Q1. Get the mobil...

 

Top EUC News: Password Misery, Windows 10 S & Dell EMC World, Oh My!
Here’s the first edition of our new series, top end-user computing (EUC) news! Sign up at the top of this page to get the weekly newsletter in your inbox every Friday. The password is … We released the results of a new VMware survey this week that revealed companies’ top 10 identity and access ma...

 

3 Ways Industry 4.0 & Wearables Revolutionize Supply Chains Today
At ProMat 2017, the largest material handling, logistics and supply chain show and conference in North and South America, “Industry 4.0” was THE hot topic. But what exactly is Industry 4.0 and how will it revolutionize supply chains? According to Markus Lorenz , partner and managing director at B...

 

Building Great Technology Starts with Building a Great Team, Part 1
Follow the VMware UX Series. Here at VMware AirWatch , we work hard to create a progressive culture that promotes cross-functional collaboration and fosters a strong drive to execute effectively. Last year, Tony Keuh saw an opportunity for our engineering, user experience (UX) and marketing teams...

 

Decoding Windows 10 S & How to Make It a Success in Your Organization
There’s little doubt that Windows 10 adoption is on a roll— 400+ million devices and 54% of global organizations are running Microsoft’s latest operating system (OS). It’s only about a month since the third major upgrade ( Creators Update /v1703) was launched, and Microsoft is continuing to ride ...

 

10 Reasons Why Enabling More than Secure Email for Mobile Workers Is So Hard
Get the 10 reasons in this free eBook. Securely enabling more than email for mobile workers is hard. You know it. We know it. The question thus far is why it’s so hard. IT gives workers the secure work apps they need to securely work from anywhere. Yet for reasons mostly unknown, workers do not a...

 

New Research: Top 10 Identity and Access Management Challenges
As organizations undergo digital transformation, they experience challenges along the way. This is due to the fact that this transformation often requires them to update and/or replace legacy solutions. They also have to implement new ways of securing access from the plethora of devices out there...

 

Azure AD Join with VMware Workspace ONE
Secure, timely support for remote Windows users can be tricky. Imagine your top remote sales rep breaks her laptop before an onsite meeting with a vital client. Does she have time to wait for IT to grab a new laptop, Domain Join it for secure access to corporate resources and then ship it out? Ev...

 

VMware AirWatch – NSX Integration
Integrate VMware AirWatch Enterprise Mobility Management with VMware NSX Network Virtualization and Security Platform to extend security policies from the data center to mobile application endpoints. VMware AirWatch – NSX Integration brings speed and simplicity to networking and micro-segmentatio...
May 1, 2017 3:00:24 PM

 

EXTERNAL NEWS FROM 3RD PARTY BLOGGERS
Virtually Speaking Podcast: VMW Cloud on AWS
Advertise here with BSA I was on vacation the past two weeks, yesterday I got a message from Frank Denneman and Pete Flecha if I had some time available. I was working in my backyard so dropped my tools and hopped on. Apparently John was sick, so I took his spot and here’s the result. Interesting...

 

x509 error logging into harbor registry via VIC VCH
In my last post, I showed some of the new command line functionality associated with deploying out a new Virtual Container Host (VCH) with vSphere Integrated Containers (VIC) . I also highlighted how VIC now includes both Admiral for container orchestration via templates and the harbor registry i...

 

VMware PowerCLI 6.5.1 Installation Walkthrough
VMware PowerCLI 6.5.1 introduces a new installation method to users. This new method pulls directly from the PowerShell Gallery

 

Correlating vSAN perf metrics from vSphere Web Client to both PowerCLI & vSAN Mgmt API
While going through the PowerCLI 6.5.1 release notes last week, in addition to the new Get-VsanView cmdlet which exposes the complete vSAN Management API through PowerCLI, I had learned that we had also released a new Get-VsanStat cmdlet. This new cmdlet allows customers to easily retrieve the va...

 

vSAN 6.6: Manual vs Automatic Disk Claim Mode
Advertise here with BSA I received this question on Manual vs Automatic disk claim mode in vSAN 6.6. Someone upgraded a cluster from 6.2 to 6.6 and wanted to add a second cluster. They noticed that during the creation of the new cluster there was no option to select “automatic vs manual”. I think...

 

VMware Validated Design (VVD) & VMware Cloud Foundation (VCF) Quick References
The other day, I had a customer ask about the latest version of the Ports and Protocols document that was put together by the VMware Validated Design (VVD) team which does a fantastic job of outlining all the connectivity between the products used within the VVD SDDC. It actually took me awhile t...

 

Getting started with VIC v1.1
VMware recently release vSphere Integrated Containers v1.1. I got an opportunity recently to give it a whirl. While I’ve done quite a bit of work with VIC in the past , a number of things have changed, especially in the command line. What I’ve decided to do in the post is highlight some of the ne...

 

vSAN Deep Dive
This session covers basic to advance vSAN topic. Watch this video if you to learn basics and few of the advance areas of vSAN.

 

Welcoming PowerCLI to the PowerShell Gallery
While I’ve always enjoyed using VMware’s PowerCLI module for PowerShell, it has been a bit annoying having to navigate to the official VMware site, log in, download the bits, agree to terms, and do a thick installation on every workstation or server that needs the code. Which is why I’m quite hap...

 

Dell EMC World 2017–here we come!
We are 6 days away from getting together at #DellEMCWorld 2017 with 12,000+ of our closest friends, customers, and partners.   I love that I can say “don’t just listen to me, here’s what attendees say” (click on the below for a LOT more)! So what should you expect?   Product announcements, 3 gene...

 

Can I front vSAN with a VAIO Caching Solution?
Advertise here with BSA I had this question a couple of times already, so I figured I would write a quick post. In short: yes you can put a VAIO Filter in front of vSAN. The question really is, which one would you like to use and why? First of all, the VAIO Filter needs to be certified to be plac...

 

DISCLAIMER
While I do my best to publish unbiased information specifically related to VMware solutions there is always the possibility of blog posts that are unrelated, competitive or potentially conflicting that may creep into the newsletter. I apologize for this in advance if I offend anyone and do my best to ensure this does not happen. Please get in touch if you feel any inappropriate material has been published. All information in this newsletter is copyright of the original author. If you are an author and wish to no longer be used in this newsletter please get in touch.

© 2017 VMware Inc. All rights reserved.

Host not responding

$
0
0

When host is not responding and not able to press F2 key but it is ping able

 

Mostly issue from storage side scsci reservation locked host's lock file and not able to release it

 

It depend on storage environment in vnx when we check we got

 

09/08/17 10:22:06 FCDMTL 9 (FE1/SC)  ebd1b60 Target command error: mp context 0x300ff, SCSI status = 0x18 - returned by UL

                       A 09/08/17 10:22:06 TDD f32c7730 GRO:Register/Reserve Reservation RsvKey Mismatch Error.

                       A 09/08/17 10:22:06 FCDMTL 9 (FE1/SC)  ef6f680 Target command error: mp context 0x100f6, SCSI status = 0x18 - returned by UL

                       A 09/08/17 10:22:06 TDD f32c7730 GRO:Register/Reserve Reservation RsvKey Mismatch Error.

 

Here scsi reservation because of HLU and ALU was mismatch

Need to reconfigure from storage side and reboot all host in the cluster

 

VMware Photon OS へのパッケージ追加。(tdnf / yum)

$
0
0

VMware Photon OS はコンテナむけの軽量 OS として提供されているので、

デフォルトでインストールされるパッケージも最小限にされています。

そのため、当然ながら他のディストリビューションで普段利用しているコマンドが

インストールされていなかったりすることもあります。

 

たとえば、Photon OS 1.0 の OVA (Build は 62c543d)をデプロイしてみると、

diff コマンドがインストールされていなかったりします。

root@photon-NaoOL4Nm6 [ ~ ]# cat /etc/photon-release

VMware Photon Linux 1.0

PHOTON_BUILD_NUMBER=62c543d

root@photon-NaoOL4Nm6 [ ~ ]# diff

-bash: diff: command not found

root@photon-NaoOL4Nm6 [ ~ ]# which diff

which: no diff in (/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin)

 

デフォルトの RPM 構成は今後のアップデートでも、また変わったりするのではないかと思います。

そこで今回は Photon OS への RPM 追加についての話です。

 

Photon OS では、Yum リポジトリで RPM が提供されていれば、

tdnf コマンドでインストールすることができます。

ただし、標準では yum コマンドではなく tdnf コマンドを利用します。

yum コマンドは、デフォルトではインストールされていません。

root@photon-NaoOL4Nm6 [ ~ ]# yum

-bash: yum: command not found

 

tdnf では yum コマンドと同様のオプションが使用できるようになっています。

たとえば、下記のように「diff」がインストールされていそうな RPM を探したりできます。

例では、Photon でも diffutils が提供されていることが分かります。

そしてインストールすると、diff コマンドが利用可能になります。

root@photon-NaoOL4Nm6 [ ~ ]# tdnf search diff

diffutils : Programs that show the differences between files or directories

root@photon-NaoOL4Nm6 [ ~ ]# tdnf install -y diffutils

 

Installing:

diffutils                       x86_64      3.3-3.ph1           862.60 k

 

Total installed size: 862.60 k

 

Downloading:

diffutils                               319216    100%

Testing transaction

Running transaction

 

Complete!

root@photon-NaoOL4Nm6 [ ~ ]# which diff

/usr/bin/diff

 

ちなみに、yum を tdnf でインストールすることもできます。

root@photon-NaoOL4Nm6 [ ~ ]# tdnf install -y yum

 

Installing:

rpm-devel                       x86_64      4.11.2-11.ph1       389.27 k

libxml2                         x86_64      2.9.4-3.ph1           7.27 M

pycurl                          x86_64      7.21.5-3.ph1        143.50 k

yum-metadata-parser             x86_64      1.1.4-2.ph1          57.10 k

urlgrabber                      noarch      3.10.1-2.ph1        505.29 k

yum                             noarch      3.4.3-6.ph1           4.18 M

 

Total installed size: 12.52 M

 

Downloading:

yum                                    1359795    100%

urlgrabber                              150199    100%

yum-metadata-parser                      24490    100%

pycurl                                   52877    100%

libxml2                                1548443    100%

rpm-devel                               117961    100%

Testing transaction

Running transaction

 

Complete!

root@photon-NaoOL4Nm6 [ ~ ]#

 

yum コマンドが利用できるようになりました。

root@photon-NaoOL4Nm6 [ ~ ]# yum repolist

Failed to set locale, defaulting to C

lightwave                                                   | 1.3 kB  00:00

lightwave/primary                                           |  13 kB  00:00

lightwave                                                                 68/68

photon                                                      | 1.3 kB  00:00

photon/primary                                              | 202 kB  00:00

photon                                                                  537/537

photon-extras                                               | 1.3 kB  00:00

photon-extras/primary                                       | 6.8 kB  00:00

photon-extras                                                             29/29

photon-updates                                              | 1.3 kB  00:00

photon-updates/primary                                      | 490 kB  00:00

photon-updates                                                        1421/1421

repo id                  repo name                                        status

lightwave                VMware Lightwave 1.0(x86_64)                       68

photon                   VMware Photon Linux 1.0(x86_64)                   537

photon-extras            VMware Photon Extras 1.0(x86_64)                   29

photon-updates           VMware Photon Linux 1.0(x86_64)Updates           1421

repolist: 2055

root@photon-NaoOL4Nm6 [ ~ ]#

 

ただ、デフォルトでは tdnf コマンドを利用するようになっていて、

Photon 以外の Linux ディストリビューションでもYUM 以外の

パッケージマネージャ(Fedra では DNF とか)を採用しているようなので、

個人的には可能な限り yum よりも tdnf を利用しておくとよいかなと思っています。

 

以上、Photon のパッケージ管理についての話でした。

vRA and The Problem of the vCenter Folder

$
0
0

vRA and The Problem of the vCenter Folder

 

 

Between speaking with customers, architecting and deploying solutions, and helping others out with their issues on the VMware Communities forums, I encounter a lot of problems and get a lot of info on how customers do business with their CMPs. One of the requests that keeps coming up over and over again is how to deal with putting vRA’s workloads into the correct folder structure that has already been established in an enterprise. Very often—especially in large vCenter servers—companies have an established folder structure which could be quite complex. It is not unheard of to see a tree structure ten levels deep. These folders not only serve the purpose of providing visual VM organization, but also in defining permissions, monitoring, and backup boundaries. Permissions can be assigned at those folders granting access to the responsible parties. Folders, for example with vROps, can segregate monitoring policies. And just about every backup application on the market can now use vCenter folders as their organizational concept when setting up jobs. So they tend to be very important to certain organizations in a variety of ways. When implementing a CMP it is therefore important that it be able to fit into the established folder schema.

 

vRealize Automation (vRA) is certainly capable of putting its VMs into folders. In fact, if you changed nothing out of the box, it deposits its deployed VMs into a default vCenter folder called “VRM”.

For smaller shops that don’t really worry about folders, maybe this is fine. Through use of custom properties, vRA can stash those VMs into a folder of your choosing. By specifying the property VMware.VirtualCenter.Folder, the value of which determines the folder, any system deployed from vRA will land in that folder.

 

Use of a forward slash (“/”) indicates a separate level in the folder tree. The above would yield the following result below.

 

Anywhere this custom property is present within vRA that a deployment “touches” will be inherited and applied. For example, if this property were applied at the vCenter endpoint level, a VM that is deployed to that endpoint will be affected by the custom property. Likewise, if this property is present on a business group, and a user from that business group requests a machine, that machine will go into the folder specified by the custom property. What happens if this property is present twice at different locations? In that case, an order of precedence applies where the property which occurs later overrides one earlier. For example, if the property were on both a business group and specified at time of request, the value at time of request would win. While this provides some level of customization above what the VRM default folder affords, it’s still not enough for many customers. The ultimate desire is to have vRA deposit systems into the exact folder given a number of variables that might include things like department, environment, geographic location, and application. That level of flexibility is just not possible in vRA today without taking to vRealize Orchestrator (vRO) and writing custom JavaScript code. Until recently, that last sentence was true, but now SovLabs has an answer that changes everything and gives you the power you need.

 

            With the 2017.3 release of SovLabs Extensibility Modules for vRA comes a new module called the SovLabs Property Toolkit for vRealize Automation. This module has two main abilities. The first is to change and manage custom properties on systems after they have been deployed.  This is extremely powerful, as this kind of functionality does not exist natively in vRA and requires custom vRO workflows and code today.  The second capability, the subject of this blog and the answer to our prayers, is to create dynamic property sets or groups of properties. With dynamic property sets, each property within the set can derive its name and value based on the value of other vRA custom properties or any custom logic utilizing the SovLabs Template Engine. With a dynamic property set, you can now derive a value for VMware.VirtualCenter.Folder from VM properties, including user-input values at request time. Let’s dig in and see this in action.

 

            Imagine the following scenario, which I’ve taken from a real customer setup but made my own alterations:  Your organization is very strict in its vCenter configurations. With over 4,000 virtual machines, you have to be organized. Further, with multiple locations, multiple lines of business, multiple environments, and even more applications, things get downright dirty if they aren’t carefully organized. This is the folder organization we must achieve.

Backup jobs are organized by these folders with specific retention policies applied due to regulatory compliance requirements. And your operations team allows access to these applications from the app teams themselves, which means you can’t give open access to everything in vCenter. This scenario is very real for many organizations. Let’s see how the SovLabs Property Toolkit module can easily handle this type of structure.

 

            As shown above, we have a 5-level folder hierarchy in which we want vRA to stash machines that result from deployments. There are multiple options at each of these levels. For example, let’s start and assume we have the following specific structure:  Southeast -> Inside -> Sales -> Production -> Oracle. We need to create labels for each of these levels and put them around vRA for the module to consume. The reason is simple:  vRA services multiple regions, groups, departments, environments, and applications, and we must be able to distinguish between, say, Oracle and Sharepoint for each combination thereof. We’ll create custom properties for each of these levels in the hierarchy and apply them to the relevant constructs within vRA. This is a table of the custom properties I’ve created, their value, and where they reside.

 

Property Name

Value

Location in vRA

  1. VCFolder.Region

Southeast

Cluster Compute Resource

  1. VCFolder.BusGroupDept

Inside/Sales

Business Group

  1. VCFolder.Environment

Production

Cluster Compute Resource

  1. VCFolder.Application

Oracle

Blueprint (show in request)

 

The cluster (of which there is only one since this is a lab) has the Region and Environment properties, but imagine that we had multiple clusters, one for production and another for non-production. Those properties would then be split up. We’ve created a business group called “Inside – Sales”. There are others that begin with “Inside” but might be “Engineering” or something similar. The names are effectively two components of our folder naming plan. Lastly, the application is defined in our property dictionary and presents as a drop-down list of application names. This property has been added to our blueprint and is being shown to users in the request form. The reason being that, in this scenario, we’re only deploying IaaS and not PaaS, so applications have yet to be installed.

 

            Now comes the magic. We have our property names established and configured. It’s time to configure the integration. For this, we must create a new custom property beginning with SovLabs_CreateProperties_. This prefix is required and is how the module knows to invoke the action defined in its value. In this case, I’ve created SovLabs_CreateProperties_VCFolder. I’ve done this directly on a test blueprint we’ll deploy in just a minute. The value is the most important part as it is JSON describing how the VMware.VirtualCenter.Folder property is to be constructed.

 

{ "name": "VMware.VirtualCenter.Folder", "value":"{{VCFolder.Region}}/{{VCFolder.BusGroupDept}}/{{VCFolder.Environment}}/{{VCFolder.Application}}" }

 

With this value, we are telling it to templatize the VMware.VirtualCenter.Folder property from all the constituent parts it comprises. The forward slashes denote the hierarchy.

 

If we go to our catalog and select this item, we then are asked to tell it what application we want.

We submit the request and stand back for a second. Actually, let’s check vCenter and see what vRA does.

 

Ah, so we see the individual folder create tasks hit vCenter. By default, vRA will look for the value of VMware.VirtualCenter.Folder, and if it doesn’t exist it will create every level that is present. This shows we’re on the right track with a result.

Alright, that’s what we want to see! Is that not cool?! Once the machine is built, we can check the properties tab (presuming you have business group manager role assigned) and see the resulting custom properties from all over that applied to the deployment.

 

So as to be expected, the module gathered our custom properties from all around vRA and, based on the template we defined as the value of SovLabs_CreateProperties_VCFolder, patched together the VMware.VirtualCenter.Folder property dynamically at build time all without having to write so much as a single line of JavaScript. That’s pretty amazing and powerful functionality right there, especially keeping in mind that if another user were deploying from a separate business group, the resulting folder would be different, so entirely dynamic.

 

            I hope this small tutorial has piqued your interest in the possibilities this module unlocks. The sky is the limit. Next time, we’ll look at another common use case for this SovLabs Property Toolkit module: Multiple property background assignment.

PowerCLI で見る vCenter の TaskInfo。

$
0
0

突然ですが、vCenter のタスク情報の一覧を PowerCLI で見てみようと思います。

 

vSphere API では、下記のあたりの情報です。

 

Data Object - TaskInfo(vim.TaskInfo)

https://code.vmware.com/apis/196/vsphere#/doc/vim.TaskInfo.html

 

PowerCLI から見る TaskInfo

vSphere Web Client / vSphere Client などで見られる vCenter のタスク情報は、

PowerCLI だと下記のように見ることができます。

 

まず、VM を起動してみます。

PowerCLI> Get-VM vm21 | Start-VM

 

 

Name                 PowerState Num CPUs MemoryGB

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

vm21                 PoweredOn  1        0.500

 

 

この VM の直近のタスクを見てみます。

PowerCLI> Get-VM vm21 | select Name,{$_.ExtensionData.RecentTask}

 

Name $_.ExtensionData.RecentTask

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

vm21 Task-task-17043

 

 

PowerCLI> (Get-View (Get-VM vm21).ExtensionData.RecentTask).Info

 

 

Key           : task-17043

Task          : Task-task-17043

Description   :

Name          : PowerOnVM_Task

DescriptionId : VirtualMachine.powerOn

Entity        : VirtualMachine-vm-500

EntityName    : vm21

Locked        :

State         : success

Cancelled     : False

Cancelable    : False

Error         :

Result        :

Progress      :

Reason        : VMware.Vim.TaskReasonUser

QueueTime     : 2017/09/14 11:31:41

StartTime     : 2017/09/14 11:31:41

CompleteTime  : 2017/09/14 11:31:45

EventChainId  : 702468

ChangeTag     :

ParentTaskKey :

RootTaskKey   :

ActivationId  :

LinkedView    :

 

 

タスクの内容が分かりやすい、DescriptionId だけに絞ってみます。

直近の VM を起動したタスクだとわかります。

PowerCLI> Get-VM vm21 | select Name,{(Get-View $_.ExtensionData.RecentTask).Info.DescriptionId}

 

 

Name (Get-View $_.ExtensionData.RecentTask).Info.DescriptionId

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

vm21 VirtualMachine.powerOn

 

 

PowerCLI で タスク情報の一覧を取得してみる。

今回は、vCenter のタスクにどのようなものがあるのか PowerCLI で一覧を取得してみます。

まず今回使用した PowerCLI と、vCenter のバージョンです。

 

PowerCLI 6.5.1 と、vCenter 6.5 U1 を使用しています。

PowerCLI> (Get-PowerCLIVersion).UserFriendlyVersion

VMware PowerCLI 6.5.1 build 5377412

PowerCLI> Connect-VIServer vc-sv01.go-lab.jp | Out-Null

PowerCLI> $global:DefaultVIServer | fl Name,Version,Build,IsConnected

 

 

Name        : vc-sv01.go-lab.jp

Version     : 6.5.0

Build       : 5973321

IsConnected : True

 

 

TaskManager から、タスク情報を取得してみます。

1500 件以上あるようです。

PowerCLI> $t = Get-View $global:DefaultVIServer.ExtensionData.Content.TaskManager

PowerCLI> ($t.Description.MethodInfo).Count

1578

 

とりあえず 10件だけ取得してみると、下記のような感じです。

PowerCLI> $t.Description.MethodInfo | select -First 10 | fl

 

 

Key     : host.OperationCleanupManager.createEntry

Label   : createEntry

Summary : createEntry

 

Key     : host.OperationCleanupManager.updateEntry

Label   : updateEntry

Summary : updateEntry

 

Key     : host.OperationCleanupManager.queryEntry

Label   : queryEntry

Summary : queryEntry

 

Key     : vm.guest.GuestOperationsManager.queryDisabledMethods

Label   : Query disabled guest operations

Summary : Returns a list of guest operations not supported by a virtual machine

 

Key     : profile.host.HostSpecificationManager.updateHostSpecification

Label   : updateHostSpecification

Summary : updateHostSpecification

 

Key     : profile.host.HostSpecificationManager.updateHostSubSpecification

Label   : updateHostSubSpecification

Summary : updateHostSubSpecification

 

Key     : profile.host.HostSpecificationManager.retrieveHostSpecification

Label   : retrieveHostSpecification

Summary : retrieveHostSpecification

 

Key     : profile.host.HostSpecificationManager.deleteHostSubSpecification

Label   : deleteHostSubSpecification

Summary : deleteHostSubSpecification

 

Key     : profile.host.HostSpecificationManager.deleteHostSpecification

Label   : deleteHostSpecification

Summary : deleteHostSpecification

 

Key     : profile.host.HostSpecificationManager.getUpdatedHosts

Label   : getUpdatedHosts

Summary : getUpdatedHosts

 

 

PowerCLI>

 

最初に確認した VM を起動したタスクについての情報も含まれています。

PowerCLI> $t.Description.MethodInfo | where {$_.key -eq "VirtualMachine.powerOn"} | fl

 

Key     : VirtualMachine.powerOn

Label   : Power On virtual machine

Summary : Power On this virtual machine

 

 

再起動だと、下記のようなタスクです。

PowerCLI> $t.Description.MethodInfo | where {$_.key -eq "VirtualMachine.rebootGuest"} | fl

 

Key     : VirtualMachine.rebootGuest

Label   : Initiate guest OS reboot

Summary : Issues a command to the guest operating system asking it to perform a reboot

 

 

ちなみに、下記のように CSV で出力することもできます。

PowerCLI> $t.Description.MethodInfo | Export-Csv -Encoding utf8 -NoTypeInformation -Path C:\work\vc-task.csv

PowerCLI> cat C:\work\vc-task.csv | select -First 10

"Key","Label","Summary"

"host.OperationCleanupManager.createEntry","createEntry","createEntry"

"host.OperationCleanupManager.updateEntry","updateEntry","updateEntry"

"host.OperationCleanupManager.queryEntry","queryEntry","queryEntry"

"vm.guest.GuestOperationsManager.queryDisabledMethods","Query disabled guest operations","Returns a list of guest operations not supported by a virtual machine"

"profile.host.HostSpecificationManager.updateHostSpecification","updateHostSpecification","updateHostSpecification"

"profile.host.HostSpecificationManager.updateHostSubSpecification","updateHostSubSpecification","updateHostSubSpecification"

"profile.host.HostSpecificationManager.retrieveHostSpecification","retrieveHostSpecification","retrieveHostSpecification"

"profile.host.HostSpecificationManager.deleteHostSubSpecification","deleteHostSubSpecification","deleteHostSubSpecification"

"profile.host.HostSpecificationManager.deleteHostSpecification","deleteHostSpecification","deleteHostSpecification"

PowerCLI>

 

取得した CSV ファイルは下記のような感じでした。

vc-task.csv · GitHub

 

以上、PowerCLI で TaskInfo の一覧を取得してみる話でした。

Useful vRealize Orchestrator workflows

$
0
0

I´ve published several very useful vRealize Orchestrator workflow packages on my website. They are good for extending vRealize Automation or to use with vCenter WebClient.

 

CoolMail

  This package enables vRO to send HTML formatted emails via SMTP.

Highlights

  • Use preformatted HTML or plaintext email Templates
  • Replace {tags} in the Mail template with vRO values
  • Repeats HTML structures and fills them either with values from arrays or from properties.
  • Use a configuration to centrally store your mail settings

Description

The coolMail subsystem works by substituting a tag with an vRO value. A coolMail tag can be freely defined and must have { } winged brackets around it. For example {vm.name} or {userName}.

The User just prepares a HTML template (e.g. using html-online.com) and inserts tags where later values from vRO should be displayed. This enables one for example to create very nice looking HTML email that can be used with vRealize Automation (vRA).

 

MORE INFO

 

CoolRun

  This package enables vRO to run scripts of various types inside a VM using VMware tools.

Highlights

  • Easy to use script ruinning engine
  • Replace {tags} in the script template with values from vRO
  • Can use Windows, Linux, (virtual) ESXi and Photon OS 
  • Runs Linux Bash, Linux PHP, Linux Python, Linux Perl, Windows DOS, Windows PowerShell, Windows Diskpart
  • Can be easily addapted to run other OSs or Script types
  • Stores Configuration centraly and differentiates between Linux and Windows login credentials

Description

CoolRun enables you to run scripts inside a VM without caring to much about copy, run, check etc. Using {tags} in the script you can replace these tags with any value from vRO. The workflow has the correct script exection setting for Linux Bash, Linux PHP, Linux Python, Linux Perl, Windows DOS, Windows PowerShell, Windows Diskpart build in. This for example allows a user to create a workflow that would add a new Disk to a Windows VM and then runs Windows Diskpart to create a partition, formatting it and assign a lab to it.

CoolRun is also built in such a way that it can be easily adapted to other script languages as well as OSs.  

 

MORE INFO

 

logAllProps

This workflow allows you to completely read out a property in all its details. The output will be displayed into the logs of the workflow. This workflow is extremly useful for vRealize Automation (vRA)

Highlights

  • Recursive logging of properties within properties
  • displaying the variable type
  • showing the content of arrays

Description

This workflow will log the content of a property into the logs (System.log). The property can consists of multiple properties in properties as well as arrays. The workflow will also log all system context variables (mostly used with vRA). The input variable debugFlag can be null. If set to false the workflow is not executed. This can be used to make sure that the logging will only work in a debug situtation.

 

MORE INFO

https://thusithapererablog.wordpress.com/

ESXi 6.0 boot screen stuck at "Loading module ipmi_si_drv"


PSC is not opening in Web-Client

$
0
0

This issue mostly comes when we upgrade PSC ( appliances) , not able to open PSC in GUI mode.

 

This is certificate issue . there are 2 solution

1. Take snap shot and regenerate certificate then restart web-client service

2. Decommission affected PSC ( first check which PSC is pointing if you have 2 PSC) do not touch pointing PSC

3. Once Decomm delete it from disk and remove it from AD/DNS

4. Recreate DNS record

5. Deploy new PSC and join in Domain

6. Try IP/psc you should able to open it in GUI.

 

 

Using the cmsso command to unregister vCenter Server from Single Sign-On (2106736) | VMware KB

Monitoring Veeam Backup & Replication with vROps

$
0
0

Monitoring Veeam Backup & Replication with vROps

 

         

 

Backup servers, I think we can all agree, are of primary importance. We rely upon them for business continuity as much as we rely upon other systems of primary record like Active Directory or DNS. So why is it that we monitor the latter systems with such fervor and the former not at all? Often times, we don’t know that backup systems are impacted until we go to attempt a restore when it’s necessary only to find it doesn’t work or you don’t have the needed restore point. We need to bring the same type of monitoring visibility to data protection systems that we bring to others. In order to do so, let’s look at monitoring Veeam Backup & Replication with vRealize Operations Manager. In this article, I’m going to illustrate how you can do so with Veeam Backup & Replication 9.5 Update 2 and vROps 6.6.1. The basic idea is to use the Endpoint Operations (EpOps) agent, which I’ll install on the Veeam server, and report back to vROps with the status on the various Veeam services.

 

We obviously need a working vROps system, but in addition we need to download the EpOps agent for Windows from MyVMware (my.vmware.com). Once you’ve grabbed the Windows EXE package that contains Java, download it to the Veeam B&R server. Before you start the installer, however, let’s get a plugin for vROps that can monitor the SQL database portion of Veeam as an added bonus. Navigate to this page on the Solution Exchange and download the plugin. Install into vROps under Administration -> Solutions. There are many guides that illustrate how to install a management pack, and the same process can be used here for an EpOps plug-in so I won’t cover it. Go back to your Veeam server and begin the installation wizard and input the values it requests. The second step in the wizard asks for the certificate thumbprint.

 

This you’ll have to get by logging into the administrative interface of vROps at https://<FQDN>/admin and selecting the button in the upper-right-hand corner. From there, it’s usually going to be the second certificate you see in the list.

 

In my case, this is a lab so I’m just using a self-signed certificate. Copy the thumbprint and paste it into the installer. Complete the installation by providing vROps credentials that have EpOps agent permissions. After installation, login to vROps and go to Administration -> Configuration -> End Point Operations and ensure your system is showing up and you have green icons. Beware it may take five minutes or so for everything to turn green.

 

Once all is green, the Veeam server is now reporting directly to vROps through use of this nifty agent. Now, browse to Environment -> Operating Systems -> Windows and expand the list. You should now see your Veeam server there and it will look something like this.

 

The first object in the tree with the “OS” in the monitor is the entry for the operating system entity, followed by the EpOps agent, and finally the SQL Express instance (or SQL Standard if you opted to use a full-blown SQL server). Clicking on any of these objects will give you the basic Summary dashboard, and under All Metrics you can see distinct metrics that each is reporting.

 

We can also see the databases on the system courtesy of the EpOps SQL plug-in we installed earlier, as well as metrics specific to each database. Notice how we did nothing to accomplish this? The SQL instance and databases are discovered by the plug-in. Very handy! And by the way, if you want even deeper visibility into how Veeam is using its SQL database, I’d recommend looking at the Blue Medora management pack for SQL as it contains a wealth of metrics that really allow you to dig deep into the application.

 

            Next, we need to add in the various Veeam services we want to monitor. If you’ve installed Veeam in a single-system setup, you’ll want to monitor everything there (most likely) including things like the Data Mover and Mount services.

 

In order to pick and choose the ones you want, we need to add them to vROps. Start by double-clicking a service in the list and note its service name (not the display name). Of primary importance is probably the Veeam Backup Service, so let’s start there.

 

The name is “VeeamBackupSvc” and this is what we must copy. From within vROps, click the Actions menu when you’re on the OS entity object and go to Monitor OS Object -> Monitor Windows Service.

 

Fill out the simple window and include a display name as you see fit. I just used the service display name for consistency.

 

I’d recommend setting the collection interval to 5, which is the default interval at which vROps collects metrics from external systems anyhow. Once done, you should now have a new object in the tree that represents the Veeam Backup service. Give it a couple collection cycles and ensure the object is collecting and shows online. Check out the metrics that are reported, specifically AVAILABILITY/Resource Availability (indicates if the service is up or down) and those under UTILIZATION (indicating CPU usage and in-memory size). Now to test that the monitoring of the backup service is working, stop the Windows service (obviously don’t do this during a backup job). Check the Alerts section in vROps and we should see something after a few minutes.

 

This generic alert indicates the object, whatever that is, has an availability score of zero or is down. Now with this alert, you can forward it across to your email systems, ticketing systems, or anything else that you may choose. In addition, you can build your own custom alert and symptom definition if you would like. The only thing left at this point is to add the remainder of the Veeam services and configure custom alerts and notification plug-ins. Now you should have a good understanding of the health of your Veeam server through EpOps agents and vROps.

Challenges in big data analysis for social media

$
0
0

I have been researching on Big data analytics for social networks for sometime now. I would like to share what I have seen and known. May be some discussion on it.

 

I would like to share the insight I have gained to the larger audience at VMWare.

 

Measuring IT efficiency varies significantly as the data capture, data processing and storage is viewed differently than the traditional systems in Big data analytics. Dell’s Hadoop infrastructure solutions have some answers.

 

Big data is all the voluminous and unstructured data from a wide ranging sources in the form of click stream data from websites, social media data like ‘Likes’, Tweets and ‘Blog posts’ etc. and from video entertainment as well. Just to give you an idea, Google processes about 24 petabytes of data and not all of this in rows and columns. The consumers as well as working professionals in the organizations have begun to realize the potential value and the intelligence that can be derived from the vast amount of data that is generated through social media conversations.

 

Big data technologies rely on their ability to handle large amounts of unstructured data. The server infrastructure capability depends on their ability to handle geometric growth of social networks. Data is generated all the time and in real time in social networks.

 

The challenges for mining such huge voluminous unstructured data are of two kinds. Firstly, this requires use of emerging technology such data mining grid and Map reduce infrastructures such as Hadoop and a non-linear and non-deterministic software architecture. This actually changes the way we think about data capture and processing.

 

Secondly, it is known fact that ‘what we measure is what we manage’. We need to know ‘What we are looking for’ and the timing ‘When to ask the question’ is important. ‘Spotting trends’ is one emerging area in social media analytics. Then the question, Do you know what you are looking for? Still lingers on.

 

Cheers.

Custom Naming in vRA with zero custom coding

$
0
0

Custom Naming in vRA with zero custom coding

 

         

 

Everyone’s got one, everyone needs them, and most people struggle with them. I’m talking about custom machine names, of course. Just like organizations themselves, naming schemes can be, and are about, as varied as possible. Some companies have fairly straightforward names with maybe two elements while others have extremely dynamic requirements that factor in five or six elements. Whatever your naming scheme might be, anyone who has used vRealize Automation (vRA) appreciates the difficulty of getting their naming scheme out of deployed machines. Unless you raised your hand with the more straightforward example and only use a couple simple elements, you aren’t going to be able to get it from vRA out of the box. In vRA, you’re limited to “machine prefixes” which are extremely basic consisting of a name (the prefix), number of digits, and a running counter of what the next number would be. With that, you could do something like “VM001” or “Sales-01” or “vra007”. Although that’s, well, cute, it’s almost totally useless if you hope to integrate vRA into your existing naming standard. To solve this vexatious issue, some have developed ad-hoc packages in vRealize Orchestrator (vRO) that make custom names a little better while others have taken to recreating the wheel themselves, often spending weeks or months writing, testing, debugging, and operationalizing custom code only to find they need to rinse and repeat when the new version of vRA or vRO comes along. So as I hope the picture I’m painting is clear, the solutions to date have not been satisfactory to really operationalize vRA in a stable, consistent, and enterprise-ready fashion. This changed dramatically when SovLabs entered the market with their plug-in for vRA. For the first time, there was a solution that solved many of the difficult extensibility challenges faced by organizations and solved them in a way which was consistent with their existing enterprise software experiences–that is to say, with software that is compiled, tested, maintained, updated, and, most importantly, supported by a team of developers. The solution that we’ll check out here is probably the most popular one amongst the crowd, and that is an enterprise-ready custom naming module. And, as the title of the article implies, we’ll demonstrate how you can implement a complex naming standard into your own vRA with zero custom code.

 

Custom Naming is just one of the many modules developed and delivered by SovLabs with others including things like Active Directory, DNS, IPAM, Backup-as-a-Service, and all of these from multiple vendors in the ecosystem. Basically, if you want to extend vRA to encompass it, they probably have it. Custom Naming is the one we’ll dive into today, however, but I’ll cover others in the future. This article is really intended to get you familiar with the power of custom naming and how to actually implement it inside vRA. It will assume you have already installed the plug-in in your vRO environment and licensed it appropriately.

 

Before we begin with the technical bits, we need to come up with a custom naming standard, and one that is realistic to your naming standard. This is what we’ll use as it’s based on a real, live enterprise customer that has datacenters all over the world with thousands of virtual machines deployed.

 

LLLT-OEEEAAA###

 

This needs a little explanation, so have a look at the key below to understand how this is broken down.

 

L = Location. Datacenter, Continent, Country, or State.

T = Type. P(hysical), V(irtual).

O = OS. L(inux), W(indows), E(SXi).

E = Environment. PRO(duction), DEV(elopment), Q(uality)A(ssurance)T, T(e)ST, ST(a)G(e).

A = Application. Various 3-character codes for any application.

# = Sequence.

 

Hopefully this is self-explanatory with some of the possibilities next to the descriptor. Based on this name, an example would be LONV-LPROORA023, indicating London, Virtual, Production, Oracle, and number twenty-three in the sequence. This example name is exactly fifteen characters in length, thus able to accommodate Windows’ naming limitations. Also, it’s worth pointing out that the 023 at the end is specific to the combination that precedes it. That is to say that it is the 23rd system that corresponds to that precise name combination, and each different combination has its own set of running sequence numbers.

So, a name like LONV-LPRONGX would have its own separate sequence that is maintained strictly for that combination. As you can see, this six-element name is rather complex yet is very real for some organizations. Let’s go on and see how simple this can actually be to accomplish with SovLabs’ solution.

 

After getting the plug-in installed and licensed, you’ll see two new catalog items inside vRA. By the way, these are created automatically so you need to do zero work inside vRA to see them. Just so that’s clear, I did not so much as lift a finger here after running a single configuration workflow from inside vRO.

We need to add the sequence first, then when we create the naming standard we will use that sequence as a part of it. Click on the Request button for Add Naming Sequence to pull up the request form.

First, thing is to give it a label. This label will be selected as a component of the naming standard, so give it a name that can easily be tied to that naming standard. I’ll call it “BlogSequence”. Next, select a sequence type. In virtually all of the cases, you’ll want to use decimal, but just in case you have a very unusual sequencing type, you can choose from hex, octal, or even a pattern consisting of a mix of bases and static text. The checkbox to reuse sequence values is for when a machine is destroyed that has a given sequence and you wish to reuse that in a new machine build. Max sequence length, the number of digits involved, three in our example case. Initial value, usually 1. Sequence padding are left-aligned numbers or characters to reach the value, so if your sequence length is three and you start with 1, then setting sequence padding to 0 gives your first machine a sequence of 001. Lastly, the unique key. This requires a bit of an explanation. I talked a bit earlier how we have a specific combination of naming elements that we need to maintain, and I used the examples LONV-LPROORA and LONV-LPRONGX to illustrate this. The unique key is that combination which precedes the sequence number. SovLabs uses a unique template engine to accomplish the work behind the scenes. We need to specify these name elements enclosed in double braces. Type the following below in the unique key window:

 

{{Location}}{{Type}}{{OS}}{{Environment}}{{Application}}

 

“What about the dash? Why do I need to type this stuff, and what does it mean? I’m lost!” Stay with me, all will become clear shortly.

 

            Go back to the catalog and request the Add Naming Standard catalog item.

Give it a name, choose the naming sequence that we created earlier, and then complete the template. Now, similar to the Unique Key field in the naming sequence, the Template uses the same labels in double braces, only this time we have to format it exactly how we want our name to be formed. So you can see I have added a dash between {{Type}} and {{OS}}. If you refer to our sample naming scheme at the outset, there is a dash that separates those two. So the Template here is the pattern in which the name will actually be generated and slapped on a machine whereas the Unique Key is what the module uses internally to keep track of the number sequences that get assigned. Make sense? Finally, at the end of the template, tack on BlogSequence by adding {{sequence.BlogSequence}}. All sequences must begin with the word “sequence” for the template to be valid. Submit the request and watch it complete.

Once this is successful, let’s see what happened in the background. Navigate t0 Administration -> Property Dictionary -> Property Groups. Notice that a new property group has been created automatically for you once the Naming Standard workflow completed successfully.

The name you see will be prefaced by your tenant, hence the word “ravel” you see above. So now we have a property group ready for use, and we put it to work by simply attaching it to a blueprint. Before we do that, however, we have to put those labels in place from which our naming standard was constructed. After all, vRA has to be able to tell the pieces and parts from which to pull actual names. We do this through the use of custom properties and by assigning them at specific locations inside vRA. Let’s explain.

 

              If you’re reading this it’s assumed you are familiar with custom properties, but if you aren’t familiar with them know that they’re essentially key/value pairs that enable a rich system of metadata within vRA. Properties can influence the behavior of vRA itself, or be used as tags that are consumed by other things for eventual action. The latter is how the SovLabs module works. Let’s start by taking the first element in our name, {{Location}}. If you have two datacenters into which you can deploy resources, you need to distinguish between the two. You more than likely have a vCenter at each location, and within vRA, vCenter Server is seen as an Endpoint. Find them at Infrastructure -> Endpoints -> Endpoints. Choose your vCenter endpoint and click on the Properties tab. We need to add a new property here with the idea being that if a machine were to be targeted at this endpoint, it would pick up any custom properties associated with it. Likewise, if it went to another endpoint, it would pick up all the properties saved on it. In this manner, vRA does a kind-of “crawl” through the system and whatever constructs were used in forming a machine the related properties are collected into a bundle and delivered to vRO for processing. Create a new custom property and call it Location. In our example naming scheme, location was three characters in length, so give the value of Location as three characters. I’m in Lexington, so I’ll call this value LEX.

If you’ve followed me thus far you’re probably getting the picture here, but just to state it more openly: We need to add custom properties throughout vRA and give them the necessary values which will factor into the custom name.

 

     To save time, here’s a table that shows the custom property, its value, and where in vRA I created it. This will hopefully give you a good idea as to what’s possible with these properties, but do understand that there are more places than this where properties can be attached.

 

Custom Property Name

Custom Property Value

Location

Location

LEX

Endpoint

Type

V

Blueprint -> Machine

OS

L

Blueprint -> Machine

Environment

PRO

Compute Resource

Application

ORA

Blueprint

 

Ok, so let me show you the blueprint portion since it may not be clear from the table above where those related properties are.

 

              I created a blueprint called “Oracle” and inside it is a single vSphere machine. There are three of the properties above that I created somewhere in this blueprint. First, the application I created on the blueprint object itself. You access this by editing the blueprint and choosing the gear icon in the upper-left corner.

Three things we have to do here on the blueprint object: 1.) Attach the property group that invokes the modules; 2.) Attach the group which calls our naming scheme; and 3.) Add the Application custom property that contains ORA corresponding to Oracle. When you click the Properties tab, click the Add button and browse for the following property groups.

On the Custom Properties tab now, add a new one and call it Application and provide ORA as the value.

Click OK as we’re done here. Now, click on the vSphere machine you dragged onto the design canvas and go into the Properties tab, Custom Properties sub-tab. Create two additional properties as shown in the table and provide the values.

Make any other changes you need and save the blueprint. Go through the process to publish and entitle it in your catalog. Now let’s go and request it to see if we get the name we want.

And, bam, there it is! So if we request another at this point, it’ll be 002. But if we were to build another blueprint and leave all the same values except change the Application custom property to a something else, say like NGX, the name would be LEXV-LPRONGX001 because this is a different unique key so the sequence is different.

 

            Now you know the power of what this can do for your custom naming strategy, so feel free to try out various combinations of names, create different blueprints with different machines, and assign custom properties all throughout vRA. Once you become proficient with stringing properties together, have a look at the template language it uses for even more flexibility. For example, maybe you want to re-use the OS custom property in multiple workflows aside from just custom naming, but you need the full word “Linux” and not just a single letter. Using the template engine, the module can perform operations on those property values at runtime, for example you could use the truncate filter to just get the letter L by doing {{OS | truncate: 1}}, and if your naming standard uses lower-case letters you can perform even more manipulation by doing {{OS | truncate: 1 | downcase}}. This would give you the lower-case “l” from the property that has the value “Linux”.

 

              I hope this article has proven how immensely powerful yet simple and elegant this module is at producing complex names that were impossible otherwise, and all while writing absolutely zero custom code yourself. There’s no need to fear wrapping vRA into your company’s custom naming standard now, because regardless of how complex or involved it may be, the module can handle it with ease.

My Top 3 Favorite/Informative UEM Community Forum Discussions – August/September 2017

Viewing all 3805 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>