Creative Service Catalog Descriptions in CloudForms

In this post, we will show you how to make your service catalog descriptions more elegant and flexible in Red Hat CloudForms. If you just type a description, along with a long description, you&;ll get something like this:

 
This is fine, it&8217;s informative and simple. But we could improve on it.
The Long Description field in a CloudForms catalog item can take raw HTML. This means we can add some additional changes like font size and bold text. Here is a more complex catalog item for example:

 
The Implementation
Really there isn&8217;t much limit on what you can do with these other than your imagination and HTML skills. Just be aware that global style tags will not function in the self-service UI, but inline formatting works just fine. Some options, like the one above, might just add a bit of aesthetic sugar, but more complex services, especially those that will be presented to customers, can be complemented by an informative and attractive description.
For example, let’s say we have a service that provisions two virtual machines and a load balancer. We could use the following HTML:
<!DOCTYPE html>
<html>
<body>
<h1>Create 2 Virtual Machines under a Load balancer and configure Load Balancing rules
for the VMs</h1>
<p>This template allows you to create 2 Virtual Machines under a Load balancer and
configure a load balancing rule on Port 80. This template also deploys a Storage
Account, Virtual Network, Public IP address, Availability Set and Network
Interfaces.</p>
<p>In this template, we use the resource loops capability to create the network
interfaces and virtual machines</p>
</body>
</html>
Which would give us something like this:

 
Take a look at how it’s displayed in the self service UI, both when hovering over the information link:

 
And on the order page itself:

 
As you develop more complex services, the value of these features will become more and more apparent.
A More Complex Example
Let’s take a look at a service that deploys and configures multiple virtual machines in Microsoft Azure and sets up Ansible to manage them. Everything you need to create this service can be found on the GitHub page with the Orchestration Template. Especially since we can automatically generate service dialogs from these templates. This code:
<!DOCTYPE html>
<html>
<body>
<h1>Advanced Linux Ansible Template: Setup Ansible to efficiently manage N Linux VMs</h1>
<p>This advanced template deploys N Linux VMs (Ubuntu) and it configures Ansible so you
can easily manage all the VMS . Don’t suffer more pain configuring and managing all
your VMs, just use Ansible! Ansible is a very powerful masterless configuration
management system based on SSH.</p>
<p>This template creates a storage account (Standard or Premium storage), a Virtual
Network, an Availability Sets (3 Fault Domains and 10 Update Domains), one private
NIC per VM, one public IP, a Load Balancer and you can specify SSH keys to access
your VMS remotely from your latop. You will need an additional certificate / public
key for the Ansible configuration, before executing the template you have upload them
to a Private Azure storage account in a container named ssh.</p>
<p>The template uses two Custom Scripts  :</p>
<ul>
<li>The first script configures SSH keys (public) in all the VMs for the Root user
so you can manage the VMS with ansible.</li>
<li>The second script installs ansible on a A1/DS1 Jumpbox VM so you can use it as a
controller.The script also deploys the provided certificate to /root/.ssh. Then,
it will execute an ansible playbook to create a RAID with all the available
disks.</li>
<li><p>Before you execute the script, you will need to create a PRIVATE storage
account and a container named ssh, and upload your certificate and public keys
for Ansible/ssh. </p>
<p>Once the template finishes, ssh into the AnsibleController VM (by defult the
load balancer has a NAT rule using the port 64000), then you can manage your VMS
with Ansible and the root user. For instance: </p>
<pre><code>sudo su root
ansible all -m ping (to ping all the VMs)
or
ansible all -m setup (to show all VMs system info )
</code></pre></li>
</ul>
<p>This template also ilustrates how to use Outputs and Tags.</p>
<ul>
<li>The template will generate an output with the fqdn of the new public IP so you
can easily connect to the Ansible VM.</li>
<li>The template will associate two tags to all the VMS : ServerRole (Webserver,
database etc) and ServerEnvironment (DEV,PRE,INT, PRO etc)</li>
</ul>
<h2>Known Issues and Limitations</h2>
<ul>
<li>Fixed number of data disks.This is due to a current limitation on the resource
manager; this template creates 2 data disks with ReadOnly Caching</li>
<li>Only the Ansible controller VM will be accesible for SSH.</li>
<li>Scripts are not yet idempotent and cannot handle updates.</li>
<li>Current version doesn’t use secured endpoints. If you are going to host
confidential data make sure that you secure the VNET by using Security
Groups.</li>
</ul>
</body>
</html>
Renders the following:

 
And this is how it looks in the self service UI order page:

 
Additional Notes
When developing descriptions like these, it can be a bit frustrating to have to edit and save your long descriptions to see how your work is coming along. I like to use this online editor or the Try It editor from w3schools. That way you can see your results quickly and get close to what you&8217;re looking for before building the catalog item in CloudForms. The site is also a great reference for HTML syntax. You can use these editors to build things like tables that can more efficiently describe your services to the service consumer in the most efficient way possible, as in this example:

 
That’s the basic idea. The built-in features of CloudForms to allow service designers to utilize HTML in their service descriptions gives us the tools we need to create more informative, as well as professional looking, catalog items. Try it out with some of your existing services and I suspect you’ll find it’s quite easy to improve your overall presentation with very little effort.
Quelle: CloudForms

Cloud makes high-performance gaming on any device possible

If you want to do gaming right, it can be a very expensive hobby.
Every new game that comes out has more demanding hardware specs. Even if you buy a bleeding-edge gaming computer, in six or nine months it will be dated. You’ll be contemplating hardware upgrades or even an entire system upgrade. And Playing Call of Duty or Halo on your Android or iOS device was once unimaginable.
That is the major pain point we are solving with LiquidSky.
With cloud technology, we at LiquidSky offer users a powerful Windows or Steam environment on any web-enabled device so they can install and play games. Gamers who use a low-end PC, Mac, Linux machine, or Android phone or tablet can give it the performance of a $1,500 gaming desktop computer.
How it works
Let’s say you use an Android phone. Normally, you would be restricted to playing Angry Birds, Candy Crush and other apps with relatively low-end graphics.
If you open the LiquidSky app, you can play all the latest AAA gaming titles. The game runs on a server within IBM Cloud data centers, streaming using software as a video from IBM Bluemix Virtual Servers to a user’s device. It’s the same concept as watching a streaming movie or TV show on Netflix.
User inputs are sent back to the server, similar to virtual desktop technology such as Citrix or VMware, except LiquidSky has less than 30 milliseconds of latency from server to client.
Server optimization and cost savings
LiquidSky uses IBM Cloud data centers because they offer the performance and global presence we need. We looked at other providers, but they do not offer auto-scalability at a bare metal level as IBM does. With Bluemix Virtual Servers, LiquidSky can take over the entire server to run our own software, and can chop up, divide and hypervise the resources to meet our custom needs. We can also fit more users on a server, which saves money.
We save money on bandwidth because IBM owns the entire network of servers. That means we can move users among servers and manage users across a global ecosystem.
We like the IBM network. It’s clean and well-optimized, so there are not a lot of obstacles to get around or hoops to go through with different routers. Then there are points of presence (PoPs) from each region, pretty much worldwide, so we can get very close to our users with low latency, clean delivery and little packet loss.
Dynamic resources benefit gamers
A $1,500 computer is an expensive investment, so when gamers can simply sign on with LiquidSky and download whatever game they want, it’s exciting.
LiquidSky delivers gaming resources on an as-needed basis. A user’s entire computer is essentially on our server, which can be reached from almost any device. There will be no latency and no network issues with high-definition, streaming games. This is what we mean by “liquid” in LiquidSky: dynamic resources. It’s the flowing of resources freely from user to user.
You can read more about LiquidSky at TIME.com or FORTUNE.com.
Learn more about IBM Cloud gaming solutions.
The post Cloud makes high-performance gaming on any device possible appeared first on news.
Quelle: Thoughts on Cloud

Azure Data Lake Tools for VSCode (Preview) – March Update

Continue our journey to launch Azure Data Lake Tools for VSCode for better cross-platform support,  meet developers where they are in Mac, Linux and Windows, and deliver a first class light weight code editor experiences for U-SQL. We are pleased to announce our March release which includes a few important features.

Primary New Features

Assembly Registration –  Our updated “ADL: Register Assembly” feature enables you not only quickly register an assembly, but also implement a built-in intelligence to detect dependencies, auto register dependencies and upload dependencies files  (if needed).

ADLS Integration – Following the strong momentum of Azure Data Lake, we have enabled seamless ADLS integration to allow you to easily browse and preview your ADLS files. You can do so either through command palette or right click menu.

a) Use ADL: List Storage Path to navigate to your ADLS folders, files and objects.:  

b) Right click on a path string, choose ADL: List Storage Path to automatically list all folders and files for that path.

a) Use ADL: Preview Storage File to preview your ADLS files.

b) Right click on a path string, choose ADL: Preview Storage File to automatically open the preview of the file.

Enhanced Language Service – To boost your productivity and solidify the U-SQL author experiences, Go To Definition and Auto Format features have been added.

Open Sample Code – To improve your get started experiences, ADL: Open Sample Script have been enhanced to facilitate your first time use of the tool and get familiar with U-SQL language.

How do I get started?

Please first install Visual Studio Code and download the prerequisite files including JRE 1.8.x, Mono 4.2.x (for Linux and Mac), and .Net Core (for Linux and Mac).  Then get the latest ADL Tools by going to the VSCode Extension repository or VSCode Marketplace and searching “Azure Data Lake Tool for VSCode”.   

For more information about Azure Data Lake Tool for VSCode, please see:

More information on using Data Lake Tools for VSCode
For ADL Tools for VSCode User Instructions in Video: ADL for VSCode Video
For the getting started information on Data Lake Analytics: Tutorial: get started with Azure Data Lake Analytics
For the information on developing assemblies: Develop U-SQL assemblies for Azure Data Lake Analytics jobs

 

If you have questions please don’t hesitate to contact us at: Azure Data Lake Dev. Tooling Team adldevtool@microsoft.com.
Quelle: Azure