Skip to main content

Create a Quorum Blockchain Service network

Quorum Blockchain Service (QBS) is a fully-managed platform as a service (PaaS) available in Microsoft Azure as an Azure Managed Application. While QBS is hosted in Azure, it's managed by ConsenSys to ensure high availability, optimal performance, and that your infrastructure has the most up-to-date security patches.

These instructions provide you with the details to provision a blockchain network with QBS in Azure. Alternatively, view the video on how to create a QBS network.

Prerequisites

  • Sign up for an Azure account if you don’t have one already.
  • Confirm that you have either the Owner or Managed Application Contributor Azure Active Directory role assigned in the Azure subscription to create and manage your QBS member.
  • Confirm that you have a payment method set up with Microsoft Azure. The payment method on file is used to pay for the non-infrastructure QBS costs, which can't be paid for using Azure Credits.
  • Check that your Azure Subscription is registered with the required resource providers in Azure to provision QBS.
  • Ensure your subscription includes a sufficient number of vCPU cores. We recommend 6 cores per environment, with the D2a V4 Series for Business and Enterprise tiers, and B2ms Series for the Development tier. You can increase your vCPU quota if needed.

Steps

1. Access QBS

QBS is available in the Microsoft Azure Marketplace. To access the offer:

  1. Access the Azure Portal using your Microsoft Azure account details.

  2. In the Azure services section, select Create a resource.

  3. Search for quorum in the search bar of the Azure Marketplace.

  4. Select Quorum Blockchain Service to access the offer.

Marketplace Offer

2. Create the network

  1. In the Select a plan drop-down, select your QBS plan, and select Create.

  2. In the Basics tab of the Create Quorum Blockchain Service page:

    • Select the Azure subscription to use for the service.
    Important

    If you recieve an error that you've exceeded your vCPU quota, submit a support request with Azure to increase your quota and retry the deployment. We recommend 6 cores per environment.

    • Below the Resource group dropdown, select Create new and create a new resource group.

    • In the Region dropdown, choose a region to create the network.

    • In the Consortium section, select No if you are creating a new blockchain network and enter a name for your consortium in Consortium Name. Create Consortium If you have been invited to join an existing consortium, select Yes and enter your personal invitation code sent to you in email. Join Consortium

    • Under Tier Details, choose either Development, Business, or Enterprise. For tier descriptions and pricing, see tiers of service.

    note

    If you choose the Development tier, you can further reduce your monthly cost by checking the Azure spot instance checkbox. Azure spot instances allow you to take advantage of unused Azure VM capacity at a significant cost savings. Learn more

    • In Contact Email, enter your contact email.

    • In Zendesk Users, enter up to 5 names and email addresses that will be authorized to open support tickets for support.

    • In Application Name, enter the name you wish to use for your QBS member. Normally this is the name of your organization, or how you want to be identified by other parties in your network.

    • In Managed Resource Group, enter the name of your managed resource group, or select the default name provided.

    • If you wish to tag the resources created in your QBS member, select Next: Tags.

    • Select Next: Review + create.

  3. In the Review + create tab, select I agree to the terms and conditions above, and select Create.

  4. Deploying your QBS member may take up to 15 minutes. After deployment completes, select Go to resource to view your QBS Member.

3. Verify your deployment completed successfully

While you can find your QBS member in the Azure Portal after provisioning, we recommend verifying the deployment was successful.

Navigate to the QBS Management API website and select Authorize to authorize running the APIs.

Authorize API

Once you complete authorizing the API, select the GET request for Get details about a blockchain member under the BlockchainMembers section, and then select Try it out.

Try it out

In the fields for the API request, fill out the following using your QBS member information, located in the Azure portal:

  • subscriptionID - Your subscription ID, in the Overview tab for your QBS member, under the Essentials section.

  • resourceGroupName - The resource group to which your QBS member is deployed. Note this is NOT the Managed Application resource group.

  • blockchainMemberName - The name of your QBS member, also known as the name of your Managed Application, located in the upper-left corner of the Overview tab.

Overview Page

Select Execute. The website shows the server response, which lists the blockchain member information:

Example JSON result
{
"id": "/subscriptions/<YOUR SUBSCRIPTION ID>/resourceGroups/devtool-testing/providers/Microsoft.Solutions/applications/consensys",
"location": "eastus",
"name": "consensys",
"sku": null,
"tags": {},
"type": "ConsenSys.Blockchain/blockchainMembers",
"properties": {
"consortium": "devtooltest",
"consortiumMemberDisplayName": "consensys",
"dns": "transaction-1.consensys.devtooltest.onquorum.net",
"protocol": "Quorum",
"provisioningState": "Succeeded",
"publicKey": null,
"rootContactAddress": null,
"firewallRules": [],
"validatorNodesSku": {
"capacity": 1
}
}
}

provisioningState: is one of the following states:

  • Succeeded indicates that your provisioning completed successfully and your QBS member is ready to use.
  • Updating indicates provisioning is still in progress.
  • Failed indicates your QBS member failed to provision successfully. In this case, contact support for assistance.
note

It can take up to 20 minutes for your QBS member to transition from Updating to Succeeded.

4. Watch the video

If you are a visual learner, the following video walks you through creating a Quorum Blockchain Service member and verifying your deployment completed successfully.