Skip to main content

Deployment Instructions

Cluster Architecture Description

In a private deployment cluster mode, storage components and microservices are deployed separately, reducing system coupling. Microservices run on a Kubernetes architecture, allowing for rapid scaling up and down as needed to enhance resource utilization.

Click to view recommended server configurations for different cluster modes

The cluster modes are divided as follows:

  • Lite Version: Conserves server resources, with storage components deployed on a single node.
  • Standard Version: Storage components are deployed in official master-slave or clustered mode, providing basic HA capability.
  • Professional Version: Based on the Standard Version, each server runs only one component instance, improving reliability and performance by avoiding interference and resource competition between components.

In the standard and professional deployment modes, the default component architecture is as follows:

  • MySQL: Master-slave dual-node setup, where the slave node can continue to provide services in case of a master node failure.
  • MongoDB: Three-node replica set with support for automatic failover to ensure data availability.
  • Redis: Supports master-slave and sentinel modes to ensure HA of services.
  • Kafka: Three-node cluster with multiple replicas for topics, achieving data redundancy and reliability.
  • Elasticsearch: Three-node cluster with a multi-replica shard to enhance data redundancy and availability.
  • MinIO: Based on a MinIO four-node cluster, with data replica redundancy storage to ensure reliability.

Deployment Process

Since HAP microservices rely on components such as MongoDB, MySQL, Redis, Kafka, Elasticsearch, and MinIO, these dependencies must be deployed first, followed by the deployment of HAP microservices.

Recommended deployment order:

  1. Deploy MongoDB, MySQL, Redis, Kafka, Elasticsearch, MinIO
  2. Deploy HAP File Service
  3. Deploy Kubernetes Cluster
  4. Deploy Istio
  5. Deploy HAP Microservices
  6. Deploy Flink
  7. Deploy Nginx Proxy
  8. Deploy Monitoring Services (Prometheus + Grafana)

Note:

  • It is recommended to uniformly use /usr/local for software installation directories, /data for data directories, and mount the server data disk to /data.

  • Ensure that the time zones of all nodes in the cluster are consistent, and synchronize time with the same NTP server.

  • Some passwords in the example documentation are weak (e.g., 123456). For actual deployment, you must replace them with strong passwords.

    • Passwords should include uppercase and lowercase letters and numbers with a minimum length of 8 characters.

    • If special characters are used, only - or _ are allowed. Avoid using @ ! # & to prevent compatibility issues.


Deployment Instructions

Cluster Architecture Description

In a privatized deployment cluster mode, storage components and microservices are deployed separately, reducing system coupling; microservices run based on the Kubernetes architecture, allowing for quick scaling up or down as needed, thus improving resource utilization.

Click to view the recommended server configuration for different cluster modes

Cluster modes are divided into the following types:

  • Lite Version: Saves server resources, and storage components are deployed on a single node.
  • Standard Version: Storage components are deployed using the official master-slave or cluster mode, offering basic HA capabilities.
  • Professional Version: Based on the Standard Version, each server runs only one component instance to enhance reliability and performance, avoiding interference and resource competition between components.

In the Standard and Professional deployment modes, the component architecture is by default as follows:

  • MySQL: Master-slave dual nodes, where the slave node can continue to provide services if the master node fails.
  • MongoDB: Three-node replica set supporting automatic failover to ensure data availability.
  • Redis: Supports both master-slave and sentinel modes to ensure service HA.
  • Kafka: Three-node cluster with multiple replicas per topic for data redundancy and reliability.
  • Elasticsearch: Three-node cluster, with multiple replica shards to enhance data redundancy and availability.
  • File: Based on a four-node MinIO cluster with redundant data storage to ensure reliability.

Deployment Process

Since HAP microservices rely on components such as MongoDB, MySQL, Redis, Kafka, Elasticsearch, and MinIO, these dependencies need to be deployed first, followed by the HAP microservices.

Recommended deployment order:

  1. Deploy MongoDB, MySQL, Redis, Kafka, Elasticsearch, MinIO
  2. Deploy HAP File Service
  3. Deploy Kubernetes Cluster
  4. Deploy Istio
  5. Deploy HAP Microservices
  6. Deploy Flink
  7. Deploy Nginx Proxy
  8. Deploy Monitoring Services (Prometheus + Grafana)

Note:

  • It is recommended to unify software installation directories to /usr/local, use /data for data directories, and mount the server data disk to /data.

  • All cluster nodes should maintain consistent time zones and synchronize time with the same NTP server.

  • Some passwords in the example documentation are weak (e.g., 123456), and must be changed to strong passwords for actual deployment.

    • Passwords should contain uppercase and lowercase letters and numbers, with a minimum length of 8 characters.

    • If special characters are to be used, only - or _ are allowed. Characters like @ ! # & are prohibited to avoid compatibility issues.


ARM Environment Deployment Instructions

The HAP private deployment version supports various Linux distributions and mainstream CPU architectures.

  • This document provides deployment examples for the x86_64/AMD64 architecture.
  • If deploying on ARM64/AARCH64 architecture servers, the deployment steps are generally the same.
  • Note that software packages may differ between architectures, so ensure to use packages matching your architecture.

Note: Nocoly is not supported on ARM64/AARCH64 architecture servers.

Download Links for x86_64/AMD64 Software Packages
Package NameDownload Link
Dockerhttps://pdpublic.mingdao.com/private-deployment/offline/common/docker-27.3.1.tgz
Nginxhttps://pdpublic.mingdao.com/private-deployment/offline/common/nginx-1.28.0-glibc2.17-amd64.tar.gz
MySQLhttps://pdpublic.mingdao.com/private-deployment/offline/common/mysql-8.0.43-linux-glibc2.17-x86_64.tar.xz
MongoDBhttps://www.mongodb.com/try/download/community-edition/releases/archive
Mongo Toolshttps://www.mongodb.com/try/download/database-tools
Redishttps://pdpublic.mingdao.com/private-deployment/offline/common/redis-8.0.3-glibc2.17-amd64.tar.gz
JDKhttps://pdpublic.mingdao.com/private-deployment/offline/common/OpenJDK21U-jdk_x64_linux_hotspot_21.0.8_9.tar.gz
Kafkahttps://pdpublic.mingdao.com/private-deployment/offline/common/kafka_2.13-3.9.1.tgz
Elasticsearchhttps://pdpublic.mingdao.com/private-deployment/offline/common/elasticsearch-8.18.1-linux-x86_64.tar.gz
Elasticsearch-ikhttps://pdpublic.mingdao.com/private-deployment/offline/common/elasticsearch-analysis-ik-8.18.1.zip
CNI Pluginhttps://pdpublic.mingdao.com/private-deployment/offline/common/kubernetes-1.25.4/cni-plugins-linux-amd64-v1.1.1.tgz
Crictlhttps://pdpublic.mingdao.com/private-deployment/offline/common/kubernetes-1.25.4/crictl-v1.25.0-linux-amd64.tar.gz
Nerdctlhttps://pdpublic.mingdao.com/private-deployment/offline/common/kubernetes-1.25.4/nerdctl-1.7.0-linux-amd64.tar.gz
Kubeadmhttps://pdpublic.mingdao.com/private-deployment/offline/common/kubernetes-1.25.4/kubeadm
Kubelethttps://pdpublic.mingdao.com/private-deployment/offline/common/kubernetes-1.25.4/kubelet
Kubectlhttps://pdpublic.mingdao.com/private-deployment/offline/common/kubernetes-1.25.4/kubectl
K8S Component Imageshttps://pdpublic.mingdao.com/private-deployment/offline/common/kubernetes-1.25.4/kubeadm-1.25.4-images.tar.gz
CentOS Imagehttps://pdpublic.mingdao.com/private-deployment/offline/common/centos7.9.2009.tar.gz
Istiohttps://pdpublic.mingdao.com/private-deployment/offline/common/istio-1.18.0-linux-amd64.tar.gz
Istio Service Imageshttps://pdpublic.mingdao.com/private-deployment/offline/common/istio-1.18.0-images.tar.gz
Prometheushttps://pdpublic.mingdao.com/private-deployment/offline/common/prometheus-3.5.0.linux-amd64.tar.gz
Grafanahttps://pdpublic.mingdao.com/private-deployment/offline/common/grafana_12.1.2_17957162798_linux_amd64.tar.gz
Node Exporterhttps://pdpublic.mingdao.com/private-deployment/offline/common/node_exporter-1.9.1.linux-amd64.tar.gz
Cadvisorhttps://pdpublic.mingdao.com/private-deployment/offline/common/cadvisor-v0.52.1-linux-amd64
Kafka Exporterhttps://pdpublic.mingdao.com/private-deployment/offline/common/kafka_exporter-1.9.0.linux-amd64.tar.gz
K8S Metrics Imageshttps://pdpublic.mingdao.com/private-deployment/offline/common/kube-state-metrics.tar.gz
MinIOhttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-minio-linux-amd64-RELEASE.2025-04-22T22-12-26Z.tar.gz
File Init Fileshttps://pdpublic.mingdao.com/private-deployment/source/6.3.0/file_init.tar.gz
mingdaoyun-communityhttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-community-linux-amd64-6.5.4.tar.gz
mingdaoyun-filehttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-file-linux-amd64-2.1.0.tar.gz
mingdaoyun-flinkhttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-flink-linux-amd64-1.17.1.530.tar.gz
mingdaoyun-dochttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-doc-linux-amd64-2.0.0.tar.gz
mingdaoyun-commandhttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-command-linux-amd64-node1018-python36.tar.gz
Download Links for ARM64/AARCH64 Software Packages
Package NameDownload Link
Dockerhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/docker-27.3.1.tgz
Nginxhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/nginx-arm64-1.28.0.tar.gz
MySQLhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/mysql-8.0.43-linux-glibc2.28-aarch64.tar.xz
MongoDBhttps://www.mongodb.com/try/download/community-edition/releases/archive
Mongo Toolshttps://www.mongodb.com/try/download/database-tools
Redishttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/redis-8.0.3.tar.gz
JDKhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.8_9.tar.gz
Kafkahttps://pdpublic.mingdao.com/private-deployment/offline/common/kafka_2.13-3.9.1.tgz
Elasticsearchhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/elasticsearch-8.18.1-linux-aarch64.tar.gz
Elasticsearch-ikhttps://pdpublic.mingdao.com/private-deployment/offline/common/elasticsearch-analysis-ik-8.18.1.zip
CNI Pluginhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/cni-plugins-linux-arm64-v1.1.1.tgz
Crictlhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/crictl-v1.25.0-linux-arm64.tar.gz
Nerdctlhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/nerdctl-1.7.0-linux-arm64.tar.gz
Kubeadmhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/kubeadm
Kubelethttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/kubelet
Kubectlhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/kubectl
K8S Component Imageshttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/kubeadm-1.25.4-images-arm64.tar.gz
CentOS Imagehttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/centos7.9.2009-arm64.tar.gz
Istiohttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/istio-1.18.0-linux-arm64.tar.gz
Istio Service Imageshttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/istio-1.18.0-images-arm64.tar.gz
Prometheushttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/prometheus-3.5.0.linux-arm64.tar.gz
Grafanahttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/grafana_12.1.2_17957162798_linux_arm64.tar.gz
Node Exporterhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/node_exporter-1.9.1.linux-arm64.tar.gz
Cadvisorhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/cadvisor-v0.52.1-linux-arm64
Kafka Exporterhttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/kafka_exporter-1.9.0.linux-arm64.tar.gz
K8S Metrics Imageshttps://pdpublic.mingdao.com/private-deployment/offline/common/arm64/kube-state-metrics-arm-2.8.1.tar
MinIOhttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-minio-linux-arm64-RELEASE.2025-04-22T22-12-26Z.tar.gz
File Init Fileshttps://pdpublic.mingdao.com/private-deployment/source/6.3.0/file_init.tar.gz
mingdaoyun-communityhttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-community-linux-arm64-6.5.4.tar.gz
mingdaoyun-filehttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-file-linux-arm64-2.1.0.tar.gz
mingdaoyun-flinkhttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-flink-linux-arm64-1.17.1.530.tar.gz
mingdaoyun-dochttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-doc-linux-arm64-2.0.0.tar.gz
mingdaoyun-commandhttps://pdpublic.mingdao.com/private-deployment/offline/mingdaoyun-command-linux-arm64-node1018-python36.tar.gz