Jelastic Virtual Private Cloud and Hybrid Cloud are now Microsoft Azure certified and available to hosting service providers, ISVs, systems integrators, outsourcing companies and enterprises in the Azure Marketplace.
See the announcement at the Azure Blog
The Jelastic platform is available for automatic and seamless installation on top of Azure, providing a fast and easy method to get into the cloud. Using Azure Marketplace, any ISV or enterprise customer can create the Jelastic Orchestrator in the Azure cloud.
Alongside PHP, Python, Ruby and Node.js, Jelastic provides enterprise-grade PaaS for Java and Java EE, bringing first-class support for these Enterprise languages that are demanded by Microsoft customers.
Easy installation of dedicated Jelastic Virtual Private Cloud takes just a few hours but not days or months. In such a way, any ISV or enterprise can get their own light-weight version of the Jelastic platform with a full range of features and great performance due to premium storage instances with local SSD.
Today, Jelastic is available as a public cloud solution via 36 cloud hosting service providers across the world. A seamless Hybrid Cloud integration is advantageous for these partners who have their own data centres, but who want to offer cloud resources/services from different locations (regions) for their customers. It’s also ideal if they have customers with temporary needs for a large burst during the load spikes and they do not want to invest in additional hardware.
As a result, Jelastic Hybrid Cloud will be available for enterprises and existing Jelastic Cloud Hosting providers with the following benefits:
- Burst to the Azure Cloud in case of temporary applications’ load spikes or in the case additional computing power is needed
- Disaster recovery using Azure
- Backup to the Azure Cloud
From the beginning, Jelastic has been the pioneer PaaS using containers virtualization technology for application deployment, lifecycle management, scalability and ZERO CC (zero code changes) approach. In addition, Jelastic provides unique automatic vertical scaling for all application containers with load spikes and variable loads in general. The platform provides the fastest and most agile deployment models, flexible scaling for stateless and stateful applications, collaboration and access control tools, billing and business analytics tools, while driving down TCO with high density and hardware utilization.
To access extra regions for your Jelastic Cloud at Azure, simply follow the instructions below.
- Active Azure subscription
- Active session on Azure portal
- MS Windows machine with PowerShell installed and configured
- A domain name that will be delegated for a Jelastic cluster
Create Azure Storage Account
Go to the Azure portal and click on the New button, select Data Services > Storage > Quick Create and fill in the required data:
- URL – name your storage account
- Location/Affinity Group – select appropriate Azure region for your storage
- Subscription – choose the type of subscription. We recommend using “standard storage” instead of “premium storage”
- Replication – select the desired redundancy level. You can start with Locally Redundant
You can find more about Azure storage in this article.
Create a Virtual Network
Click on the New button, select Network Services > Virtual Network > Quick Create and fill in the required data:
- Name your virtual network
- Address space and Maximum VM Count – select the appropriate address space and network size. You can use default settings for Virtual Network, e.g. use 10.0.0.0/20 subnet
- Location – choose the same Azure region as you used for Storage
- DNS Server – leave this blank
- Subscription – choose the required subscription
Create a Cloud Service
Click on the New button, select Compute > Cloud Service > Quick Create and fill in the required data:
- Specify the URL for your cloud service
- Choose the same Azure Region or Affinity Group as you used for Storage
Configure Jelastic Installation
1. Receive Jelastic License from the Jelastic Team
Send an email to the Jelastic Team requesting a product license:
- Use the following address <firstname.lastname@example.org> and message subject: “Request for Jelastic License on Azure”
- Describe how many Azure VMs you are going to create
- Jelastic will send you back the list of license keys
2. Create SSH key for your Jelastic at Azure VMs
Create SSH pair according to this manual.
Save your private key, as it will be required later.
3. Create the Main Configuration File of Jelastic
Create a configuration file with the following variables (e. g. Jelastic.conf) using the lines below:
JELASTIC_DOMAIN=”<domain name chosen for Jelastic cluster>" JELASTIC_USERNAME="<email address that will have administrative permissions>" JELASTIC_PASSWORD="<your secure password>" JELASTIC_KEY="<SSH private key>" PCS_LICENSE="<Jelastic license>"
Basically your configuration file should look like this sample beyond:
JELASTIC_DOMAIN="jelastic.sample.com" JELASTIC_USERNAME="email@example.com" JELASTIC_PASSWORD="SoMe Pa$sW0Rd" JELASTIC_KEY="-----BEGIN RSA PRIVATE KEY----- SSH PRIVATE KEY CONTENTS -----END RSA PRIVATE KEY-----" PCS_LICENSE="123456-789012-345678-901234-567890"
4. Run PowerShell to Provision and Deploy Jelastic VM
- Install and configure Azure PowerShell on your Windows machine. In this article you can find out how to do this properly
- Authenticate to Azure via PowerShell with your Azure account and execute the following PowerShell script to install Jelastic properly
# Path to your Jelastic configuration file at step 3 $jelasticConfig = "C:\Documents\Jelastic.conf " # Your Azure subscription name $subscription = "BizSpark Plus" # Azure region for Jelastic deployment. It must be the same region as a region for your storage account and Virtual Network $location = "West Europe" # Jelastic source VHD image name $imageName = "Jelastic-3.1.1" # Cloud service name $serviceName = "jrelease" # Supplementary disks' storage account name $storageAccountName = "jrelease" # OS disks' storage account name $osStorageAccountName = "jrelease" # Virtual network name $vNetName = "Group jrelease jrelease" # Sub-network within virtual network $subnetName = "primary" # VM name $name = "hn01" # Static ip address assignment for the VM. You can use any address from the range of Virtual Network created at the step 2 $ipAddress = "10.0.0.10" # Required instance size for the VM template. Recommended values are Standard_D4, Standard_D12 and above. $instanceSize = "Standard_D4" $publicIpName = $name + $serviceName $osMediaName = $name + $serviceName $vmLabel = $imageName + "-" + $name $osMediaLocation = "https://" + $osStorageAccountName + ".blob.core.windows.net/vhds/" + $osMediaName + ".vhd" Get-AzureSubscription | select SubscriptionName Select-AzureSubscription -SubscriptionName $subscription -Current Get-AzureStorageAccount | select Label Set-AzureSubscription -SubscriptionName $subscription -CurrentStorageAccountName $storageAccountName $Image = Get-AzureVMImage -ImageName $imageName $cfg = New-AzureVMConfig -Name $name -InstanceSize $instanceSize -ImageName $Image.ImageName -MediaLocation $osMediaLocation -Label $vmLabel -Verbose $cred = Get-Credential -Message "Type the name and password of the Linux account." $cfg | Add-AzureProvisioningConfig -Linux -LinuxUser $cred.GetNetworkCredential().Username -Password $cred.GetNetworkCredential().Password -CustomDataFile $jelasticConfig $cfg | Set-AzureSubnet -SubnetNames $subnetName $cfg | Set-AzureStaticVNetIP -IPAddress $ipAddress $cfg | Add-AzureDataDisk -CreateNew -DiskSizeInGB 500 -DiskLabel vz -LUN 0 -HostCaching ReadWrite # Third data disk is required when deploying Jelastic infrastructure node only. You can omit next line for regular Jelastic nodes’ deployment $cfg | Add-AzureDataDisk -CreateNew -DiskSizeInGB 200 -DiskLabel cache -LUN 1 -HostCaching ReadOnly $cfg | Set-AzurePublicIP -PublicIPName $publicIpName New-AzureVM -Location $location -VMs $cfg -VNetName $vNetName -ServiceName $serviceName -WaitForBoot -Verbose
5. Jelastic Domain Name Configuration
Delegate the domain name of your Jelastic instance to the Public IP addresses of Azure VMs with your deployed Jelastic cluster using the hints below.
- Use your primary domain to delegate a subdomain for Jelastic name server. Recommended subdomain name:jelastic.primarydomain.com
- DNS server names and addresses:p>
1 IP address allocated for this DNS server
- Zone records example (make sure it is a part of the file for parent zone primarydomain.com) – note the last one is a glue record:
jelastic.primarydomain.com IN NS ns1.jelastic.primarydomain.com
ns1.jelastic.primarydomain.com IN A 188.8.131.52
Attach VM to Jelastic
- Log in to your Jelastic Cluster Admin panel on behalf of the user that has PLATFORM_ADMIN permission.
- Navigate to the Regions option and select the Add new region button:
- Set Name of your region, e.g. “azure_region”
- Specify the Domain name you’ve previously delegated for the Jelastic cluster
- Specify the network Subnet. At the moment it is fixed to 192.168.0.0/16
- Specify the IP range that will be used by Jelastic
- Allow migration from/to other regions, if it is required
- Add Name server with Internal and External IP equal to the External IP address of your Jelastic VM
3. Select just created region and Add hardnode group providing it with a Unique name.
- Navigate to Hardnodes item and click on the Add hardnode button
- Set a unique name for your hardware node in the Host field
- Fill in the IP address parameter with the external IP address of your Azure Jelastic VM
- Select the appropriate Hardware Node Group
- State the Credentials according to your Azure Jelastic VM credentials
- In the Virtualization tab just use PCS as virtualization product
5. After adding Jelastic Azure VM as a new region, you will be able to select it in the Jelastic Dashboard to locate Jelastic containers there.
And you’re done! Now you have a fully manageable and highly available Jelastic cluster that can be scaled up to hundreds of servers. Enjoy and please provide feedback in the comments about your experience using Jelastic Cloud.