跳转到主要内容

文档 v1.5.1 版本已不再积极维护,你当前浏览的是一份归档快照。 最新文档请参阅 最新版本

Pigsty 快速上手

从 Pigsty v1.5.1 标签恢复的历史文档。

Pigsty的安装分为三个步骤:部署准备修改配置执行剧本


Pigsty有两种典型使用模式:单机安装集群管理

  • 单机:在单个节点上安装Pigsty,将其作为开箱即用的Postgres数据库使用(开发测试)
  • 集群:在单机安装的基础上,部署、监控、管理其他节点与多种不同种类的数据库(运维管理)

单机安装

在一台节点上安装Pigsty时,Pigsty会在该节点上部署完整的基础设施运行时 与 一个单节点PostgreSQL数据库集群。对于个人用户、简单场景、小微企业来说,您可以直接开箱使用此数据库。

准备好新装机器(Linux x86_64 CentOS 7.8.2003)一台,配置管理用户ssh本机sudo访问,然后下载Pigsty

curl -SL https://github.com/Vonng/pigsty/releases/download/v1.5.1/pigsty.tgz | gzip -d | tar -xC ~  # 下载最新pigsty源代码
cd ~/pigsty; ./configure                               # 根据当前环境生成配置
./infra.yml                                            # 在当前节点上完成安装

如果您有可用的Macbook/PC/笔记本或云厂商账号,可使用沙箱部署在本机或云端自动创建虚拟机。

执行完毕后,您已经在当前节点完成了Pigsty的安装,上面带有完整的基础设施与一个开箱即用的PostgreSQL数据库实例,当前节点的5432对外提供数据库服务,80端口对外提供所有WebUI类服务。

80端口为所有Web图形界面服务的访问端点。尽管可以绕过Nginx直接使用端口访问各项服务,例如3000端口的Grafana,但强烈建议用户通过在本机配置静态DNS的方式,使用域名访问各项Web子服务。

访问 http://g.pigstyhttp://<primary_ip>:3000 即可浏览 Pigsty监控系统主页 (用户名: admin, 密码: pigsty)


集群管理

Pigsty还可以用作大规模生产环境的集群/数据库管理。您可以从单机安装Pigsty的节点(将作为集群的元节点,或称作元节点/Meta)上发起控制,将更多的 机器节点 纳入Pigsty的管理与监控中。 更重要的是,Pigsty还可以在这些节点上部署并管理各式各样的数据库集群与应用:创建高可用的PostgreSQL数据库集群;创建不同类型的Redis集簇;部署 Greenplum/MatrixDB 数据仓库,并获取关于节点、数据库与应用的实时洞察。

# 在四节点本地沙箱/云端演示环境中,可以使用以下命令在其他三台节点上部署数据库集群
./nodes.yml  -l pg-test      # 初始化集群pg-test包含的三台机器节点(配置节点+纳入监控)
./pgsql.yml  -l pg-test      # 初始化高可用PGSQL数据库集群pg-test
./redis.yml  -l redis-test   # 初始化Redis集群 redis-test
./pgsql-matrixdb.yml -l mx-*  # 初始化MatrixDB集群mx-mdw,mx-sdw

沙箱环境

Pigsty设计了一个标准的,4节点的演示教学环境,称为沙箱环境,您可以参考教程,使用Vagrant或Terraform快速在本机或公有云上拉起所需的四台虚拟机资源,并进行部署测试。跑通流程后稍作修改,便可用于生产环境部署

以默认的沙箱环境为例,假设您已经在10.10.10.10元节点上完成单机Pigsty的安装:

./infra.yml # 在沙箱环境的 10.10.10.10 meta 机器上,完成完整的单机Pigsty安装

主机初始化

现希望将三个节点:10.10.10.11, 10.10.10.12, 10.10.10.13 纳入管理,则可使用 nodes.yml 剧本:

./nodes.yml -l pg-test      # 初始化集群pg-test包含的三台机器节点(配置节点+纳入监控)

执行完毕后,这三台节点已经带有DCS服务,主机监控与日志收集。可以用于后续的数据库集群部署。详情请参考节点 配置剧本

PostgreSQL部署

使用 pgsql.yml 剧本,可以在这三台节点上初始化一主两从的高可用PostgreSQL数据库集群 pg-test

./pgsql.yml  -l pg-test      # 初始化高可用PGSQL数据库集群pg-test

部署完成后,即可从监控系统 中看到新创建的PostgreSQL集群。

详情请参考:PgSQL数据库集群 配置定制剧本

Redis部署

除了标准的PostgreSQL集群,您还可以部署各种其他类型的集群,甚至其他类型的数据库。

例如在沙箱中部署Redis,可以使用Redis数据库集群 配置剧本

./configure -m redis
./nodes.yml    # 配置所有用于安装Redis的节点
./redis.yml    # 在所有节点上按照配置声明Redis

MatrixDB部署

例如在沙箱中部署开源数据仓库MatrixDB(Greenplum7),可以使用以下命令:

./configure -m mxdb  # 使用沙箱环境MatrixDB配置文件模板
./download matrix    # 下载MatrixDB软件包并构建本地源
./infra.yml -e no_cmdb=true  # 如果您准备在meta节点上部署 MatrixDB Master,添加no_cmdb选项,否则正常安装即可。
./nodes.yml                  # 配置所有用于安装MatrixDB的节点
./pgsql-matrixdb.yml          # 在上述节点上安装MatrixDB