沙箱环境
用于学习和测试的 4 节点环境
Pigsty 有一个沙盒,这是一个具有固定 IP 地址和其他标识符的 4 节点部署。
我们将使用它作为学习和测试目的的标准演示环境。
描述
沙盒由具有固定 IP 地址和身份的 4 个节点组成:
ID | IP 地址 | NODE | PGSQL | INFRA | ETCD | MINIO |
---|---|---|---|---|---|---|
1 | 10.10.10.10 | meta | pg-meta-1 | infra-1 | etcd-1 | minio-1 |
2 | 10.10.10.11 | node-1 | pg-test-1 | |||
3 | 10.10.10.12 | node-2 | pg-test-1 | |||
4 | 10.10.10.13 | node-3 | pg-test-1 |
在 meta
节点上有一个主要的单例 PostgreSQL 集群:pg-meta
,
它可以独立使用,还有一个可选的 L2 VIP 10.10.10.2
和集群 DNS pg-meta
绑定到它。
10.10.10.10 meta pg-meta-1
10.10.10.2 pg-meta
沙盒中还有三个额外的节点,组成一个 3 实例的 PostgreSQL HA 集群 pg-test
。
有一个可选的 L2 VIP 10.10.10.3
和集群 DNS pg-test
绑定到集群领导者。
10.10.10.11 node-1 pg-test-1
10.10.10.12 node-2 pg-test-2
10.10.10.13 node-3 pg-test-3
10.10.10.3 pg-test
在 meta
节点上还有一个 1 节点的 etcd
集群和 1 节点的 minio
集群。
10.10.10.10 minio-1
10.10.10.10 etcd-1
实现
您可以使用 Vagrant 创建本地沙盒,或使用 Terraform 创建云沙盒。
要使用本地 vagrant 模板:
make full9 # 使用 RockyLinux 9 创建 4 节点沙盒
make full12 # 使用 Debian 12 创建 4 节点沙盒
make full24 # 使用 Ubuntu 24.04 创建 4 节点沙盒
要使用云 terraform 模板,请使用 spec/aliyun-full.tf 作为示例, 阿里云 4 节点沙盒模板适用于所有发行版和 amd/arm。
make tu # terraform up
make td # terraform destroy
make tssh # 将 ssh 别名写入 ~/.ssh/pigsty_config