From 02c54414435377c6bbe347704c31c116e46a6211 Mon Sep 17 00:00:00 2001 From: Vonng Date: Fri, 2 Aug 2024 18:01:50 +0800 Subject: [PATCH] adjust config template for v2.8.0 --- files/pigsty/debian12.yml | 3 +- files/pigsty/el7.yml | 5 ++- files/pigsty/el8.yml | 5 ++- files/pigsty/el9.yml | 5 ++- files/pigsty/full.yml | 43 ++++++++++++----------- files/pigsty/prod-deb.yml | 72 +++++++++++---------------------------- files/pigsty/prod.yml | 33 ++++++++++-------- files/pigsty/public.yml | 28 ++++++++------- files/pigsty/rpm.yml | 59 ++++++++++++++++++-------------- files/pigsty/supabase.yml | 17 ++++----- files/pigsty/ubuntu22.yml | 5 ++- 11 files changed, 129 insertions(+), 146 deletions(-) diff --git a/files/pigsty/debian12.yml b/files/pigsty/debian12.yml index 8bc85ef1..5c1c7768 100644 --- a/files/pigsty/debian12.yml +++ b/files/pigsty/debian12.yml @@ -221,8 +221,7 @@ all: #----------------------------------# # PostgreSQL Packages & Extensions #----------------------------------# - # check available alias mapping: roles/pgsql/vars/pg_packages_map.yml - # https://github.com/Vonng/pigsty/blob/master/roles/pgsql/vars/pg_package_map.yml + # available deb & alias: https://github.com/Vonng/pigsty/blob/master/roles/node_id/vars/deb.yml pg_packages: # pg packages to be installed, alias can be used - postgresql - patroni pgbouncer pgbackrest pg_exporter pgbadger vip-manager wal2json pg_repack diff --git a/files/pigsty/el7.yml b/files/pigsty/el7.yml index 02e0604a..0e1726ba 100644 --- a/files/pigsty/el7.yml +++ b/files/pigsty/el7.yml @@ -3,7 +3,7 @@ # File : el7.yml # Desc : Pigsty auto generated config for el7 singleton # Ctime : 2020-05-22 -# Mtime : 2024-07-08 +# Mtime : 2024-08-02 # Docs : https://pigsty.io/docs/setup/config/ # Author : Ruohang Feng (rh@vonng.com) # License : AGPLv3 @@ -244,9 +244,8 @@ all: #----------------------------------# # PostgreSQL Packages & Extensions #----------------------------------# + # available rpm & alias: https://github.com/Vonng/pigsty/blob/master/roles/node_id/vars/rpm.yml pg_version: 15 # el7 is using postgresql 15 as the default major version (there's no pg16 support on el7) - # check available alias mapping: roles/pgsql/vars/pg_packages_map.yml - # https://github.com/Vonng/pigsty/blob/master/roles/pgsql/vars/pg_package_map.yml pg_packages: # pg packages to be installed, alias can be used - postgresql - patroni pgbouncer pgbackrest pg_exporter pgbadger vip-manager wal2json pg_repack diff --git a/files/pigsty/el8.yml b/files/pigsty/el8.yml index 277a1f12..7084290d 100644 --- a/files/pigsty/el8.yml +++ b/files/pigsty/el8.yml @@ -3,7 +3,7 @@ # File : el8.yml # Desc : Pigsty auto generated config for el8 # Ctime : 2020-05-22 -# Mtime : 2024-07-31 +# Mtime : 2024-08-02 # Docs : https://pigsty.io/docs/setup/config/ # Author : Ruohang Feng (rh@vonng.com) # License : AGPLv3 @@ -221,8 +221,7 @@ all: #----------------------------------# # PostgreSQL Packages & Extensions #----------------------------------# - # check available alias mapping: roles/pgsql/vars/pg_packages_map.yml - # https://github.com/Vonng/pigsty/blob/master/roles/pgsql/vars/pg_package_map.yml + # available rpm & alias: https://github.com/Vonng/pigsty/blob/master/roles/node_id/vars/rpm.yml pg_packages: # pg packages to be installed, alias can be used - postgresql - patroni pgbouncer pgbackrest pg_exporter pgbadger vip-manager wal2json pg_repack diff --git a/files/pigsty/el9.yml b/files/pigsty/el9.yml index 25696051..34b408ba 100644 --- a/files/pigsty/el9.yml +++ b/files/pigsty/el9.yml @@ -3,7 +3,7 @@ # File : el9.yml # Desc : Pigsty auto generated config for el9 # Ctime : 2020-05-22 -# Mtime : 2024-07-07 +# Mtime : 2024-08-02 # Docs : https://pigsty.io/docs/setup/config/ # Author : Ruohang Feng (rh@vonng.com) # License : AGPLv3 @@ -220,8 +220,7 @@ all: #----------------------------------# # PostgreSQL Packages & Extensions #----------------------------------# - # check available alias mapping: roles/pgsql/vars/pg_packages_map.yml - # https://github.com/Vonng/pigsty/blob/master/roles/pgsql/vars/pg_package_map.yml + # available rpm & alias: https://github.com/Vonng/pigsty/blob/master/roles/node_id/vars/rpm.yml pg_packages: # pg packages to be installed, alias can be used - postgresql - patroni pgbouncer pgbackrest pg_exporter pgbadger vip-manager wal2json pg_repack diff --git a/files/pigsty/full.yml b/files/pigsty/full.yml index 3c18e497..d2ee212b 100644 --- a/files/pigsty/full.yml +++ b/files/pigsty/full.yml @@ -3,7 +3,7 @@ # File : full.yml # Desc : pigsty demo config with full default values # Ctime : 2020-05-22 -# Mtime : 2024-07-05 +# Mtime : 2024-08-02 # Docs : https://pigsty.io/docs/setup/config/ # Author : Ruohang Feng (rh@vonng.com) # License : AGPLv3 @@ -130,19 +130,23 @@ all: # install extensions here: # define HBA rules here: https://pigsty.io/docs/pgsql/extension/#install-extension pg_libs: 'timescaledb, pg_stat_statements, auto_explain' # add timescaledb to shared_preload_libraries - pg_extensions: # extensions to be installed on this cluster - - postgis34_$v* timescaledb-2-postgresql-$v* pgvector_$v* # default extensions to be installed - #[ GIS & Timeseries ]# - timescaledb-2-postgresql-$v* postgis34_$v* pgrouting_$v* pointcloud_$v* h3-pg_$v* ip4r_$v* # geoip_$v* - #[ Vector Search RAG ]# - pgvector_$v* pgvectorscale_$v pg_vectorize_$v pg_tiktoken_$v pgml_$v pg_search_$v pg_bigm_$v* zhparser_$v* - #[ OLAP & Sharding ]# - hydra_$v* duckdb_fdw_$v* parquet_s3_fdw_$v* pg_lakehouse_$v pg_tier_$v pg_fkpart_$v* pg_partman_$v* # citus_$v* plproxy_$v* # pg_strom_$v* - #[ Featured & AM ]# - apache-age_$v* pg_graphql_$v pg_jsonschema_$v jsquery_$v* pg_hint_plan_$v* hypopg_$v* pg_ivm_$v* pgmq_$v pgq_$v* pgtt_$v* temporal_tables_$v* e-maj_$v* periods_$v* table_version_$v* pg_statement_rollback_$v* hll_$v* rum_$v - #[ Function & Test ]# - pgjwt_$v* pg_idkit_$v pg_uuidv7_$v* pg_later_$v pg_background_$v* pgsql_gzip_$v* pgsql_http_$v* pg_net_$v* pgsql_tweaks_$v* count_distinct_$v* extra_window_functions_$v* tdigest_$v* pg_extra_time_$v* topn_$v* - #[ FDW & Compatible ]# - wrappers_$v mongo_fdw_$v* mysql_fdw_$v* ogr_fdw_$v* sqlite_fdw_$v* tds_fdw_$v* hdfs_fdw_$v* pgbouncer_fdw_$v* orafce_$v* pgmemcache_$v* pg_dbms_lock_$v* pg_dbms_metadata_$v* # pg_dbms_job_$v* mysqlcompat_$v* # multicorn2_$v* oracle_fdw_$v* db2_fdw_$v* - #[ Type, PL, Test ]# - prefix_$v* timestamp9_$v* semver_$v* pgmp_$v* pguint_$v* pg_roaringbitmap_$v* md5hash_$v* pg_tle_$v* plv8_$v* pllua_$v* luapgsql plprql_$v pldebugger_$v* plpgsql_check_$v* plprofiler_$v* plsh_$v* # plr_$v* # postgresql_faker_$v* # dbt2-pg$v-extensions* # postgresql-unit_$v* pgtap_$v* - #[ Administration ]# - pg_cron_$v* pg_repack_$v* pg_squeeze_$v* pg_dirtyread_$v* pgdd_$v pgfincore_$v* pgl_ddl_deploy_$v* pg_prioritize_$v* pg_readonly_$v* pgagent_$v* pg_checksums_$v* safeupdate_$v* ddlx_$v* pg_permissions_$v* pg_auto_failover_$v* pg_catcheck_$v* pgxnclient pg_filedump # pgpool-II-pg$v-extensions - #[ Monitor & Stat ]# - pg_profile_$v* pg_show_plans_$v* pg_stat_kcache_$v* pg_stat_monitor_$v* pg_qualstats_$v* pg_statviz_extension_$v pg_store_plans_$v* pg_top_$v* pg_track_settings_$v* pg_wait_sampling_$v* system_stats_$v* bgw_replstatus_$v* powa-archivist_$v* powa_$v* pgmeminfo_$v* # pgexporter_ext_$v* - #[ Security & Audit ]# - passwordcheck_cracklib_$v* pgsodium_$v* vault_$v* postgresql_anonymizer_$v* pg_tde_$v* pgsmcrypto_$v pgaudit_$v* pgauditlogtofile_$v* pg_auth_mon_$v* credcheck_$v* pgcryptokey_$v* pg_jobmon_$v* logerrors_$v* login_hook_$v* set_user_$v* - #[ ETL, CDC, REPL ]# - pglogical_$v* postgres-decoderbufs_$v* wal2json_$v* pg_failover_slots_$v* pg_fact_loader_$v* pg_bulkload_$v* pg_comparator_$v* pgimportdoc_$v* pgexportdoc_$v* pgcopydb pgloader # repmgr_$v* + #pg_extensions: # extensions to be installed on this cluster + # - timescaledb periods temporal_tables emaj table_version pg_cron pg_later pg_background pg_timetable #[TIME]# + # - postgis pgrouting pointcloud pg_h3 q3c ogr_fdw geoip #[GIS]# + # - pgvector pgvectorscale pg_vectorize pg_similarity pg_tiktoken pgml #[RAG]# + # - pg_search pg_bigm zhparser hunspell #[FTS]# + # - hydra pg_lakehouse duckdb_fdw pg_fkpart pg_partman plproxy #citus pg_strom #[OLAP]# + # - age hll rum pg_graphql pg_jsonschema jsquery pg_hint_plan hypopg imgsmlr pg_ivm pgmq pgq #[FEAT]# + # - pg_tle plv8 pllua plprql pldebugger plpgsql_check plprofiler plsh pljava #plr faker pgtap #[LANG]# + # - prefix semver pgmp pguint pgunit roaringbitmap md5hash asn1oid numeral pg_rational ip4r pgsphere pgfaceting timestamp9 #[TYPE]# #[FUNC]# #[ADMIN]# #[STAT]# #[SEC]# + # - pg_gzip pg_http topn pg_net pgjwt shacrypt pgsql_tweaks pg_extra_time count_distinct extra_window_functions first_last_agg tdigest pgpcre icu_ext pg_idkit pg_hashids pg_uuidv7 permuteseq sequential_uuids + # - pg_repack pg_squeeze pg_dirtyread pgfincore pgdd ddlx pg_prioritize pg_checksums pg_readonly safeupdate pg_permissions pg_auto_failover preprepare pg_catcheck + # - pg_profile pg_show_plans pg_stat_kcache pg_stat_monitor pg_qualstats pg_store_plans pg_track_settings pg_wait_sampling system_stats bgw_replstatus pg_sqlog powa pgmeminfo toastinfo + # - passwordcheck supautils pgsodium pg_vault anonymizer pg_tde pgsmcrypto pgaudit pgauditlogtofile pg_auth_mon credcheck pgcryptokey pg_jobmon logerrors login_hook set_user tablelog pg_snakeoil pgextwlist + # - wrappers multicorn mongo_fdw mysql_fdw tds_fdw sqlite_fdw hdfs_fdw pgbouncer_fdw firebird_fdw #oracle_fdw db2_fdw #[FDW]# + # - mysqlcompat pgmemcache pgtt orafce pg_statement_rollback pg_dbms_lock pg_dbms_metadata #pg_dbms_job babelfish #[SIM]# + # - pglogical pgl_ddl_deploy decoderbufs wal2json wal2mongo pg_failover_slots mimeo pg_fact_loader pg_bulkload #repmgr slony #[ETL]# + # - gis-stack rag-stack fdw-stack fts-stack etl-stack feat-stack olap-stack supa-stack stat-stack json-stack #[STACK]# #[ Predefined Stacks ]# # define HBA rules here: https://pigsty.io/docs/pgsql/hba/#define-hba pg_hba_rules: @@ -610,12 +614,11 @@ all: pg_version: 16 # postgres major version to be installed, 16 by default pg_bin_dir: /usr/pgsql/bin # postgres binary dir, `/usr/pgsql/bin` by default pg_log_dir: /pg/log/postgres # postgres log dir, `/pg/log/postgres` by default - pg_packages: # pg packages to be installed, `${pg_version}` will be replaced - - postgresql${pg_version}* - - pgbouncer pg_exporter pgbadger vip-manager patroni patroni-etcd pgbackrest - - pg_repack_${pg_version}* wal2json_${pg_version}* passwordcheck_cracklib_${pg_version}* # important extensions - pg_extensions: # pg extensions to be installed, `${pg_version}` will be replaced - - postgis34_${pg_version}* timescaledb-2-postgresql-${pg_version}* pgvector_${pg_version}* + pg_packages: # pg packages to be installed, alias can be used + - postgresql # available rpm & alias: https://github.com/Vonng/pigsty/blob/master/roles/node_id/vars/rpm.yml + - patroni pgbouncer pgbackrest pg_exporter pgbadger vip-manager wal2json pg_repack + pg_extensions: # pg extensions to be installed, alias can be used + - postgis timescaledb pgvector #----------------------------------------------------------------- # PG_BOOTSTRAP diff --git a/files/pigsty/prod-deb.yml b/files/pigsty/prod-deb.yml index be1fac7a..6f2d5237 100644 --- a/files/pigsty/prod-deb.yml +++ b/files/pigsty/prod-deb.yml @@ -3,7 +3,7 @@ # File : prod-deb.yml # Desc : Pigsty config for a prod simulation (ubuntu/debian) # Ctime : 2023-10-16 -# Mtime : 2024-05-16 +# Mtime : 2024-08-02 # Docs : https://pigsty.io/docs/setup/config/ # Author : Ruohang Feng (rh@vonng.com) # License : AGPLv3 @@ -128,20 +128,24 @@ all: - { name: noco ,owner: dbuser_noco ,revokeconn: true ,comment: nocodb database } pg_hba_rules: - { user: dbuser_view , db: all ,addr: infra ,auth: pwd ,title: 'allow grafana dashboard access cmdb from infra nodes' } - pg_extensions: - - postgresql-$v-postgis* timescaledb-2-postgresql-$v postgresql-$v-pgvector postgresql-$v-citus-12.1 - #[ GIS & Timeseries ]# - timescaledb-2-postgresql-$v postgresql-$v-postgis-3* postgresql-$v-pgrouting* postgresql-$v-pointcloud postgresql-$v-h3 postgresql-$v-ip4r postgresql-$v-mobilitydb - #[ Vector Search RAG ]# - postgresql-$v-pgvector postgresql-$v-similarity pg-search - #[ OLAP & Sharding ]# - postgresql-$v-citus-12.1 postgresql-$v-plproxy postgresql-$v-partman pg-lakehouse - #[ Featured & AM ]# - postgresql-$v-rdkit postgresql-$v-age pg-graphql pg-jsonschema postgresql-$v-jsquery postgresql-$v-pg-hint-plan postgresql-$v-hypopg postgresql-$v-pgq* postgresql-$v-periods postgresql-$v-hll postgresql-$v-rum postgresql-$v-preprepare - #[ Function & Test ]# - postgresql-$v-http pg-net postgresql-$v-extra-window-functions postgresql-$v-tdigest postgresql-$v-topn postgresql-$v-first-last-agg postgresql-$v-pgpcre postgresql-$v-icu-ext - #[ FDW & Compatible ]# - wrappers postgresql-$v-mysql-fdw postgresql-$v-ogr-fdw postgresql-$v-orafce postgresql-$v-tds-fdw postgresql-$v-oracle-fdw postgresql-$v-pgmemcache - #[ New Data Types ]# - postgresql-$v-prefix postgresql-$v-asn1oid postgresql-$v-numeral postgresql-$v-rational postgresql-$v-q3c postgresql-$v-pgsphere postgresql-$v-semver postgresql-$v-debversion postgresql-$v-pg-rrule postgresql-$v-pgmp postgresql-$v-roaringbitmap postgresql-$v-pgfaceting - #[ Program Language ]# - postgresql-$v-pllua postgresql-$v-pldebugger postgresql-$v-plpgsql-check postgresql-$v-plprofiler postgresql-$v-plsh postgresql-$v-omnidb postgresql-$v-unit postgresql-$v-pgtap # postgresql-$v-pljava postgresql-$v-plr - #[ Administration ]# - postgresql-$v-cron postgresql-$v-repack postgresql-$v-squeeze postgresql-$v-dirtyread pgdd-jammy-pg$v postgresql-$v-pgfincore postgresql-$v-pgl-ddl-deploy postgresql-$v-prioritize postgresql-$v-pg-checksums postgresql-$v-auto-failover postgresql-$v-pg-catcheck pgxnclient postgresql-filedump # postgresql-$v-pgpool2 - #[ Monitor & Stat ]# - postgresql-$v-show-plans postgresql-$v-pg-stat-kcache postgresql-$v-pg-qualstats postgresql-$v-pg-track-settings postgresql-$v-pg-wait-sampling postgresql-$v-bgw-replstatus postgresql-$v-powa postgresql-$v-toastinfo - #[ Security & Audit ]# - postgresql-$v-pgaudit postgresql-$v-pgauditlogtofile postgresql-$v-credcheck postgresql-$v-set-user postgresql-$v-tablelog postgresql-$v-snakeoil postgresql-$v-pgextwlist - #[ ETL, CDC, REPL ]# - postgresql-$v-pglogical* postgresql-$v-decoderbufs postgresql-$v-wal2json postgresql-$v-pg-failover-slots postgresql-$v-londiste-sql postgresql-$v-mimeo postgresql-$v-pg-fact-loader pgloader # postgresql-$v-repmgr postgresql-$v-slony1-2 + #pg_extensions: + # - timescaledb periods temporal_tables emaj table_version pg_cron pg_later pg_background pg_timetable #[TIME]# + # - postgis pgrouting pointcloud pg_h3 q3c ogr_fdw geoip mobilitydb #[GIS]# + # - pgvector pgvectorscale pg_vectorize pg_similarity pg_tiktoken pgml #[RAG]# + # - pg_search pg_bigm zhparser hunspell #[FTS]# + # - hydra pg_lakehouse duckdb_fdw pg_fkpart pg_partman plproxy #citus #[OLAP]# + # - age hll rum pg_graphql pg_jsonschema jsquery pg_hint_plan hypopg imgsmlr pg_ivm pgmq pgq rdkit #[FEAT]# + # - pg_tle plv8 pllua plprql pldebugger plpgsql_check plprofiler plsh pljava #pgtap plr #[LANG]# + # - prefix semver pgmp pguint pgunit roaringbitmap md5hash asn1oid numeral pg_rational pgsphere ip4r pg_rrule pgfaceting debversion #[TYPE]# #[FUNC]# #[ADMIN]# #[STAT]# #[SEC]# + # - pg_gzip pg_http topn pg_net pgjwt shacrypt pgsql_tweaks pg_extra_time count_distinct extra_window_functions first_last_agg tdigest pgpcre icu_ext pg_idkit pg_hashids pg_uuidv7 permuteseq + # - pg_repack pg_squeeze pg_dirtyread pgfincore pgdd ddlx pg_prioritize pg_checksums pg_readonly safeupdate pg_permissions pg_auto_failover pg_catcheck preprepare + # - pg_profile pg_show_plans pg_stat_kcache pg_stat_monitor pg_qualstats pg_store_plans pg_track_settings pg_wait_sampling system_stats bgw_replstatus pg_proctab pg_sqlog powa pgmeminfo toastinfo + # - passwordcheck supautils pgsodium pg_vault anonymizer pg_tde pgsmcrypto pgaudit pgauditlogtofile pg_auth_mon credcheck pgcryptokey pg_jobmon logerrors login_hook set_user tablelog pg_snakeoil pgextwlist + # - wrappers mysql_fdw sqlite_fdw tds_fdw #oracle_fdw #[FDW]# + # - mysqlcompat pgmemcache orafce pg_statement_rollback #pgtt babelfish #[SIM]# + # - pglogical pgl_ddl_deploy decoderbufs wal2json wal2mongo pg_failover_slots mimeo pg_fact_loader pg_bulkload #repmgr slony #[ETL]# + # - gis-stack rag-stack fdw-stack fts-stack etl-stack feat-stack olap-stack supa-stack stat-stack json-stack #[STACK]# + pg_libs: 'timescaledb, pg_stat_statements, auto_explain' # add timescaledb to shared_preload_libraries node_crontab: # make a full backup on monday 1am, and an incremental backup during weekdays - '00 01 * * 1 postgres /pg/bin/pg-backup full' @@ -566,40 +570,11 @@ all: dns_records: # dynamic dns records resolved by dnsmasq - 10.10.10.1 h.pigsty a.pigsty p.pigsty g.pigsty - repo_modules: infra,node,pgsql - repo_upstream: # where to download # - - { name: pigsty-local ,description: 'Pigsty Local' ,module: local ,releases: [11,12,20,22] ,baseurl: { default: 'http://${admin_ip}/pigsty ./' }} - - { name: pigsty-pgsql ,description: 'Pigsty PgSQL' ,module: pgsql ,releases: [11,12,20,22] ,baseurl: { default: 'https://repo.pigsty.io/apt/pgsql/ ${distro_codename} main', china: 'https://repo.pigsty.cc/apt/pgsql/ ${distro_codename} main' }} - - { name: pigsty-infra ,description: 'Pigsty Infra' ,module: infra ,releases: [11,12,20,22] ,baseurl: { default: 'https://repo.pigsty.io/apt/infra/amd64/ generic main', china: 'https://repo.pigsty.cc/apt/infra/amd64/ generic main' }} - - { name: nginx ,description: 'Nginx' ,module: infra ,releases: [11,12,20,22] ,baseurl: { default: 'http://nginx.org/packages/mainline/${distro_name} ${distro_codename} nginx' }} - - { name: base ,description: 'Debian Basic' ,module: node ,releases: [11,12 ] ,baseurl: { default: 'http://deb.debian.org/debian/ ${distro_codename} main non-free-firmware' ,china: 'https://mirrors.aliyun.com/debian/ ${distro_codename} main restricted universe multiverse' }} - - { name: updates ,description: 'Debian Updates' ,module: node ,releases: [11,12 ] ,baseurl: { default: 'http://deb.debian.org/debian/ ${distro_codename}-updates main non-free-firmware' ,china: 'https://mirrors.aliyun.com/debian/ ${distro_codename}-updates main restricted universe multiverse' }} - - { name: security ,description: 'Debian Security' ,module: node ,releases: [11,12 ] ,baseurl: { default: 'http://security.debian.org/debian-security ${distro_codename}-security main non-free-firmware' }} - - { name: base ,description: 'Ubuntu Basic' ,module: node ,releases: [ 20,22] ,baseurl: { default: 'https://mirrors.edge.kernel.org/${distro_name}/ ${distro_codename} main universe multiverse restricted' ,china: 'https://mirrors.aliyun.com/${distro_name}/ ${distro_codename} main restricted universe multiverse' }} - - { name: updates ,description: 'Ubuntu Updates' ,module: node ,releases: [ 20,22] ,baseurl: { default: 'https://mirrors.edge.kernel.org/ubuntu/ ${distro_codename}-backports main restricted universe multiverse' ,china: 'https://mirrors.aliyun.com/ubuntu/ ${distro_codename}-updates main restricted universe multiverse' }} - - { name: backports ,description: 'Ubuntu Backports' ,module: node ,releases: [ 20,22] ,baseurl: { default: 'https://mirrors.edge.kernel.org/ubuntu/ ${distro_codename}-security main restricted universe multiverse' ,china: 'https://mirrors.aliyun.com/ubuntu/ ${distro_codename}-backports main restricted universe multiverse' }} - - { name: security ,description: 'Ubuntu Security' ,module: node ,releases: [ 20,22] ,baseurl: { default: 'https://mirrors.edge.kernel.org/ubuntu/ ${distro_codename}-updates main restricted universe multiverse' ,china: 'https://mirrors.aliyun.com/ubuntu/ ${distro_codename}-security main restricted universe multiverse' }} - - { name: pgdg ,description: 'PGDG' ,module: pgsql ,releases: [11,12,20,22] ,baseurl: { default: 'http://apt.postgresql.org/pub/repos/apt/ ${distro_codename}-pgdg main' ,china: 'https://mirrors.tuna.tsinghua.edu.cn/postgresql/repos/apt/ ${distro_codename}-pgdg main' }} - - { name: citus ,description: 'Citus' ,module: pgsql ,releases: [11,12,20,22] ,baseurl: { default: 'https://packagecloud.io/citusdata/community/${distro_name}/ ${distro_codename} main' }} - - { name: timescaledb ,description: 'Timescaledb' ,module: pgsql ,releases: [11,12,20,22] ,baseurl: { default: 'https://packagecloud.io/timescale/timescaledb/${distro_name}/ ${distro_codename} main' }} - - { name: docker-ce ,description: 'Docker' ,module: infra ,releases: [11,12,20,22] ,baseurl: { default: 'https://download.docker.com/linux/${distro_name} ${distro_codename} stable' ,china: 'https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux//${distro_name} ${distro_codename} stable' }} - #- { name: grafana ,description: 'Grafana' ,module: infra ,releases: [11,12,20,22] ,baseurl: { default: 'https://apt.grafana.com stable main' ,china: 'https://mirrors.tuna.tsinghua.edu.cn/grafana/apt/ stable main' }} - #- { name: haproxy ,description: 'HAProxy Debian' ,module: node ,releases: [11,12 ] ,baseurl: { default: 'http://haproxy.debian.net ${distro_codename}-backports-2.9 main' }} - #- { name: haproxy ,description: 'HAProxy Ubuntu' ,module: node ,releases: [ 20,22] ,baseurl: { default: 'https://ppa.launchpadcontent.net/vbernat/haproxy-2.9/ubuntu/ ${distro_codename} main' }} - #- { name: redis ,description: 'Redis' ,module: redis ,releases: [11,12,20,22] ,baseurl: { default: 'https://packages.redis.io/deb ${distro_codename} main' }} - #- { name: pgml ,description: 'PostgresML' ,module: pgsql ,releases: [ 22] ,baseurl: { default: 'https://apt.postgresml.org ${distro_codename} main' }} - infra_packages: # packages to be installed on infra nodes - - grafana,loki,logcli,promtail,prometheus2,alertmanager,pushgateway,blackbox-exporter - - node-exporter,blackbox-exporter,nginx-exporter,redis-exporter,pg-exporter - - nginx,dnsmasq,ansible,etcd,python3-requests,redis,mcli #==========================================================# # NODE #==========================================================# node_conf: tiny # use small vm tune template - node_default_packages: # default node packages to be installed on ubuntu22 node (linux-perf,netcat-openbsd,tnftp) - - lz4,unzip,bzip2,zlib1g,pv,jq,git,ncdu,make,patch,bash,lsof,wget,uuid,tuned,nvme-cli,numactl,sysstat,iotop,htop,rsync,tcpdump,chrony,acl,python3,python3-pip - - socat,lrzsz,net-tools,ipvsadm,dnsutils,telnet,ca-certificates,openssl,openssh-client,libreadline-dev,vim-tiny,keepalived,node-exporter,etcd,haproxy # netcat,ftp node_timezone: Asia/Hong_Kong # use Asia/Hong_Kong Timezone node_dns_servers: # DNS servers in /etc/resolv.conf - 10.10.10.10 @@ -620,14 +595,7 @@ all: # PGSQL #==========================================================# pg_conf: tiny.yml - pg_dbsu_uid: 543 - pg_packages: # pg packages to be installed, `${pg_version}` & `$v` will be replaced - - postgresql-*-$v - - patroni pgbouncer pgbackrest pg-exporter pgbadger vip-manager - - postgresql-$v-repack postgresql-$v-wal2json - pg_extensions: # pg extensions to be installed, `$v` will be replaced - - postgresql-$v-postgis* timescaledb-2-postgresql-$v postgresql-$v-pgvector postgresql-$v-citus-12.1 - pgbackrest_method: minio # USE THE HA MINIO THROUGH A LOAD BALANCER + pgbackrest_method: local # USE THE HA MINIO THROUGH A LOAD BALANCER pg_dbsu_ssh_exchange: false # do not exchange dbsu ssh key among pgsql cluster pgbackrest_repo: # pgbackrest repo: https://pgbackrest.org/configuration.html#section-repository local: # default pgbackrest repo with local posix fs diff --git a/files/pigsty/prod.yml b/files/pigsty/prod.yml index fa1cdac5..35878805 100644 --- a/files/pigsty/prod.yml +++ b/files/pigsty/prod.yml @@ -3,7 +3,7 @@ # File : prod.yml # Desc : Pigsty config for a prod simulation env on a BM # Ctime : 2023-07-20 -# Mtime : 2024-07-01 +# Mtime : 2024-08-02 # Docs : https://pigsty.io/docs/setup/config/ # Author : Ruohang Feng (rh@vonng.com) # License : AGPLv3 @@ -127,19 +127,23 @@ all: - { name: noco ,owner: dbuser_noco ,revokeconn: true ,comment: nocodb database } pg_hba_rules: - { user: dbuser_view , db: all ,addr: infra ,auth: pwd ,title: 'allow grafana dashboard access cmdb from infra nodes' } - pg_extensions: # Global Installed Extensions - - postgis34_$v* timescaledb-2-postgresql-$v* pgvector_$v* # citus_$v* pglogical_$v* pg_cron_$v* - #[ GIS & Timeseries ]# - timescaledb-2-postgresql-$v* postgis34_$v* pgrouting_$v* pointcloud_$v* h3-pg_$v* ip4r_$v* # geoip_$v* - #[ Vector Search RAG ]# - pgvector_$v* pgvectorscale_$v pg_vectorize_$v pg_tiktoken_$v pgml_$v pg_search_$v pg_bigm_$v* zhparser_$v* - #[ OLAP & Sharding ]# - hydra_$v* duckdb_fdw_$v* parquet_s3_fdw_$v* pg_lakehouse_$v pg_tier_$v pg_fkpart_$v* pg_partman_$v* # citus_$v* plproxy_$v* # pg_strom_$v* - #[ Featured & AM ]# - apache-age_$v* pg_graphql_$v pg_jsonschema_$v jsquery_$v* pg_hint_plan_$v* hypopg_$v* pg_ivm_$v* pgmq_$v pgq_$v* pgtt_$v* temporal_tables_$v* e-maj_$v* periods_$v* table_version_$v* pg_statement_rollback_$v* hll_$v* rum_$v - #[ Function & Test ]# - pgjwt_$v* pg_idkit_$v pg_uuidv7_$v* pg_later_$v pg_background_$v* pgsql_gzip_$v* pgsql_http_$v* pg_net_$v* pgsql_tweaks_$v* count_distinct_$v* extra_window_functions_$v* tdigest_$v* pg_extra_time_$v* topn_$v* - #[ FDW & Compatible ]# - wrappers_$v mongo_fdw_$v* mysql_fdw_$v* ogr_fdw_$v* sqlite_fdw_$v* tds_fdw_$v* hdfs_fdw_$v* pgbouncer_fdw_$v* orafce_$v* pgmemcache_$v* pg_dbms_lock_$v* pg_dbms_metadata_$v* # pg_dbms_job_$v* mysqlcompat_$v* # multicorn2_$v* oracle_fdw_$v* db2_fdw_$v* - #[ Type, PL, Test ]# - prefix_$v* timestamp9_$v* semver_$v* pgmp_$v* pguint_$v* pg_roaringbitmap_$v* md5hash_$v* pg_tle_$v* plv8_$v* pllua_$v* luapgsql plprql_$v pldebugger_$v* plpgsql_check_$v* plprofiler_$v* plsh_$v* # plr_$v* # postgresql_faker_$v* # dbt2-pg$v-extensions* # postgresql-unit_$v* pgtap_$v* - #[ Administration ]# - pg_cron_$v* pg_repack_$v* pg_squeeze_$v* pg_dirtyread_$v* pgdd_$v pgfincore_$v* pgl_ddl_deploy_$v* pg_prioritize_$v* pg_readonly_$v* pgagent_$v* pg_checksums_$v* safeupdate_$v* ddlx_$v* pg_permissions_$v* pg_auto_failover_$v* pg_catcheck_$v* pgxnclient pg_filedump # pgpool-II-pg$v-extensions - #[ Monitor & Stat ]# - pg_profile_$v* pg_show_plans_$v* pg_stat_kcache_$v* pg_stat_monitor_$v* pg_qualstats_$v* pg_statviz_extension_$v pg_store_plans_$v* pg_top_$v* pg_track_settings_$v* pg_wait_sampling_$v* system_stats_$v* bgw_replstatus_$v* powa-archivist_$v* powa_$v* pgmeminfo_$v* # pgexporter_ext_$v* - #[ Security & Audit ]# - passwordcheck_cracklib_$v* pgsodium_$v* vault_$v* postgresql_anonymizer_$v* pg_tde_$v* pgsmcrypto_$v pgaudit_$v* pgauditlogtofile_$v* pg_auth_mon_$v* credcheck_$v* pgcryptokey_$v* pg_jobmon_$v* logerrors_$v* login_hook_$v* set_user_$v* - #[ ETL, CDC, REPL ]# - pglogical_$v* postgres-decoderbufs_$v* wal2json_$v* pg_failover_slots_$v* pg_fact_loader_$v* pg_bulkload_$v* pg_comparator_$v* pgimportdoc_$v* pgexportdoc_$v* pgcopydb pgloader # repmgr_$v* + #pg_extensions: + # - timescaledb periods temporal_tables emaj table_version pg_cron pg_later pg_background pg_timetable #[TIME]# + # - postgis pgrouting pointcloud pg_h3 q3c ogr_fdw geoip #[GIS]# + # - pgvector pgvectorscale pg_vectorize pg_similarity pg_tiktoken pgml #[RAG]# + # - pg_search pg_bigm zhparser hunspell #[FTS]# + # - hydra pg_lakehouse duckdb_fdw pg_fkpart pg_partman plproxy #citus pg_strom #[OLAP]# + # - age hll rum pg_graphql pg_jsonschema jsquery pg_hint_plan hypopg imgsmlr pg_ivm pgmq pgq #[FEAT]# + # - pg_tle plv8 pllua plprql pldebugger plpgsql_check plprofiler plsh pljava #plr faker pgtap #[LANG]# + # - prefix semver pgmp pguint pgunit roaringbitmap md5hash asn1oid numeral pg_rational ip4r pgsphere pgfaceting timestamp9 #[TYPE]# #[FUNC]# #[ADMIN]# #[STAT]# #[SEC]# + # - pg_gzip pg_http topn pg_net pgjwt shacrypt pgsql_tweaks pg_extra_time count_distinct extra_window_functions first_last_agg tdigest pgpcre icu_ext pg_idkit pg_hashids pg_uuidv7 permuteseq sequential_uuids + # - pg_repack pg_squeeze pg_dirtyread pgfincore pgdd ddlx pg_prioritize pg_checksums pg_readonly safeupdate pg_permissions pg_auto_failover preprepare pg_catcheck + # - pg_profile pg_show_plans pg_stat_kcache pg_stat_monitor pg_qualstats pg_store_plans pg_track_settings pg_wait_sampling system_stats bgw_replstatus pg_sqlog powa pgmeminfo toastinfo + # - passwordcheck supautils pgsodium pg_vault anonymizer pg_tde pgsmcrypto pgaudit pgauditlogtofile pg_auth_mon credcheck pgcryptokey pg_jobmon logerrors login_hook set_user tablelog pg_snakeoil pgextwlist + # - wrappers multicorn mongo_fdw mysql_fdw tds_fdw sqlite_fdw hdfs_fdw pgbouncer_fdw firebird_fdw #oracle_fdw db2_fdw #[FDW]# + # - mysqlcompat pgmemcache pgtt orafce pg_statement_rollback pg_dbms_lock pg_dbms_metadata #pg_dbms_job babelfish #[SIM]# + # - pglogical pgl_ddl_deploy decoderbufs wal2json wal2mongo pg_failover_slots mimeo pg_fact_loader pg_bulkload #repmgr slony #[ETL]# + # - gis-stack rag-stack fdw-stack fts-stack etl-stack feat-stack olap-stack supa-stack stat-stack json-stack #[STACK]# pg_libs: 'timescaledb, pg_stat_statements, auto_explain' # add timescaledb to shared_preload_libraries node_crontab: # make a full backup on monday 1am, and an incremental backup during weekdays @@ -586,7 +590,6 @@ all: - "https://mirror.baidubce.com" node_admin_ssh_exchange: false # exchange admin ssh key among node cluster - #==========================================================# # PGSQL #==========================================================# diff --git a/files/pigsty/public.yml b/files/pigsty/public.yml index 52fe4bac..33eb8d63 100644 --- a/files/pigsty/public.yml +++ b/files/pigsty/public.yml @@ -61,18 +61,22 @@ all: - { name: odoo ,owner: dbuser_odoo ,revokeconn: true ,comment: nocodb database } pg_libs: 'timescaledb, pg_stat_statements, auto_explain' # add timescaledb to shared_preload_libraries pg_extensions: # extensions to be installed on this cluster - - postgis34_$v* timescaledb-2-postgresql-$v* pgvector_$v* # default extensions to be installed - - timescaledb-2-postgresql-$v* postgis34_$v* pgrouting_$v* pointcloud_$v* h3-pg_$v* ip4r_$v* # geoip_$v* - - pgvector_$v* pgvectorscale_$v pg_vectorize_$v pg_tiktoken_$v pgml_$v pg_search_$v pg_bigm_$v* zhparser_$v* - - hydra_$v* duckdb_fdw_$v* parquet_s3_fdw_$v* pg_lakehouse_$v pg_tier_$v pg_fkpart_$v* pg_partman_$v* # citus_$v* plproxy_$v* # pg_strom_$v* - - apache-age_$v* pg_graphql_$v pg_jsonschema_$v jsquery_$v* pg_hint_plan_$v* hypopg_$v* pg_ivm_$v* pgmq_$v pgq_$v* pgtt_$v* temporal_tables_$v* e-maj_$v* periods_$v* table_version_$v* pg_statement_rollback_$v* hll_$v* rum_$v - - pgjwt_$v* pg_idkit_$v pg_uuidv7_$v* pg_later_$v pg_background_$v* pgsql_gzip_$v* pgsql_http_$v* pg_net_$v* pgsql_tweaks_$v* count_distinct_$v* extra_window_functions_$v* tdigest_$v* pg_extra_time_$v* topn_$v* - - wrappers_$v mongo_fdw_$v* mysql_fdw_$v* ogr_fdw_$v* sqlite_fdw_$v* tds_fdw_$v* hdfs_fdw_$v* pgbouncer_fdw_$v* orafce_$v* pgmemcache_$v* pg_dbms_lock_$v* pg_dbms_metadata_$v* # pg_dbms_job_$v* mysqlcompat_$v* # multicorn2_$v* oracle_fdw_$v* db2_fdw_$v* - - prefix_$v* timestamp9_$v* semver_$v* pgmp_$v* pguint_$v* pg_roaringbitmap_$v* md5hash_$v* pg_tle_$v* plv8_$v* pllua_$v* luapgsql plprql_$v pldebugger_$v* plpgsql_check_$v* plprofiler_$v* plsh_$v* # plr_$v* # postgresql_faker_$v* # dbt2-pg$v-extensions* # postgresql-unit_$v* pgtap_$v* - - pg_cron_$v* pg_repack_$v* pg_squeeze_$v* pg_dirtyread_$v* pgdd_$v pgfincore_$v* pgl_ddl_deploy_$v* pg_prioritize_$v* pg_readonly_$v* pgagent_$v* pg_checksums_$v* safeupdate_$v* ddlx_$v* pg_permissions_$v* pg_auto_failover_$v* pg_catcheck_$v* pgxnclient pg_filedump # pgpool-II-pg$v-extensions - - pg_profile_$v* pg_show_plans_$v* pg_stat_kcache_$v* pg_stat_monitor_$v* pg_qualstats_$v* pg_statviz_extension_$v pg_store_plans_$v* pg_top_$v* pg_track_settings_$v* pg_wait_sampling_$v* system_stats_$v* bgw_replstatus_$v* powa-archivist_$v* powa_$v* pgmeminfo_$v* # pgexporter_ext_$v* - - passwordcheck_cracklib_$v* pgsodium_$v* vault_$v* postgresql_anonymizer_$v* pg_tde_$v* pgsmcrypto_$v pgaudit_$v* pgauditlogtofile_$v* pg_auth_mon_$v* credcheck_$v* pgcryptokey_$v* pg_jobmon_$v* logerrors_$v* login_hook_$v* set_user_$v* - - pglogical_$v* postgres-decoderbufs_$v* wal2json_$v* pg_failover_slots_$v* pg_fact_loader_$v* pg_bulkload_$v* pg_comparator_$v* pgimportdoc_$v* pgexportdoc_$v* pgcopydb pgloader # repmgr_$v* + - timescaledb periods temporal_tables emaj table_version pg_cron pg_later pg_background pg_timetable #[TIME]# + - postgis pgrouting pointcloud pg_h3 q3c ogr_fdw geoip #[GIS]# + - pgvector pgvectorscale pg_vectorize pg_similarity pg_tiktoken pgml #[RAG]# + - pg_search pg_bigm zhparser hunspell #[FTS]# + - hydra pg_lakehouse duckdb_fdw pg_fkpart pg_partman plproxy #citus pg_strom #[OLAP]# + - age hll rum pg_graphql pg_jsonschema jsquery pg_hint_plan hypopg imgsmlr pg_ivm pgmq pgq #[FEAT]# + - pg_tle plv8 pllua plprql pldebugger plpgsql_check plprofiler plsh pljava #plr faker pgtap #[LANG]# + - prefix semver pgmp pguint pgunit roaringbitmap md5hash asn1oid numeral pg_rational ip4r pgsphere pgfaceting timestamp9 #[TYPE]# #[FUNC]# #[ADMIN]# #[STAT]# #[SEC]# + - pg_gzip pg_http topn pg_net pgjwt shacrypt pgsql_tweaks pg_extra_time count_distinct extra_window_functions first_last_agg tdigest pgpcre icu_ext pg_idkit pg_hashids pg_uuidv7 permuteseq sequential_uuids + - pg_repack pg_squeeze pg_dirtyread pgfincore pgdd ddlx pg_prioritize pg_checksums pg_readonly safeupdate pg_permissions pg_auto_failover preprepare pg_catcheck + - pg_profile pg_show_plans pg_stat_kcache pg_stat_monitor pg_qualstats pg_store_plans pg_track_settings pg_wait_sampling system_stats bgw_replstatus pg_sqlog powa pgmeminfo toastinfo + - passwordcheck supautils pgsodium pg_vault anonymizer pg_tde pgsmcrypto pgaudit pgauditlogtofile pg_auth_mon credcheck pgcryptokey pg_jobmon logerrors login_hook set_user tablelog pg_snakeoil pgextwlist + - wrappers multicorn mongo_fdw mysql_fdw tds_fdw sqlite_fdw hdfs_fdw pgbouncer_fdw firebird_fdw #oracle_fdw db2_fdw #[FDW]# + - mysqlcompat pgmemcache pgtt orafce pg_statement_rollback pg_dbms_lock pg_dbms_metadata #pg_dbms_job babelfish #[SIM]# + - pglogical pgl_ddl_deploy decoderbufs wal2json wal2mongo pg_failover_slots mimeo pg_fact_loader pg_bulkload #repmgr slony #[ETL]# + - gis-stack rag-stack fdw-stack fts-stack etl-stack feat-stack olap-stack supa-stack stat-stack json-stack #[STACK]# #[ Predefined Stacks ]# redis-ms: # redis classic primary & replica hosts: { 10.10.10.10: { redis_node: 1 , redis_instances: { 6379: { }, 6380: { replica_of: '10.10.10.10 6379' } } } } diff --git a/files/pigsty/rpm.yml b/files/pigsty/rpm.yml index 5eff9b7e..a3b73b92 100644 --- a/files/pigsty/rpm.yml +++ b/files/pigsty/rpm.yml @@ -3,7 +3,7 @@ # File : rpm.yml # Desc : Pigsty building environment for EL 7-9 # Ctime : 2022-10-12 -# Mtime : 2024-07-08 +# Mtime : 2024-08-02 # Docs : https://pigsty.io/docs/setup/config/ # Author : Ruohang Feng (rh@vonng.com) # License : AGPLv3 @@ -106,18 +106,22 @@ all: #- postgresql17-17 postgresql17-server-17 postgresql17-libs-17 postgresql17-contrib-17 postgresql17-devel-17 postgresql17-plperl-17 postgresql17-plpython3-17 postgresql17-pltcl-17 postgresql17-test-17 # postgresql17-llvmjit-17 postgresql17-docs-17 pg_extensions: # citus & hydra are exclusive - - timescaledb postgis pgrouting pointcloud h3 ip4r # geoip #[ GIS & Timeseries ]# - - pgvector pgvectorscale vectorize pg_tiktoken pgml pg_search pg_bigm zhparser #[ Vector Search RAG ]# - - hydra duckdb_fdw parquet_s3_fdw pg_lakehouse pg_tier pg_fkpart pg_partman # citus plproxy pg_strom #[ OLAP & Sharding ]# - - age pg_graphql pg_jsonschema jsquery pg_hint_plan hypopg pg_ivm pgmq pgq pgtt temporal_tables emaj periods pg_statement_rollback hll rum table_version #[ Featured & AM ]# - - pgjwt pg_idkit pg_uuidv7 pg_later pg_background gzip http pg_net pgsql_tweaks count_distinct extra_window_functions tdigest pg_extra_time topn # mysqlcompat #[ Function & Test ]# - - wrappers mongo_fdw multicorn2 mysql_fdw ogr_fdw sqlite_fdw tds_fdw hdfs_fdw pgbouncer_fdw orafce pgmemcache pg_dbms_lock pg_dbms_metadata # oracle_fdw db2_fdw pg_dbms_job #[ FDW & Compatible ]# - - prefix timestamp9 semver pgmp uint roaringbitmap md5hash pg_tle plv8 pllua luapgsql plprql pldebugger plpgsql_check plprofiler plsh faker # pljava plr dbt2 pgtap #[ Type, PL, Test ]# - - pg_repack pg_cron pg_squeeze pg_dirtyread pgdd pgfincore pgl_ddl_deploy pg_prioritize pg_readonly pgagent pg_checksums safeupdate ddlx pg_permissions pg_auto_failover pg_catcheck #[ Administration ]# - - pg_profile pg_show_plans pg_stat_kcache pg_stat_monitor pg_qualstats pg_statviz pg_store_plans pg_top pg_track_settings pg_wait_sampling system_stats bgw_replstatus powa pgmeminfo #[ Monitor & Stat ]# - - passwordcheck_cracklib pgsodium vault anon pg_tde pgsmcrypto pgaudit pgauditlogtofile pg_auth_mon credcheck pgcryptokey pg_jobmon logerrors login_hook set_user filedump #[ Security & Audit ]# - - pglogical decoderbufs wal2json wal2mongo pg_failover_slots pg_fact_loader pg_bulkload pg_comparator pgimportdoc pgexportdoc pgcopydb pgloader # repmgr pgpool pgexporter_ext #[ ETL, CDC, REPL ]# - - gis-stack rag-stack fdw-stack etl-stack olap-stack supa-stack stat-stack json-stack test-stack #[ Predefined Stacks ]# + - timescaledb periods temporal_tables emaj table_version pg_cron pg_later pg_background pg_timetable #[TIME]# + - postgis pgrouting pointcloud pg_h3 q3c ogr_fdw geoip #[GIS]# + - pgvector pgvectorscale pg_vectorize pg_similarity pg_tiktoken pgml #[RAG]# + - pg_search pg_bigm zhparser hunspell #[FTS]# + - hydra pg_lakehouse duckdb_fdw pg_fkpart pg_partman plproxy #citus pg_strom #[OLAP]# + - age hll rum pg_graphql pg_jsonschema jsquery pg_hint_plan hypopg imgsmlr pg_ivm pgmq pgq #[FEAT]# + - pg_tle plv8 pllua plprql pldebugger plpgsql_check plprofiler plsh #pljava plr faker pgtap #[LANG]# + - prefix semver pgmp pguint pgunit roaringbitmap md5hash asn1oid numeral pg_rational ip4r pgsphere pgfaceting timestamp9 #[TYPE]# #[FUNC]# #[ADMIN]# #[STAT]# #[SEC]# + - pg_gzip pg_http topn pg_net pgjwt shacrypt pgsql_tweaks pg_extra_time count_distinct extra_window_functions first_last_agg tdigest pgpcre icu_ext pg_idkit pg_hashids pg_uuidv7 permuteseq #sequential_uuids + - pg_repack pg_squeeze pg_dirtyread pgfincore pgdd ddlx pg_prioritize pg_checksums pg_readonly safeupdate pg_permissions pg_auto_failover preprepare pg_catcheck + - pg_profile pg_show_plans pg_stat_kcache pg_stat_monitor pg_qualstats pg_store_plans pg_track_settings pg_wait_sampling system_stats bgw_replstatus pg_sqlog powa pgmeminfo toastinfo + - passwordcheck supautils pgsodium pg_vault anonymizer pg_tde pgsmcrypto pgaudit pgauditlogtofile pg_auth_mon credcheck pgcryptokey pg_jobmon logerrors login_hook set_user tablelog pg_snakeoil pgextwlist + - wrappers multicorn mongo_fdw mysql_fdw tds_fdw sqlite_fdw hdfs_fdw pgbouncer_fdw #oracle_fdw db2_fdw firebird_fdw #[FDW]# + - mysqlcompat pgmemcache pgtt orafce pg_statement_rollback pg_dbms_lock pg_dbms_metadata #pg_dbms_job babelfish #[SIM]# + - pglogical pgl_ddl_deploy decoderbufs wal2json wal2mongo pg_failover_slots mimeo pg_fact_loader pg_bulkload #repmgr slony #[ETL]# + - gis-stack rag-stack fdw-stack fts-stack etl-stack feat-stack olap-stack supa-stack stat-stack json-stack #[STACK]# #[ Predefined Stacks ]# #----------------------------------# # build el9 packages on Rocky 9.1 @@ -148,18 +152,23 @@ all: #- postgresql17-17 postgresql17-server-17 postgresql17-libs-17 postgresql17-contrib-17 postgresql17-devel-17 postgresql17-plperl-17 postgresql17-plpython3-17 postgresql17-pltcl-17 postgresql17-test-17 # postgresql17-llvmjit-17 postgresql17-docs-17 pg_extensions: # citus & hydra are exclusive - - timescaledb postgis pgrouting pointcloud h3 ip4r # geoip #[ GIS & Timeseries ]# - - pgvector pgvectorscale vectorize pg_tiktoken pgml pg_search pg_bigm zhparser #[ Vector Search RAG ]# - - hydra duckdb_fdw parquet_s3_fdw pg_lakehouse pg_tier pg_fkpart pg_partman # citus plproxy pg_strom #[ OLAP & Sharding ]# - - age pg_graphql pg_jsonschema jsquery pg_hint_plan hypopg pg_ivm pgmq pgq pgtt temporal_tables emaj periods pg_statement_rollback hll rum # table_version #[ Featured & AM ]# - - pgjwt pg_idkit pg_uuidv7 pg_later pg_background gzip http pg_net pgsql_tweaks count_distinct extra_window_functions tdigest pg_extra_time topn sequential_uuids # mysqlcompat #[ Function & Test ]# - - wrappers mongo_fdw multicorn2 mysql_fdw ogr_fdw sqlite_fdw tds_fdw hdfs_fdw pgbouncer_fdw orafce pgmemcache pg_dbms_lock pg_dbms_metadata pg_dbms_job firebird_fdw # oracle_fdw db2_fdw #[ FDW & Compatible ]# - - prefix timestamp9 semver pgmp uint roaringbitmap md5hash pg_tle plv8 pllua luapgsql plprql pldebugger plpgsql_check plprofiler plsh faker pgtap # pljava plr dbt2 #[ Type, PL, Test ]# - - pg_repack pg_cron pg_squeeze pg_dirtyread pgdd pgfincore pgl_ddl_deploy pg_prioritize pg_readonly pgagent pg_checksums safeupdate ddlx pg_permissions pg_auto_failover pg_catcheck #[ Administration ]# - - pg_profile pg_show_plans pg_stat_kcache pg_stat_monitor pg_qualstats pg_statviz pg_store_plans pg_top pg_track_settings pg_wait_sampling system_stats bgw_replstatus powa pgmeminfo #[ Monitor & Stat ]# - - passwordcheck_cracklib pgsodium vault anon pg_tde pgsmcrypto pgaudit pgauditlogtofile pg_auth_mon credcheck pgcryptokey pg_jobmon logerrors login_hook set_user filedump #[ Security & Audit ]# - - pglogical decoderbufs wal2json wal2mongo pg_failover_slots pg_fact_loader pg_bulkload pg_comparator pgimportdoc pgexportdoc pgcopydb pgloader # repmgr pgpool pgexporter_ext #[ ETL, CDC, REPL ]# - - gis-stack rag-stack fdw-stack etl-stack olap-stack supa-stack stat-stack json-stack test-stack #[ Predefined Stacks ]# + - timescaledb periods temporal_tables emaj table_version pg_cron pg_later pg_background pg_timetable #[TIME]# + - postgis pgrouting pointcloud pg_h3 q3c ogr_fdw geoip #[GIS]# + - pgvector pgvectorscale pg_vectorize pg_similarity pg_tiktoken pgml #[RAG]# + - pg_search pg_bigm zhparser hunspell #[FTS]# + - hydra pg_lakehouse duckdb_fdw pg_fkpart pg_partman plproxy #citus pg_strom #[OLAP]# + - age hll rum pg_graphql pg_jsonschema jsquery pg_hint_plan hypopg imgsmlr pg_ivm pgmq pgq #[FEAT]# + - pg_tle plv8 pllua plprql pldebugger plpgsql_check plprofiler plsh pljava #plr faker pgtap #[LANG]# + - prefix semver pgmp pguint pgunit roaringbitmap md5hash asn1oid numeral pg_rational ip4r pgsphere pgfaceting timestamp9 #[TYPE]# #[FUNC]# #[ADMIN]# #[STAT]# #[SEC]# + - pg_gzip pg_http topn pg_net pgjwt shacrypt pgsql_tweaks pg_extra_time count_distinct extra_window_functions first_last_agg tdigest pgpcre icu_ext pg_idkit pg_hashids pg_uuidv7 permuteseq sequential_uuids + - pg_repack pg_squeeze pg_dirtyread pgfincore pgdd ddlx pg_prioritize pg_checksums pg_readonly safeupdate pg_permissions pg_auto_failover preprepare pg_catcheck + - pg_profile pg_show_plans pg_stat_kcache pg_stat_monitor pg_qualstats pg_store_plans pg_track_settings pg_wait_sampling system_stats bgw_replstatus pg_sqlog powa pgmeminfo toastinfo + - passwordcheck supautils pgsodium pg_vault anonymizer pg_tde pgsmcrypto pgaudit pgauditlogtofile pg_auth_mon credcheck pgcryptokey pg_jobmon logerrors login_hook set_user tablelog pg_snakeoil pgextwlist + - wrappers multicorn mongo_fdw mysql_fdw tds_fdw sqlite_fdw hdfs_fdw pgbouncer_fdw firebird_fdw #oracle_fdw db2_fdw #[FDW]# + - mysqlcompat pgmemcache pgtt orafce pg_statement_rollback pg_dbms_lock pg_dbms_metadata #pg_dbms_job babelfish #[SIM]# + - pglogical pgl_ddl_deploy decoderbufs wal2json wal2mongo pg_failover_slots mimeo pg_fact_loader pg_bulkload #repmgr slony #[ETL]# + - gis-stack rag-stack fdw-stack fts-stack etl-stack feat-stack olap-stack supa-stack stat-stack json-stack #[STACK]# + #[ Predefined Stacks ]# #----------------------------------# # Validating on compatible distros diff --git a/files/pigsty/supabase.yml b/files/pigsty/supabase.yml index 02f763fc..63ebe0c1 100644 --- a/files/pigsty/supabase.yml +++ b/files/pigsty/supabase.yml @@ -1,9 +1,9 @@ --- #==============================================================# # File : supabase.yml -# Desc : Pigsty 1 node installation for supabase (el8/el9) +# Desc : Pigsty 1 node installation for supabase # Ctime : 2020-05-22 -# Mtime : 2024-07-08 +# Mtime : 2024-08-02 # Docs : https://pigsty.io/docs/setup/config/ # Author : Ruohang Feng (rh@vonng.com) # License : AGPLv3 @@ -58,23 +58,24 @@ all: schemas: [ extensions ,auth ,realtime ,storage ,graphql_public ,supabase_functions ,_analytics ,_realtime ] extensions: - { name: pgcrypto ,schema: extensions } # 1.3 : cryptographic functions - - { name: pg_net ,schema: extensions } # 0.9.1 : async HTTP + - { name: pg_net ,schema: extensions } # 0.9.2 : async HTTP - { name: pgjwt ,schema: extensions } # 0.2.0 : json web token API for postgres - { name: uuid-ossp ,schema: extensions } # 1.1 : generate universally unique identifiers (UUIDs) - { name: pgsodium } # 3.1.9 : pgsodium is a modern cryptography library for Postgres. - { name: supabase_vault } # 0.2.8 : Supabase Vault Extension - - { name: pg_graphql } # 1.5.6 : pg_graphql: GraphQL support + - { name: pg_graphql } # 1.5.7 : pg_graphql: GraphQL support - { name: pg_jsonschema } # 0.3.1 : pg_jsonschema: Validate json schema - - { name: wrappers } # 0.3.1 : wrappers: FDW collections + - { name: wrappers } # 0.4.1 : wrappers: FDW collections - { name: http } # 1.6 : http: allows web page retrieval inside the database. # supabase required extensions pg_libs: 'pg_net, pg_cron, pg_stat_statements, auto_explain' # add pg_net to shared_preload_libraries pg_extensions: [ 'supa-stack' ] # - pg_repack wal2json pgvector pg_cron pg_sodium pg_graphql pg_jsonschema wrappers vault pgjwt pg_net pgsql_http - - # supabase hba rules, require access from docker network - pg_hba_rules: + pg_parameters: + cron.database: supa + pgsodium.enable_event_trigger: off + pg_hba_rules: # supabase hba rules, require access from docker network - { user: all ,db: supa ,addr: intra ,auth: pwd ,title: 'allow supa database access from intranet' } - { user: all ,db: supa ,addr: 172.0.0.0/8 ,auth: pwd ,title: 'allow supa database access from docker network'} - { user: all ,db: supa ,addr: all ,auth: pwd ,title: 'allow supa database access from entire world' } # not safe! diff --git a/files/pigsty/ubuntu22.yml b/files/pigsty/ubuntu22.yml index 5485851e..d58f0e42 100644 --- a/files/pigsty/ubuntu22.yml +++ b/files/pigsty/ubuntu22.yml @@ -3,7 +3,7 @@ # File : ubuntu22.yml # Desc : Pigsty auto generated config for ubuntu 22.04 # Ctime : 2020-05-22 -# Mtime : 2024-07-31 +# Mtime : 2024-08-02 # Docs : https://pigsty.io/docs/setup/config/ # Author : Ruohang Feng (rh@vonng.com) # License : AGPLv3 @@ -220,8 +220,7 @@ all: #----------------------------------# # PostgreSQL Packages & Extensions #----------------------------------# - # check available alias mapping: roles/pgsql/vars/pg_packages_map.yml - # https://github.com/Vonng/pigsty/blob/master/roles/pgsql/vars/pg_package_map.yml + # available deb & alias: https://github.com/Vonng/pigsty/blob/master/roles/node_id/vars/deb.yml pg_packages: # pg packages to be installed, alias can be used - postgresql - patroni pgbouncer pgbackrest pg_exporter pgbadger vip-manager wal2json pg_repack