Powered by Zoomin Software. For more details please contactZoomin

Run on Microsoft Azure

Get started with MarkLogic Server on Azure

  • Last Updated: April 23, 2026
  • 11 minute read
    • MarkLogic Server
    • Version 12.0
    • Documentation

This chapter describes how to launch a MarkLogic Server cluster on Azure using the Solution Template to configure parameters. It includes additional information about supplying values for the template fields related to the cluster.

The parameter names used here are not a one-to-one mapping with Azure resource configurations.

This chapter includes the following sections:

System requirements and installation

For a MarkLogic Azure image, you will need to choose a VM that has more than 2 GB of memory.

For production environment, Premium or Standard storage disks in Azure are required. MarkLogic does not support regular or replica forests on Azure blob storage. We do support Azure blob storage for backup and read-only forest in our Tiered storage feature.

Different VM instance types in Azure may support different storage types. See Requirements and Database Compatibility in the Installation Guide for information regarding MarkLogic requirements for Memory, Disk Space and Swap Space, and Transparent Huge Pages. MarkLogic will be leveraging the GPU for intensive computational workloads so we recommend choosing NC/ND instance types for using the GPU capabilities of MarkLogic server.

You will need this basic information to get set up. All of these are required:

  • Subscription: Required by Azure. It is the Azure subscription to which the cluster usage will be billed.
  • Resource Group: Required by Azure. The resource group to which the cluster will belong.
  • Location: Required by Azure. Where you want to deploy the cluster.
  • Deployment Name: Required. The value to be used as a prefix for all of your resources. There is a 10 character limit for the Deployment Name. Any blank spaces will be removed.

Important: You will need to setup your Azure account before proceeding to the next steps. After setting up the account, you can find your subscription ID under Subscriptions.

See Managing MarkLogic on Azure for more details about configuration options.

Separate MarkLogic converters

The MarkLogic Converters package contains filters that are separate from the MarkLogic Server package. For Azure, the MarkLogic Converter package is located in your default user home directory. There is a README.txt file in the package describing what the package is for, pointing to the MarkLogic Server documentation for more information.

Set up a simple deployment

This section covers the steps to set up at simple MarkLogic deployment. It is broken into these topics:

Locate the MarkLogic cluster deployment offering

The Azure Marketplace hosts the MarkLogic Cluster Deployment Offering online. Navigate to the Azure portal at https://portal.azure.com/. Go to the Microsoft Azure Marketplace and search for MarkLogic. Then, create and configure the cluster.

Configure basic settings

Enter the appropriate information for your cluster. The default field values can be changed. However, it is recommend to use the default values.

Basic Information Values
Field
Value
Deployment Name
Required. The value to be used as a prefix for all of your resources. There is a 10 character limit for the Deployment Name. Any blank spaces will be removed.
Number of Nodes
1 or 3. Default is 3.
Subscription
Required by Azure. It is the Azure subscription to which the cluster usage will be billed.
Resource Group
Required by Azure. The name of the resource group to which the cluster will belong. Options are Create new or Use existing. A name for the group is required.
Location
Required . Choose a physical location for your resource group.

MarkLogic configuration

Complete the fields for the MarkLogic Admin user and password, licensee and license key. See the section on Password Policy for details on creating a password.

Password policy

Azure requires that when you use the MarkLogic Solution template to deploy MarkLogic on Azure, the admin password policy must be stronger than the default MarkLogic policy. Because of this, MarkLogic enforces a different admin password policy on Azure.

The regular expression to validate the policy is:

^(?=.*[A-Z])(?=.*[.!@#$%^&()-_=+])(?=.*[0-9])(?=.*[a-z]).{12,40}$

This means that your password must be 12-40 characters long and contain at least one uppercase letter, a digit, and a special character - one of .!@#$%^&()-_=+.

You can change your password later after the initial set up. When you change your password, the MarkLogic password policy will be used to validate the new password.

MarkLogic configuration values
Field
Value
Admin User
Required. The MarkLogic administrator username.
Admin Password
Required. The MarkLogic administrator password.
Licensee
Optional. The MarkLogic licensee. Use none for no license.
License Key
Optional. The MarkLogic license key. Use none for no license key.

When you provide a license key and a licensee, the template will deploy clusters using BYOL image.

Configure cluster resources

Configure your cluster resources. See Configure Cluster Resources Values for additional information.

Configure cluster resources values
Field
Value
MarkLogic High Availability

enable or disable. Default is enable. This option is only applicable to a multi-node cluster. For a single node cluster, high availability will not be configured.

When this option is set to enable, local disk failover will be configured for all database forests initialized with MarkLogic. Master forests will be configured on first node coming up in the clusters. The second node will be configured with replica forests. See Typical Architecture for an example of a forest topology.

Virtual Network
Virtual Network for MarkLogic cluster
Subnets
Subnets for MarkLogic.
Load Balancer: Type
public or internal. Default is Public Load Balancer
Load Balancer: IPv6
enable or disable. Default is enable. IPv6 address on the load balancer. Only applicable if load balancer is public.
Storage: OS Storage
premium or standard. Default is premium. The storage type for the operating system of the virtual machines.
Storage: Data Storage
premium or standard. Default is premium. Storage type for data directory of virtual machines.
Virtual Machine: User name
Required. Operating system username for virtual machines.
Virtual Machine: SSH public key
Required. Public SSH key for the virtual machine listed.
Instance Type
Required. Type of virtual machine instance to launch. The list only includes instance types that meet the minimum standard requirements for MarkLogic Server.

Choose a VM size

All of the instance types displayed meet the minimum MarkLogic requirements. Other options have been filtered out for you. The choices will be displayed based on your prior selections.

Choosing premium storage will limit the set of options to select from. MarkLogic will be leveraging the GPU for intensive computational workloads so we recommend choosing NC/ND instance types for using the GPU capabilities of MarkLogic server.

Review the VM summary

Before proceeding to the next step, review the details you entered and make any needed changes.

Create and purchase

Once you agree to the terms and conditions you can create a MarkLogic cluster on Azure. The start up process can take a few minutes.

Resource configuration

This section describes the configuration of cluster resources pre-defined in the template. These are fields that you fill in when you use the Solution Template to set up a cluster. These fields contain a subset of all of the configurable parameters for the resources associated with the cluster. The field names used in the Solution Template are not a one-to-one mapping of the Azure Resource configuration. In addition, for simplicity some of the configuration options are not included here (such as name of the VM instances, load balancer, availability set, and so on).

These topics are covered in this section:

Virtual network

For the virtual network, specify the following information:

Field
Value
Address Space
10.0.0.0/16
Subnet Address Range
10.0.1.0/24

Availability set

Your VMs are placed into a logical grouping called an availability set. When VMs are created in an availability set, Azure distributes the placement of the VMs across the infrastructure. Availability Sets ensure that at least one VM remains running during planned or unplanned events.

Field
Value
Description
Fault Domains
3
Defines the group of virtual machines that share a common power source and network switch.
Update Domains
20
Indicate groups of virtual machines and underlying physical hardware that can be updated at the same time.
Use Managed Disk
Yes. This is the recommended setting and is not configurable.
Handles storage for you.

See also Availability Set for about the limitations of Availability Sets.

Node public IP address

By default, Public IP addresses are dynamic, so they can change when the VM is deleted. To guarantee that a VM always uses the same public IP address, create a static Public IP.

Field
Value
Public IPv4 Allocation Method
Static
Public IPv6 Allocation Method
Dynamic
Idle Timeout (minutes)
4 - Default value set by Azure

Network security group

These are the applicable security rules for the cluster for allowed access, inbound.

Usage/Name
Protocol
Source Port Range
Source Address Prefix
Destination Port Range
SSH
tcp
*
*
22
Admin
tcp
*
*
8000-8010
Health-Check
tcp
*
*
7997
Communication
tcp
*
*
7778-7999

Load balancer

It is a good practice to use a network load balancer between the client applications and a MarkLogic deployment. Depending on your deployment topology, you may use either an internet-facing load balancer or an internal load balancer.

An internet-facing load balancer should be used when a client application needs to access a MarkLogic deployment using public IP addresses. You should also consider network security in Azure for this type of deployment.

An internal load balancer should be used when the client application accesses a MarkLogic deployment using internal IP addresses, or the client application runs on premises and a secure VPN connection is established between the two networks.

The load balancer detects proper running of MarkLogic via the HealthCheck App Server on port 7997 and will only direct traffic to that node if it has verified that the MarkLogic instance is up. Therefore, for HTTP, the Load Balancer Probe in Azure for MarkLogic is on port 7997.

Field
Value
Description
Load Balancer
Internal or Public
Default is Public Load Balancer
Load Balancer IPv6
Enable or Disable
Default is Enable. IPv6 address on the load balancer. Only applicable if the load balancer is public
Public IP address allocation
Field
Value
Public IPv4 Address Allocation Method
Static. Only applicable to public load balancer.
Public IPv6 Address Allocation Method
Dynamic. Only applicable to public load balancer.
Load balancing rules
Protocol
Frontend Port
Backend Port
Idle Timeout (in minutes)
tcp
8000
8000
5
tcp
8001
8001
5
tcp
8002
8002
5
tcp
8003
8003
5
tcp
8004
8004
5
tcp
8005
8005
5
tcp
8006
8006
5
tcp
8007
8007
5
tcp
8008
8008
5
Health probes
Field
Value
Port
7997
Interval (in seconds)
5
Number of Probes
2

Data storage: Managed disks

Azure recommends using Managed Disks for your virtual machine data. Managed Disks handle storage for you behind the scenes, while providing better reliability for Availability Sets.

Field
Value
Create Option
Empty
Size (GiB)
1023

Virtual machines

Azure virtual machines enable you to deploy virtually any workload and any language on nearly any operating system.

Field
Value
Boot diagnostics
Enabled
Guest OS diagnostics
Disabled

Cluster initialization

The template will initialize all the cluster nodes with information provided by the user, and then start the cluster.

MarkLogic will mount the VM disk device /dev/sdc to the MarkLogic data directory.

On a multi-node cluster, if High Availability is enabled, the template will configure local-disk failover for forests initialized with MarkLogic Server in the cluster. The replica forests for App-Services, Documents, Extensions, Fab, Last-Login, Meters, Modules, Schemas, Security, and Triggers will be configured on a node other than the bootstrap node (the first node initialized in the cluster). The third node in a three node cluster, will have no forests at the start.

Limitations

This section includes limitations in Azure.

Availability set

Azure Availability Set is a logical group for virtual machines. Microsoft Azure SLA guarantees that at least one of the (two or more) nodes in Availability Set is available 99.95% of the time. The Availability Set parameter is only applicable to a multi-node cluster. For a one-node cluster, the Availability Set parameter will be disabled.

See the Microsoft Azure SLA for your type of deployment for more information.

The configuration of an Availability Set includes the number of update domain and number of fault domain. The combination of the two domains can only guarantee that one of the nodes in Availability Set is available most of the time. You cannot configure an Availability Set that guarantees two of three nodes of a cluster will be available most of the time. For more information on Availability Set configuration, see the Azure documentation (https://docs.microsoft.com/en-us/azure/virtual-machines/linux/manage-availability)

Shared disk failover

Users have the option to have High Availability (HA) configured for database forests initialized with MarkLogic. However only local disk failover is possible because Azure does not support mounting a managed disk for multiple machines. An alternative for managed disk is Azure File Storage - a shared storage service. The performance of the File Storage is not comparable to managed disk for mounting to virtual machines.

List of configurable parameters

The following tables contain fields from the set up example, for the configurable parameters in the MarkLogic Solutions template:

These topics are covered in this section:

Basic information values

Field
Value
Deployment Name
Required. The value to be used as a prefix for all of your resources. There is a 10 character limit for the Deployment Name. Any blank spaces will be removed.
Number of Nodes
1 or 3. Default is 3.
Subscription
Required by Azure. It is the Azure subscription to which the cluster usage will be billed.
Resource Group
Required by Azure. The name of the resource group to which the cluster will belong. Options are Create new or Use existing. A name for the group is required.
Location
Required. Choose a physical location for your resource group.

Azure configuration values

Field
Value
MARKLOGIC_LICENSE_KEY
A license key to use for this MarkLogic instance. This license key is only valid for a Bring Your Own License (BYOL) Image or a user-created Image.
MARKLOGIC_LICENSEE
The Licensee corresponding to MARKLOGIC_LICENSE_KEY.
MARKLOGIC_NODE_NAME
A distinct name of a node within a cluster.
MARKLOGIC_ADMIN_USERNAME
The MarkLogic Administrator username used for initial installations.
MARKLOGIC_ADMIN_PASSWORD
The MarkLogic Administrator password used for initial installations.
MARKLOGIC_AZURE_DISK

The LUN numbers of the disks to use for the MarkLogic data directories. The disks will be mounted, and a file system will be created on each one, if needed.

A single disk is acceptable, in which case, just enter the LUN number for that disk. When multiple disks are to be mounted, enter a list of integers, delimited by comma:

Example: 4,5,6

If left undefined, the default is: 4.

MARKLOGIC_AZURE_STORAGE_PROXY

The URL of the proxy server used by the group to access Azure blob storage.

If MARKLOGIC_AZURE_STORAGE_PROXY is set and azure storage proxy is not set in the Admin Interface group configuration, the value of MARKLOGIC_AZURE_STORAGE_PROXY is used .

If MARKLOGIC_AZURE_STORAGE_PROXY is set and azure storage proxy is also set in the Admin Interface group configuration, the Admin Interface azure storage proxy setting is used.

Configure cluster resources values

Field
Value
MarkLogic High Availability

enable or disable. Default is enable. This option is only applicable to a multi-node cluster. For a single node cluster, high availability will not be configured.

When this option is set to enable, local disk failover will be configured for all database forests initialized with MarkLogic. Master forests will be configured on first node coming up in the clusters. The second node will be configured with replica forests. See Typical Architecture for an example of a forest topology.

Load Balancer: Type
public or internal. Default is Public Load Balancer
Load Balancer: IPv6
enable or disable. Default is enable. IPv6 address on the load balancer. Only applicable if load balancer is public.
Storage: OS Storage
premium or standard. Default is premium. The storage type for the operating system of the virtual machines.
Storage: Data Storage
premium or standard. Default is premium. Storage type for data directory of virtual machines.
Virtual Machine: User name
Required. Operating system username for virtual machines.
Virtual Machine: SSH public key
Required. Public SSH key for the virtual machine listed.
Instance Type
Required. Type of virtual machine instance to launch. The list only includes instance types that meet the minimum standard requirements for MarkLogic Server.
TitleResults for “How to create a CRG?”Also Available inAlert