跳至主要内容

System Requirements

1. Hardware Prerequisites

1.1 Single Node Virtual Machine Specs

Provided specs below estimate the resource usage for Gravity and staging DB

Number of nodesCPUsMemory (GiB)Storage (GiB)
11248900
  • Storage size is adjustable, usually twice the size of the input data

1.2 VM Specs for Multi-node Kubernetes Installation

VM nodeCountvCPUMemory (GiB)Storage (GiB)
Master node + NFS124600
Worker node1816100
Windows 跳板機12480
  • Storage size is adjustable, usually twice the size of the input data

2. Environment

  • A Kubernetes cluster, capable of connecting to internet to pull images.
  • A local image registry (e.g.,Docker, Harbor)
  • A Linux jump server with the correct access rights to operate K8S cluster

📝 A jump server could be any one of the following:

A master node in the kubernetes cluster

Any machine that can connect to the master node

3. Acquire sample .yaml files and images

Click ---> here to install the official Gravity Image file (image files)

Click ---> here to install the depndency files (Sample .yaml)

3.1 File Structure

Below is the file structure provided:

── 00-namespace.yaml
├── 10-lab-db
│   ├── source-mssql
│   │   ├── 01-create_src_db.sh
│   │   ├── 02-query_src.sh
│   │   ├── 03-drop_src_tb.sh
│   │   ├── DropTable.sql
│   │   ├── mssql.yaml
│   │   └── SrcTable.sql
│   ├── target2-mysql
│   │   ├── 01-create_target2_tb.sh
│   │   ├── 02-query_target2.sh
│   │   ├── 03-drop_target_tb.sh
│   │   ├── delete_target2.sh
│   │   ├── mysql.yaml
│   │   ├── query.sh
│   │   └── Target2Table.sql
│   └── target-mssql
│   ├── 01-create_tgt_db.sh
│   ├── 02-query_tgt.sh
│   ├── 03-drop_tgt_tb.sh
│   ├── DropTable.sql
│   ├── mssql.yaml
│   └── TargetTable.sql
├── 20-lab-gitea
│   ├── gitea.yaml
│   └── token.txt
├── 30-gravity
│   ├── 00-lab-configmap.yaml
│   ├── 01-lab-secret.yaml
│   ├── 10-lab-gravity-nats.yaml
│   ├── 20-lab-gravity-dispatcher.yaml
│   ├── 30-lab-adapter-mssql.yaml
│   ├── 40-lab-atomic.yaml
│   ├── data_product
│   │   ├── create_dp.sh
│   │   ├── delete_dp.sh
│   │   ├── handler.js
│   │   ├── list_token.sh
│   │   ├── schema.json
│   │   └── table-scanner_linux_amd64
│   └── flow
│   └── node_modules
├── atomic_build
│   ├── atomic
│   │   ├── pwd_encrypt
│   │   └── startup.sh
│   ├── Dockerfile.lab-atomic_test
│   └── README.md
├── db-test
│   ├── delete.sh
│   ├── delete_target2.sh
│   ├── error_retry.json
│   ├── flow.json
│   ├── insert.sh
│   ├── logic1.json
│   ├── logic2.json
│   ├── query.sh
│   ├── query_target2.sh
│   ├── source_1.txt
│   ├── source_2.txt
│   ├── update.sh
│   └── update.txt
├── README.md
└── tools
├── pwd_encrypt
└── table-scanner_linux_amd64