Deploying IBM Db2 Warehouse MPP on Microsoft Azure

You can deploy Db2® Warehouse MPP on the Microsoft Azure cloud computing platform.

Before you begin

Ensure that you have an Azure account and a paid subscription.

Procedure

  1. In the Azure portal:
    1. Create a resource group.
      For more information, see Manage Azure resources through portal.
    2. Create a virtual network.
    3. Create a network security group. Add an inbound security rule to the NSG to allow HTTPS access.
    4. Create one virtual machine (VM) for each node, and an additional VM to serve as the NFS server. You must have one head node and at least two data nodes, so you will need at least 4 VMs in total.
    5. Attach an Azure Premium SSD disk to each VM:
      • To the VM of the head node and each VM of a data node, attach a disk with a size of at least 200GB. The database is distributed equally among these nodes, so choose a disk size that, when multiplied by the total number of nodes, is equal to or greater than the size of the database.
      • To the VM that is to serve as the NFS server, attach a disk with at least 500GB. This disk houses the cluster file system that is shared by the nodes. For a list of file system requirements, see IBM Db2 Warehouse prerequisites for Linux and x86 hardware.
      For more information, see Use the portal to attach a data disk to a Linux VM.
  2. On each of the VMs that you created earlier for the head node and data nodes:
    1. Mount its attached data disk with the name /mnt/diskbludata0.
    2. Mount, with the name /mnt/clusterfs, the disk that is attached to the NFS server and that houses the file system that the nodes share.
  3. Log in to Docker using your API key:
    echo <apikey> | docker login -u iamapikey --password-stdin icr.io
    where <apikey> is the API key that you created as a prerequisite in Getting container images.
  4. To deploy Db2 Warehouse in an MPP cluster, issue the following command (replace the disk names as needed):
    docker run -d -it --privileged=true --net=host --name=Db2wh -v /mnt/clusterfs:/mnt/blumeta0 -v /mnt/diskbludata0:/mnt/bludata0 icr.io/obs/hdm/db2wh_ee:v11.5.7.0-cn5-db2wh-linux
    In this example:
    • The disk /mnt/blumeta0 that is mounted inside the container is the shared NFS cluster file system that was mounted as /mnt/clusterfs on the head node VM.
    • The disk /mnt/bludata0 that is mounted inside the container is a local attached disk that was mounted as /mnt/diskbludata0 on the head node VM.