Configure and install Hyper-Converged Database (HCD) with Microsoft Azure Arc

Microsoft Azure Arc extends Azure management capabilities to any infrastructure. You can use Azure Arc to configure and install Hyper-Converged Database (HCD).

Prerequisites

  • An Azure Arc-enabled Kubernetes cluster with at least two node pools, each labeled with the appropriate mission-control.datastax.com/role= label, database and platform. You can use any Kubernetes distribution running the ARC extension. For more information, see the Kubernetes Services section of the Azure portal. Look for the Kubernetes - Azure Arc Type in the list of clusters.

  • kubectl configured to communicate with the target Kubernetes cluster.

  • Cert-Manager installed.

  • An Azure storage account.

  • Azure Blob Storage containers set up, including:

    • Metrics

    • Logs

Install HCD with Azure Arc

  1. Navigate to the DataStax HCD for Azure Arc page in the Azure Marketplace.

  2. Select your Plan from the list, and then click Create.

  3. Complete the fields on the Basics tab:

    1. Select a Subscription and Resource group.

    2. Select the target Azure Arc-enabled Kubernetes Cluster Name from the list.

    3. Enter a meaningful, human-readable Cluster extension resource name. This name is displayed in the Azure portal and prefixes several resources.

    4. Select the deployment mode. You must add one Control Plane. You can optionally add regional Data Planes.

    5. Configure the top-level Storage Account for your installation. Enter the Storage Account name, key, and endpoint suffix.

  4. Complete the fields on the Advanced tab to control the availability of observability services in your installation. DataStax recommends leaving these items enabled for most installations.

  5. On the Observability tab, configure the volume size and storage type for the observability pipeline. DataStax recommends that you leverage the default options for most installations.

  6. On the Metrics tab, configure the components of the metrics collection stack:

    1. Object Storage: Specify the Blob Container Name and Storage Retention period for metrics.

    2. Metrics Attached Storage: DataStax recommends over-provisioning capacity, as many storage options cannot be easily changed at runtime. The system uses these volumes to process metrics.

    3. Metrics Topology: Configure the number of metrics component instances. You can horizontally scale the metrics pipeline as the number of managed clusters and nodes increases.

    4. Metrics Resources: Adjust per-pod resource requests and limits. DataStax recommends increasing the CPU limit from 0.1 vCPU to at least 1 vCPU.

    5. Metrics Advanced: Set advanced configuration settings.

  7. Complete the fields on the Logging tab:

    1. Blob Storage: Configure long-term storage for log file chunks.

    2. Attached Storage: Configure local storage for logging components.

    3. Topology: Configure the number of logging pipeline components. You can horizontally scale the logging pipeline as the number of clusters and nodes grows.

  8. On the UI tab, configure the availability of the web-based user interface. DataStax recommends keeping this set to Enabled for most installations.

  9. Complete the fields on the Authentication tab:

    1. Methods: Choose which authentication options will be available for the web interface.

    2. Static Credentials: If you enable Static Credentials, specify the administrative account’s email and hashed password.

  10. Review your selections on the Review + Submit tab, and then click Create to begin the installation.

Enable web interface access

After you deploy HCD from the Azure Marketplace, you can enable access to the web interface.

  1. Expose the UI service as a load balancer:

    # Create Load Balancer
    kubectl expose svc/EXTENSION_NAME -mission-control-ui --port 443 --target-port=8080 --type=LoadBalancer --name EXTENSION_NAME
    -mission-control-ui-external -n mission-control service/EXTENSION_NAME
    -mission-control-ui-external exposed/EXTENSION_NAME/EXTENSION_NAME/EXTENSION_NAME/
    
    # Retrieve Load Balancer address
    kubectl get -n mission-control service/EXTENSION_NAME -mission-control-ui-external NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE /EXTENSION_NAME EXTENSION_NAME
    -mission-control-ui-external LoadBalancer EXTERNAL_ADDRESS 443:32622/TCP 35s

    Replace the following:

    • EXTENSION_NAME: Name of your extension

    • EXTERNAL_ADDRESS External address of the load balancer

  2. Access the web interface by navigating to https://EXTERNAL_ADDRESS.

    Replace EXTERNAL_ADDRESS with the external address of the load balancer.

Was this helpful?

Give Feedback

How can we improve the documentation?

© 2024 DataStax | Privacy policy | Terms of use

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries. Kubernetes is the registered trademark of the Linux Foundation.

General Inquiries: +1 (650) 389-6000, info@datastax.com