Skip to content

Commit 9fc8304

Browse files
committed
source other infra for pydotorg
1 parent d85fe09 commit 9fc8304

3 files changed

Lines changed: 174 additions & 0 deletions

File tree

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
apiVersion: postgresql.cnpg.io/v1
2+
kind: Cluster
3+
metadata:
4+
name: psf-pythondotorg-pythondotorg
5+
namespace: postgres
6+
spec:
7+
instances: 2
8+
imageName: ghcr.io/cloudnative-pg/postgresql:15.8-bookworm
9+
10+
bootstrap:
11+
initdb:
12+
database: app
13+
encoding: UTF8
14+
localeCType: C
15+
localeCollate: C
16+
owner: app
17+
18+
certificates:
19+
serverCASecret: operators-ca-crt
20+
serverTLSSecret: psf-pythondotorg-pythondotorg-tls
21+
22+
storage:
23+
resizeInUseVolumes: true
24+
size: 32Gi
25+
26+
postgresql:
27+
parameters:
28+
archive_mode: "on"
29+
archive_timeout: 5min
30+
dynamic_shared_memory_type: posix
31+
full_page_writes: "on"
32+
log_destination: csvlog
33+
log_directory: /controller/log
34+
log_filename: postgres
35+
log_rotation_age: "0"
36+
log_rotation_size: "0"
37+
log_truncate_on_rotation: "false"
38+
logging_collector: "on"
39+
max_connections: "500"
40+
max_parallel_workers: "32"
41+
max_replication_slots: "32"
42+
max_worker_processes: "32"
43+
shared_buffers: 512MB
44+
shared_memory_type: mmap
45+
shared_preload_libraries: ""
46+
ssl_max_protocol_version: TLSv1.3
47+
ssl_min_protocol_version: TLSv1.3
48+
wal_keep_size: 512MB
49+
wal_level: logical
50+
wal_log_hints: "on"
51+
wal_receiver_timeout: 5s
52+
wal_sender_timeout: 5s
53+
syncReplicaElectionConstraint:
54+
enabled: false
55+
56+
backup:
57+
target: primary
58+
retentionPolicy: 31d
59+
barmanObjectStore:
60+
destinationPath: s3://cnpg-backup/postgres/psf-pythondotorg-pythondotorg
61+
endpointURL: https://minio-api.us-east-2.psfhosted.computer
62+
s3Credentials:
63+
accessKeyId:
64+
key: ACCESS_KEY_ID
65+
name: minio-creds
66+
secretAccessKey:
67+
key: ACCESS_SECRET_KEY
68+
name: minio-creds
69+
wal:
70+
compression: gzip
71+
72+
replicationSlots:
73+
highAvailability:
74+
enabled: true
75+
slotPrefix: _cnpg_
76+
synchronizeReplicas:
77+
enabled: true
78+
updateInterval: 30
79+
80+
primaryUpdateMethod: switchover
81+
primaryUpdateStrategy: unsupervised
82+
enablePDB: true
83+
enableSuperuserAccess: true
84+
85+
affinity:
86+
podAntiAffinityType: preferred
87+
88+
monitoring:
89+
customQueriesConfigMap:
90+
- key: queries
91+
name: cnpg-default-monitoring
92+
disableDefaultQueries: false
93+
enablePodMonitor: false
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
apiVersion: elasticsearch.k8s.elastic.co/v1
2+
kind: Elasticsearch
3+
metadata:
4+
name: psf-pythondotorg-pythondotorg
5+
namespace: elasticsearch
6+
spec:
7+
version: 8.15.1
8+
9+
http:
10+
tls:
11+
certificate:
12+
secretName: psf-pythondotorg-pythondotorg-tls
13+
14+
transport:
15+
tls:
16+
certificateAuthorities:
17+
configMapName: operators-ca-crt
18+
19+
nodeSets:
20+
- name: default
21+
count: 1
22+
config:
23+
node.store.allow_mmap: false
24+
volumeClaimTemplates:
25+
- metadata:
26+
name: elasticsearch-data
27+
spec:
28+
accessModes:
29+
- ReadWriteOnce
30+
resources:
31+
requests:
32+
storage: 2Gi

infra/k8s/redis-pythondotorg.yaml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
apiVersion: redis.redis.opstreelabs.in/v1beta2
2+
kind: Redis
3+
metadata:
4+
name: psf-pythondotorg-pythondotorg
5+
namespace: redis
6+
spec:
7+
kubernetesConfig:
8+
image: quay.io/opstree/redis:v7.0.15
9+
imagePullPolicy: IfNotPresent
10+
redisSecret:
11+
key: password
12+
name: psf-pythondotorg-pythondotorg-password
13+
resources:
14+
limits:
15+
cpu: 100m
16+
memory: 128Mi
17+
requests:
18+
cpu: 100m
19+
memory: 128Mi
20+
21+
TLS:
22+
secret:
23+
optional: false
24+
secretName: psf-pythondotorg-pythondotorg-tls
25+
26+
storage:
27+
volumeClaimTemplate:
28+
spec:
29+
accessModes:
30+
- ReadWriteOnce
31+
resources:
32+
requests:
33+
storage: 1Gi
34+
35+
securityContext:
36+
runAsUser: 1000
37+
38+
redisExporter:
39+
enabled: false
40+
image: quay.io/opstree/redis-exporter:v1.44.0
41+
imagePullPolicy: Always
42+
port: 9121
43+
resources:
44+
limits:
45+
cpu: 100m
46+
memory: 256Mi
47+
requests:
48+
cpu: 100m
49+
memory: 256Mi

0 commit comments

Comments
 (0)