精简安装
如何
Module:
Pigsty 带有一整套服务于高可用 PostgreSQL 基础设施堆栈,但是这也完全是可选的,您可以通过最小化安装,只安装必要的 PostgreSQL 高可用集群组件。
概览
最小化安装专注于纯粹的 HA-PostgreSQL 集群,仅安装所需的基本组件。
在最小化安装模式下,不会有 Infra
模块,没有监控,没有 本地仓库
只有部分 NODE 模块的一部分,以及 ETCD 和 PGSQL 模块会被安装:您依然可以使用完整的 PGSQL 模块与 ETCD 模块的功能
在节点上会启用的 Systemd 服务有:
- patroni:必选,PostgreSQL 高可用与管控组件
- etcd:必选, Patroni 高可用依赖的配置中心
- pgbouncer:可选,数据库连接池
- vip-manager:可选,为主库绑定一个可选的二层VIP。
- haproxy:可选,提供自动路由的 服务 接入
- chronyd: 可选,同步节点时间
- tuned:可选,管理节点配置模板与系统内核参数
其中 patroni
和 etcd
是必选的组件,其他组件都是可选的,尽管如此,Pigsty 不建议关闭这些组件 —— 您可以留着它们不用。
配置
要执行最小化安装,您需要额外配置几个选项开关,如 slim.yml
所示:
all:
children:
infra: { hosts: { 10.10.10.10: { infra_seq: 1 } }, vars: { docker_enabled: true } }
etcd:
hosts:
10.10.10.10: { etcd_seq: 1 }
#10.10.10.11: { etcd_seq: 2 } # optional
#10.10.10.12: { etcd_seq: 3 } # optional
vars: { etcd_cluster: etcd }
pg-meta:
hosts:
10.10.10.10: { pg_seq: 1, pg_role: primary } # init one single-node pgsql cluster by default, with:
#10.10.10.11: { pg_seq: 2, pg_role: replica } # optional replica : bin/pgsql-add pg-meta 10.10.10.11
#10.10.10.12: { pg_seq: 3, pg_role: replica } # optional replica : bin/pgsql-add pg-meta 10.10.10.12
vars:
pg_cluster: pg-meta
pg_users: # define business users here: https://pigsty.io/docs/pgsql/user/
- { name: dbuser_meta ,password: DBUser.Meta ,pgbouncer: true ,roles: [ dbrole_admin ] ,comment: pigsty default user }
pg_databases: # define business databases here: https://pigsty.io/docs/pgsql/db/
- { name: meta ,comment: pigsty default database }
pg_hba_rules: # define HBA rules here: https://pigsty.io/docs/pgsql/hba/#define-hba
- { user: dbuser_meta , db: all ,addr: world ,auth: pwd ,title: 'allow default user world access with password (not a good idea!)' }
node_crontab: # define backup policy with crontab (full|diff|incr)
- '00 01 * * * postgres /pg/bin/pg-backup full'
#pg_vip_address: 10.10.10.2/24 # optional l2 vip address and netmask
pg_extensions: # define pg extensions (345 available): https://pigsty.io/docs/pgext/
- postgis timescaledb pgvector
vars:
version: v3.0.4 # pigsty version string
admin_ip: 10.10.10.10 # admin node ip address
region: default # upstream mirror region: default|china|europe
node_tune: tiny # use tiny template for NODE in demo environment
pg_conf: tiny.yml # use tiny template for PGSQL in demo environment
# minimal installation setup
node_repo_modules: node,infra,pgsql
nginx_enabled: false
dns_enabled: false
prometheus_enabled: false
grafana_enabled: false
pg_exporter_enabled: false
pgbouncer_exporter_enabled: false
pg_vip_enabled: false
同时在初始化安装时,您应该使用 slim.yml
剧本进行安装,而不是默认的 install.yml
。
./slim.yml
然后,配置指定的节点上便会安装最小化的 PostgreSQL 高可用集群组件。
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.