Adding appsmith dehydrated from helm
This commit is contained in:
parent
f102c3132b
commit
0ebb42731f
27 changed files with 1630 additions and 0 deletions
19
apps-kustomized/appsmith/configmap-appsmith-appsmith.yaml
Normal file
19
apps-kustomized/appsmith/configmap-appsmith-appsmith.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
APPSMITH_DB_URL: |
|
||||||
|
mongodb+srv://root:password@appsmith-mongodb.appsmith.svc.cluster.local/appsmith?retryWrites=true&authSource=admin&ssl=false
|
||||||
|
APPSMITH_DISABLE_IFRAME_WIDGET_SANDBOX: "false"
|
||||||
|
APPSMITH_KEYCLOAK_DB_DRIVER: postgresql
|
||||||
|
APPSMITH_KEYCLOAK_DB_PASSWORD: password
|
||||||
|
APPSMITH_KEYCLOAK_DB_URL: appsmith-postgresql.appsmith.svc.cluster.local:5432/keycloak
|
||||||
|
APPSMITH_KEYCLOAK_DB_USERNAME: root
|
||||||
|
APPSMITH_REDIS_URL: redis://appsmith-redis-master.appsmith.svc.cluster.local:6379
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: appsmith
|
||||||
|
appsmith.sh/chart: appsmith-3.6.4
|
||||||
|
name: appsmith-appsmith
|
||||||
|
namespace: appsmith
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
ping-mongodb.sh: |
|
||||||
|
#!/bin/bash
|
||||||
|
mongosh $TLS_OPTIONS --port $MONGODB_PORT_NUMBER --eval "db.adminCommand('ping')"
|
||||||
|
readiness-probe.sh: |
|
||||||
|
#!/bin/bash
|
||||||
|
# Run the proper check depending on the version
|
||||||
|
[[ $(mongod -version | grep "db version") =~ ([0-9]+\.[0-9]+\.[0-9]+) ]] && VERSION=${BASH_REMATCH[1]}
|
||||||
|
. /opt/bitnami/scripts/libversion.sh
|
||||||
|
VERSION_MAJOR="$(get_sematic_version "$VERSION" 1)"
|
||||||
|
VERSION_MINOR="$(get_sematic_version "$VERSION" 2)"
|
||||||
|
VERSION_PATCH="$(get_sematic_version "$VERSION" 3)"
|
||||||
|
if [[ "$VERSION_MAJOR" -ge 5 ]] || [[ "$VERSION_MAJOR" -ge 4 ]] && [[ "$VERSION_MINOR" -ge 4 ]] && [[ "$VERSION_PATCH" -ge 2 ]]; then
|
||||||
|
mongosh $TLS_OPTIONS --port $MONGODB_PORT_NUMBER --eval 'db.hello().isWritablePrimary || db.hello().secondary' | grep -q 'true'
|
||||||
|
else
|
||||||
|
mongosh $TLS_OPTIONS --port $MONGODB_PORT_NUMBER --eval 'db.isMaster().ismaster || db.isMaster().secondary' | grep -q 'true'
|
||||||
|
fi
|
||||||
|
startup-probe.sh: |
|
||||||
|
#!/bin/bash
|
||||||
|
mongosh $TLS_OPTIONS --port $MONGODB_PORT_NUMBER --eval 'db.hello().isWritablePrimary || db.hello().secondary' | grep -q 'true'
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: mongodb
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
helm.sh/chart: mongodb-12.1.16
|
||||||
|
name: appsmith-mongodb-common-scripts
|
||||||
|
namespace: appsmith
|
||||||
|
|
@ -0,0 +1,93 @@
|
||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
setup-hidden.sh: |-
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
. /opt/bitnami/scripts/mongodb-env.sh
|
||||||
|
|
||||||
|
echo "Advertised Hostname: $MONGODB_ADVERTISED_HOSTNAME"
|
||||||
|
echo "Advertised Port: $MONGODB_ADVERTISED_PORT_NUMBER"
|
||||||
|
echo "Configuring node as a hidden node"
|
||||||
|
export MONGODB_REPLICA_SET_MODE="hidden"
|
||||||
|
export MONGODB_INITIAL_PRIMARY_ROOT_USER="$MONGODB_ROOT_USER"
|
||||||
|
export MONGODB_INITIAL_PRIMARY_ROOT_PASSWORD="$MONGODB_ROOT_PASSWORD"
|
||||||
|
export MONGODB_INITIAL_PRIMARY_PORT_NUMBER="$MONGODB_PORT_NUMBER"
|
||||||
|
export MONGODB_ROOT_PASSWORD=""
|
||||||
|
export MONGODB_EXTRA_USERNAMES=""
|
||||||
|
export MONGODB_EXTRA_DATABASES=""
|
||||||
|
export MONGODB_EXTRA_PASSWORDS=""
|
||||||
|
export MONGODB_ROOT_PASSWORD_FILE=""
|
||||||
|
export MONGODB_EXTRA_USERNAMES_FILE=""
|
||||||
|
export MONGODB_EXTRA_DATABASES_FILE=""
|
||||||
|
export MONGODB_EXTRA_PASSWORDS_FILE=""
|
||||||
|
exec /opt/bitnami/scripts/mongodb/entrypoint.sh /opt/bitnami/scripts/mongodb/run.sh
|
||||||
|
setup.sh: |-
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
. /opt/bitnami/scripts/mongodb-env.sh
|
||||||
|
. /opt/bitnami/scripts/libfs.sh
|
||||||
|
. /opt/bitnami/scripts/liblog.sh
|
||||||
|
. /opt/bitnami/scripts/libvalidations.sh
|
||||||
|
|
||||||
|
if is_empty_value "$MONGODB_ADVERTISED_PORT_NUMBER"; then
|
||||||
|
export MONGODB_ADVERTISED_PORT_NUMBER="$MONGODB_PORT_NUMBER"
|
||||||
|
fi
|
||||||
|
|
||||||
|
info "Advertised Hostname: $MONGODB_ADVERTISED_HOSTNAME"
|
||||||
|
info "Advertised Port: $MONGODB_ADVERTISED_PORT_NUMBER"
|
||||||
|
|
||||||
|
# Check for existing replica set in case there is no data in the PVC
|
||||||
|
# This is for cases where the PVC is lost or for MongoDB caches without
|
||||||
|
# persistence
|
||||||
|
current_primary=""
|
||||||
|
if is_dir_empty "${MONGODB_DATA_DIR}/db"; then
|
||||||
|
info "Data dir empty, checking if the replica set already exists"
|
||||||
|
current_primary=$(mongosh admin --host "appsmith-mongodb-0.appsmith-mongodb-headless.appsmith.svc.cluster.local:27017,appsmith-mongodb-1.appsmith-mongodb-headless.appsmith.svc.cluster.local:27017" --authenticationDatabase admin -u root -p $MONGODB_ROOT_PASSWORD --eval 'db.runCommand("ismaster")' | awk -F\' '/primary/ {print $2}')
|
||||||
|
|
||||||
|
if ! is_empty_value "$current_primary"; then
|
||||||
|
info "Detected existing primary: ${current_primary}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! is_empty_value "$current_primary" && [[ "$MONGODB_ADVERTISED_HOSTNAME:$MONGODB_ADVERTISED_PORT_NUMBER" == "$current_primary" ]]; then
|
||||||
|
info "Advertised name matches current primary, configuring node as a primary"
|
||||||
|
export MONGODB_REPLICA_SET_MODE="primary"
|
||||||
|
elif ! is_empty_value "$current_primary" && [[ "$MONGODB_ADVERTISED_HOSTNAME:$MONGODB_ADVERTISED_PORT_NUMBER" != "$current_primary" ]]; then
|
||||||
|
info "Current primary is different from this node. Configuring the node as replica of ${current_primary}"
|
||||||
|
export MONGODB_REPLICA_SET_MODE="secondary"
|
||||||
|
export MONGODB_INITIAL_PRIMARY_HOST="${current_primary%:*}"
|
||||||
|
export MONGODB_INITIAL_PRIMARY_PORT_NUMBER="${current_primary#*:}"
|
||||||
|
export MONGODB_SET_SECONDARY_OK="yes"
|
||||||
|
elif [[ "$MY_POD_NAME" = "appsmith-mongodb-0" ]]; then
|
||||||
|
info "Pod name matches initial primary pod name, configuring node as a primary"
|
||||||
|
export MONGODB_REPLICA_SET_MODE="primary"
|
||||||
|
else
|
||||||
|
info "Pod name doesn't match initial primary pod name, configuring node as a secondary"
|
||||||
|
export MONGODB_REPLICA_SET_MODE="secondary"
|
||||||
|
export MONGODB_INITIAL_PRIMARY_PORT_NUMBER="$MONGODB_PORT_NUMBER"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$MONGODB_REPLICA_SET_MODE" == "secondary" ]]; then
|
||||||
|
export MONGODB_INITIAL_PRIMARY_ROOT_USER="$MONGODB_ROOT_USER"
|
||||||
|
export MONGODB_INITIAL_PRIMARY_ROOT_PASSWORD="$MONGODB_ROOT_PASSWORD"
|
||||||
|
export MONGODB_ROOT_PASSWORD=""
|
||||||
|
export MONGODB_EXTRA_USERNAMES=""
|
||||||
|
export MONGODB_EXTRA_DATABASES=""
|
||||||
|
export MONGODB_EXTRA_PASSWORDS=""
|
||||||
|
export MONGODB_ROOT_PASSWORD_FILE=""
|
||||||
|
export MONGODB_EXTRA_USERNAMES_FILE=""
|
||||||
|
export MONGODB_EXTRA_DATABASES_FILE=""
|
||||||
|
export MONGODB_EXTRA_PASSWORDS_FILE=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
exec /opt/bitnami/scripts/mongodb/entrypoint.sh /opt/bitnami/scripts/mongodb/run.sh
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: mongodb
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
helm.sh/chart: mongodb-12.1.16
|
||||||
|
name: appsmith-mongodb-scripts
|
||||||
|
namespace: appsmith
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
master.conf: |-
|
||||||
|
dir /data
|
||||||
|
# User-supplied master configuration:
|
||||||
|
# End of master configuration
|
||||||
|
redis.conf: |-
|
||||||
|
# User-supplied common configuration:
|
||||||
|
# Enable AOF https://redis.io/topics/persistence#append-only-file
|
||||||
|
appendonly yes
|
||||||
|
# Disable RDB persistence, AOF persistence already enabled.
|
||||||
|
save ""
|
||||||
|
# End of common configuration
|
||||||
|
replica.conf: |-
|
||||||
|
dir /data
|
||||||
|
slave-read-only yes
|
||||||
|
# User-supplied replica configuration:
|
||||||
|
# End of replica configuration
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
name: appsmith-redis-configuration
|
||||||
|
namespace: appsmith
|
||||||
105
apps-kustomized/appsmith/configmap-appsmith-redis-health.yaml
Normal file
105
apps-kustomized/appsmith/configmap-appsmith-redis-health.yaml
Normal file
|
|
@ -0,0 +1,105 @@
|
||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
ping_liveness_local.sh: |-
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[[ -f $REDIS_PASSWORD_FILE ]] && export REDIS_PASSWORD="$(< "${REDIS_PASSWORD_FILE}")"
|
||||||
|
[[ -n "$REDIS_PASSWORD" ]] && export REDISCLI_AUTH="$REDIS_PASSWORD"
|
||||||
|
response=$(
|
||||||
|
timeout -s 3 $1 \
|
||||||
|
redis-cli \
|
||||||
|
-h localhost \
|
||||||
|
-p $REDIS_PORT \
|
||||||
|
ping
|
||||||
|
)
|
||||||
|
if [ "$?" -eq "124" ]; then
|
||||||
|
echo "Timed out"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
responseFirstWord=$(echo $response | head -n1 | awk '{print $1;}')
|
||||||
|
if [ "$response" != "PONG" ] && [ "$responseFirstWord" != "LOADING" ] && [ "$responseFirstWord" != "MASTERDOWN" ]; then
|
||||||
|
echo "$response"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
ping_liveness_local_and_master.sh: |-
|
||||||
|
script_dir="$(dirname "$0")"
|
||||||
|
exit_status=0
|
||||||
|
"$script_dir/ping_liveness_local.sh" $1 || exit_status=$?
|
||||||
|
"$script_dir/ping_liveness_master.sh" $1 || exit_status=$?
|
||||||
|
exit $exit_status
|
||||||
|
ping_liveness_master.sh: |-
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[[ -f $REDIS_MASTER_PASSWORD_FILE ]] && export REDIS_MASTER_PASSWORD="$(< "${REDIS_MASTER_PASSWORD_FILE}")"
|
||||||
|
[[ -n "$REDIS_MASTER_PASSWORD" ]] && export REDISCLI_AUTH="$REDIS_MASTER_PASSWORD"
|
||||||
|
response=$(
|
||||||
|
timeout -s 3 $1 \
|
||||||
|
redis-cli \
|
||||||
|
-h $REDIS_MASTER_HOST \
|
||||||
|
-p $REDIS_MASTER_PORT_NUMBER \
|
||||||
|
ping
|
||||||
|
)
|
||||||
|
if [ "$?" -eq "124" ]; then
|
||||||
|
echo "Timed out"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
responseFirstWord=$(echo $response | head -n1 | awk '{print $1;}')
|
||||||
|
if [ "$response" != "PONG" ] && [ "$responseFirstWord" != "LOADING" ]; then
|
||||||
|
echo "$response"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
ping_readiness_local.sh: |-
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[[ -f $REDIS_PASSWORD_FILE ]] && export REDIS_PASSWORD="$(< "${REDIS_PASSWORD_FILE}")"
|
||||||
|
[[ -n "$REDIS_PASSWORD" ]] && export REDISCLI_AUTH="$REDIS_PASSWORD"
|
||||||
|
response=$(
|
||||||
|
timeout -s 3 $1 \
|
||||||
|
redis-cli \
|
||||||
|
-h localhost \
|
||||||
|
-p $REDIS_PORT \
|
||||||
|
ping
|
||||||
|
)
|
||||||
|
if [ "$?" -eq "124" ]; then
|
||||||
|
echo "Timed out"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
if [ "$response" != "PONG" ]; then
|
||||||
|
echo "$response"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
ping_readiness_local_and_master.sh: |-
|
||||||
|
script_dir="$(dirname "$0")"
|
||||||
|
exit_status=0
|
||||||
|
"$script_dir/ping_readiness_local.sh" $1 || exit_status=$?
|
||||||
|
"$script_dir/ping_readiness_master.sh" $1 || exit_status=$?
|
||||||
|
exit $exit_status
|
||||||
|
ping_readiness_master.sh: |-
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[[ -f $REDIS_MASTER_PASSWORD_FILE ]] && export REDIS_MASTER_PASSWORD="$(< "${REDIS_MASTER_PASSWORD_FILE}")"
|
||||||
|
[[ -n "$REDIS_MASTER_PASSWORD" ]] && export REDISCLI_AUTH="$REDIS_MASTER_PASSWORD"
|
||||||
|
response=$(
|
||||||
|
timeout -s 3 $1 \
|
||||||
|
redis-cli \
|
||||||
|
-h $REDIS_MASTER_HOST \
|
||||||
|
-p $REDIS_MASTER_PORT_NUMBER \
|
||||||
|
ping
|
||||||
|
)
|
||||||
|
if [ "$?" -eq "124" ]; then
|
||||||
|
echo "Timed out"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
if [ "$response" != "PONG" ]; then
|
||||||
|
echo "$response"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
name: appsmith-redis-health
|
||||||
|
namespace: appsmith
|
||||||
|
|
@ -0,0 +1,75 @@
|
||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
start-master.sh: |
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[[ -f $REDIS_PASSWORD_FILE ]] && export REDIS_PASSWORD="$(< "${REDIS_PASSWORD_FILE}")"
|
||||||
|
if [[ ! -f /opt/bitnami/redis/etc/master.conf ]];then
|
||||||
|
cp /opt/bitnami/redis/mounted-etc/master.conf /opt/bitnami/redis/etc/master.conf
|
||||||
|
fi
|
||||||
|
if [[ ! -f /opt/bitnami/redis/etc/redis.conf ]];then
|
||||||
|
cp /opt/bitnami/redis/mounted-etc/redis.conf /opt/bitnami/redis/etc/redis.conf
|
||||||
|
fi
|
||||||
|
ARGS=("--port" "${REDIS_PORT}")
|
||||||
|
ARGS+=("--protected-mode" "no")
|
||||||
|
ARGS+=("--include" "/opt/bitnami/redis/etc/redis.conf")
|
||||||
|
ARGS+=("--include" "/opt/bitnami/redis/etc/master.conf")
|
||||||
|
exec redis-server "${ARGS[@]}"
|
||||||
|
start-replica.sh: |
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
get_port() {
|
||||||
|
hostname="$1"
|
||||||
|
type="$2"
|
||||||
|
|
||||||
|
port_var=$(echo "${hostname^^}_SERVICE_PORT_$type" | sed "s/-/_/g")
|
||||||
|
port=${!port_var}
|
||||||
|
|
||||||
|
if [ -z "$port" ]; then
|
||||||
|
case $type in
|
||||||
|
"SENTINEL")
|
||||||
|
echo 26379
|
||||||
|
;;
|
||||||
|
"REDIS")
|
||||||
|
echo 6379
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
echo $port
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
get_full_hostname() {
|
||||||
|
hostname="$1"
|
||||||
|
echo "${hostname}.${HEADLESS_SERVICE}"
|
||||||
|
}
|
||||||
|
|
||||||
|
REDISPORT=$(get_port "$HOSTNAME" "REDIS")
|
||||||
|
|
||||||
|
[[ -f $REDIS_PASSWORD_FILE ]] && export REDIS_PASSWORD="$(< "${REDIS_PASSWORD_FILE}")"
|
||||||
|
[[ -f $REDIS_MASTER_PASSWORD_FILE ]] && export REDIS_MASTER_PASSWORD="$(< "${REDIS_MASTER_PASSWORD_FILE}")"
|
||||||
|
if [[ ! -f /opt/bitnami/redis/etc/replica.conf ]];then
|
||||||
|
cp /opt/bitnami/redis/mounted-etc/replica.conf /opt/bitnami/redis/etc/replica.conf
|
||||||
|
fi
|
||||||
|
if [[ ! -f /opt/bitnami/redis/etc/redis.conf ]];then
|
||||||
|
cp /opt/bitnami/redis/mounted-etc/redis.conf /opt/bitnami/redis/etc/redis.conf
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "" >> /opt/bitnami/redis/etc/replica.conf
|
||||||
|
echo "replica-announce-port $REDISPORT" >> /opt/bitnami/redis/etc/replica.conf
|
||||||
|
echo "replica-announce-ip $(get_full_hostname "$HOSTNAME")" >> /opt/bitnami/redis/etc/replica.conf
|
||||||
|
ARGS=("--port" "${REDIS_PORT}")
|
||||||
|
ARGS+=("--slaveof" "${REDIS_MASTER_HOST}" "${REDIS_MASTER_PORT_NUMBER}")
|
||||||
|
ARGS+=("--protected-mode" "no")
|
||||||
|
ARGS+=("--include" "/opt/bitnami/redis/etc/redis.conf")
|
||||||
|
ARGS+=("--include" "/opt/bitnami/redis/etc/replica.conf")
|
||||||
|
exec redis-server "${ARGS[@]}"
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
name: appsmith-redis-scripts
|
||||||
|
namespace: appsmith
|
||||||
23
apps-kustomized/appsmith/configmap-kube-root-ca.crt.yaml
Normal file
23
apps-kustomized/appsmith/configmap-kube-root-ca.crt.yaml
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
apiVersion: v1
|
||||||
|
data:
|
||||||
|
ca.crt: |
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIBijCCAS+gAwIBAgIQJGb95Oq4oJVojUzKHTaK2jAKBggqhkjOPQQDAjAVMRMw
|
||||||
|
EQYDVQQKEwprdWJlcm5ldGVzMB4XDTIzMTExMDEyMzQwMloXDTMzMTEwNzEyMzQw
|
||||||
|
MlowFTETMBEGA1UEChMKa3ViZXJuZXRlczBZMBMGByqGSM49AgEGCCqGSM49AwEH
|
||||||
|
A0IABGDaf5TlkdHoEjnsi1QnUtmw+eRDyQyYBTkDYnmHUg5z6uj5DqTEAxw5oXtn
|
||||||
|
yhQNGHLzFHBU87NKnRYMS3lpOsujYTBfMA4GA1UdDwEB/wQEAwIChDAdBgNVHSUE
|
||||||
|
FjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E
|
||||||
|
FgQUSLS2yUT1+1+sJtLJX79TDA5Pm48wCgYIKoZIzj0EAwIDSQAwRgIhAMeG6Nph
|
||||||
|
Sm/EN00cMgACe8OGH19nwPXu17iq7krizxYoAiEA4D6hkPQ1L6kOijW9wWS5G164
|
||||||
|
Ks7z8KPjG6LXEfACTZk=
|
||||||
|
-----END CERTIFICATE-----
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
kubernetes.io/description: Contains a CA bundle that can be used to verify the
|
||||||
|
kube-apiserver when using internal endpoints such as the internal service IP
|
||||||
|
or kubernetes.default.svc. No other usage is guaranteed across distributions
|
||||||
|
of Kubernetes clusters.
|
||||||
|
name: kube-root-ca.crt
|
||||||
|
namespace: appsmith
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt
|
||||||
|
external-dns.alpha.kubernetes.io/target: armnleg.martyn.berlin
|
||||||
|
nginx.ingress.kubernetes.io/app-root: /app/karaoke/home-68b9fa05cb66516b642152fa
|
||||||
|
nginx.ingress.kubernetes.io/auth-signin: https://homeauth.martyn.berlin/oauth2/start?rd=https://$host$escaped_request_uri
|
||||||
|
nginx.ingress.kubernetes.io/auth-url: https://homeauth.martyn.berlin/oauth2/auth
|
||||||
|
name: appsmith-karaokelist
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
ingressClassName: nginx
|
||||||
|
rules:
|
||||||
|
- host: karaokelist.martyn.berlin
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- backend:
|
||||||
|
service:
|
||||||
|
name: appsmith-appsmith
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
path: /
|
||||||
|
pathType: Prefix
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- karaokelist.martyn.berlin
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: appsmith
|
||||||
|
appsmith.sh/chart: appsmith-3.6.4
|
||||||
|
name: appsmith-appsmith-headless
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
clusterIP: None
|
||||||
|
clusterIPs:
|
||||||
|
- None
|
||||||
|
ipFamilies:
|
||||||
|
- IPv4
|
||||||
|
ipFamilyPolicy: SingleStack
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 8080
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: appsmith
|
||||||
28
apps-kustomized/appsmith/service-appsmith-appsmith.yaml
Normal file
28
apps-kustomized/appsmith/service-appsmith-appsmith.yaml
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
metallb.io/ip-allocated-from-pool: arm
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: appsmith
|
||||||
|
appsmith.sh/chart: appsmith-3.6.4
|
||||||
|
name: appsmith-appsmith
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
clusterIP: 10.97.168.186
|
||||||
|
clusterIPs:
|
||||||
|
- 10.97.168.186
|
||||||
|
ipFamilies:
|
||||||
|
- IPv4
|
||||||
|
ipFamilyPolicy: SingleStack
|
||||||
|
ports:
|
||||||
|
- name: appsmith
|
||||||
|
nodePort: 31541
|
||||||
|
port: 80
|
||||||
|
targetPort: http
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: appsmith
|
||||||
|
type: LoadBalancer
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: arbiter
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
helm.sh/chart: mongodb-12.1.16
|
||||||
|
name: appsmith-mongodb-arbiter-headless
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
clusterIP: None
|
||||||
|
clusterIPs:
|
||||||
|
- None
|
||||||
|
ipFamilies:
|
||||||
|
- IPv4
|
||||||
|
ipFamilyPolicy: SingleStack
|
||||||
|
ports:
|
||||||
|
- name: tcp-mongodb
|
||||||
|
port: 27017
|
||||||
|
targetPort: mongodb
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/component: arbiter
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
27
apps-kustomized/appsmith/service-appsmith-mongodb.yaml
Normal file
27
apps-kustomized/appsmith/service-appsmith-mongodb.yaml
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: mongodb
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
helm.sh/chart: mongodb-12.1.16
|
||||||
|
name: appsmith-mongodb
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
clusterIP: None
|
||||||
|
clusterIPs:
|
||||||
|
- None
|
||||||
|
ipFamilies:
|
||||||
|
- IPv4
|
||||||
|
ipFamilyPolicy: SingleStack
|
||||||
|
ports:
|
||||||
|
- name: mongodb
|
||||||
|
port: 27017
|
||||||
|
targetPort: mongodb
|
||||||
|
publishNotReadyAddresses: true
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/component: mongodb
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
28
apps-kustomized/appsmith/service-appsmith-postgresql-hl.yaml
Normal file
28
apps-kustomized/appsmith/service-appsmith-postgresql-hl.yaml
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: primary
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: postgresql
|
||||||
|
helm.sh/chart: postgresql-11.9.5
|
||||||
|
service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
|
||||||
|
name: appsmith-postgresql-hl
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
clusterIP: None
|
||||||
|
clusterIPs:
|
||||||
|
- None
|
||||||
|
ipFamilies:
|
||||||
|
- IPv4
|
||||||
|
ipFamilyPolicy: SingleStack
|
||||||
|
ports:
|
||||||
|
- name: tcp-postgresql
|
||||||
|
port: 5432
|
||||||
|
targetPort: tcp-postgresql
|
||||||
|
publishNotReadyAddresses: true
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/component: primary
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: postgresql
|
||||||
26
apps-kustomized/appsmith/service-appsmith-postgresql.yaml
Normal file
26
apps-kustomized/appsmith/service-appsmith-postgresql.yaml
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: primary
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: postgresql
|
||||||
|
helm.sh/chart: postgresql-11.9.5
|
||||||
|
name: appsmith-postgresql
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
clusterIP: 10.100.117.209
|
||||||
|
clusterIPs:
|
||||||
|
- 10.100.117.209
|
||||||
|
ipFamilies:
|
||||||
|
- IPv4
|
||||||
|
ipFamilyPolicy: SingleStack
|
||||||
|
ports:
|
||||||
|
- name: tcp-postgresql
|
||||||
|
port: 5432
|
||||||
|
targetPort: tcp-postgresql
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/component: primary
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: postgresql
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
name: appsmith-redis-headless
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
clusterIP: None
|
||||||
|
clusterIPs:
|
||||||
|
- None
|
||||||
|
ipFamilies:
|
||||||
|
- IPv4
|
||||||
|
ipFamilyPolicy: SingleStack
|
||||||
|
ports:
|
||||||
|
- name: tcp-redis
|
||||||
|
port: 6379
|
||||||
|
targetPort: redis
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
26
apps-kustomized/appsmith/service-appsmith-redis-master.yaml
Normal file
26
apps-kustomized/appsmith/service-appsmith-redis-master.yaml
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: master
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
name: appsmith-redis-master
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
clusterIP: 10.96.82.177
|
||||||
|
clusterIPs:
|
||||||
|
- 10.96.82.177
|
||||||
|
ipFamilies:
|
||||||
|
- IPv4
|
||||||
|
ipFamilyPolicy: SingleStack
|
||||||
|
ports:
|
||||||
|
- name: tcp-redis
|
||||||
|
port: 6379
|
||||||
|
targetPort: redis
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/component: master
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: replica
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
name: appsmith-redis-replicas
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
clusterIP: 10.96.107.137
|
||||||
|
clusterIPs:
|
||||||
|
- 10.96.107.137
|
||||||
|
ipFamilies:
|
||||||
|
- IPv4
|
||||||
|
ipFamilyPolicy: SingleStack
|
||||||
|
ports:
|
||||||
|
- name: tcp-redis
|
||||||
|
port: 6379
|
||||||
|
targetPort: redis
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/component: replica
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: appsmith
|
||||||
|
appsmith.sh/chart: appsmith-3.6.4
|
||||||
|
name: appsmith-appsmith
|
||||||
|
namespace: appsmith
|
||||||
|
secrets:
|
||||||
|
- name: appsmith-appsmith
|
||||||
|
|
@ -0,0 +1,13 @@
|
||||||
|
apiVersion: v1
|
||||||
|
automountServiceAccountToken: true
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
helm.sh/chart: mongodb-12.1.16
|
||||||
|
name: appsmith-mongodb
|
||||||
|
namespace: appsmith
|
||||||
|
secrets:
|
||||||
|
- name: appsmith-mongodb
|
||||||
11
apps-kustomized/appsmith/serviceaccount-appsmith-redis.yaml
Normal file
11
apps-kustomized/appsmith/serviceaccount-appsmith-redis.yaml
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
apiVersion: v1
|
||||||
|
automountServiceAccountToken: true
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
name: appsmith-redis
|
||||||
|
namespace: appsmith
|
||||||
5
apps-kustomized/appsmith/serviceaccount-default.yaml
Normal file
5
apps-kustomized/appsmith/serviceaccount-default.yaml
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: default
|
||||||
|
namespace: appsmith
|
||||||
146
apps-kustomized/appsmith/statefulsetappsmith-appsmith.yaml
Normal file
146
apps-kustomized/appsmith/statefulsetappsmith-appsmith.yaml
Normal file
|
|
@ -0,0 +1,146 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: StatefulSet
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: appsmith
|
||||||
|
appsmith.sh/chart: appsmith-3.6.4
|
||||||
|
name: appsmith-appsmith
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
persistentVolumeClaimRetentionPolicy:
|
||||||
|
whenDeleted: Retain
|
||||||
|
whenScaled: Retain
|
||||||
|
podManagementPolicy: OrderedReady
|
||||||
|
replicas: 1
|
||||||
|
revisionHistoryLimit: 10
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: appsmith
|
||||||
|
serviceName: appsmith-appsmith
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: appsmith
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- env:
|
||||||
|
- name: APPSMITH_ENABLE_EMBEDDED_DB
|
||||||
|
value: "0"
|
||||||
|
- name: JGROUPS_DISCOVERY_PROTOCOL
|
||||||
|
value: kubernetes.KUBE_PING
|
||||||
|
- name: APPSMITH_HEADLESS_SVC
|
||||||
|
value: appsmith-appsmith-headless
|
||||||
|
envFrom:
|
||||||
|
- configMapRef:
|
||||||
|
name: appsmith-appsmith
|
||||||
|
image: index.docker.io/appsmith/appsmith-ee:latest
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
livenessProbe:
|
||||||
|
failureThreshold: 3
|
||||||
|
httpGet:
|
||||||
|
path: /api/v1/health
|
||||||
|
port: 80
|
||||||
|
scheme: HTTP
|
||||||
|
periodSeconds: 60
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 1
|
||||||
|
name: appsmith
|
||||||
|
ports:
|
||||||
|
- containerPort: 80
|
||||||
|
name: http
|
||||||
|
protocol: TCP
|
||||||
|
- containerPort: 443
|
||||||
|
name: https
|
||||||
|
protocol: TCP
|
||||||
|
- containerPort: 2019
|
||||||
|
name: metrics
|
||||||
|
protocol: TCP
|
||||||
|
readinessProbe:
|
||||||
|
failureThreshold: 3
|
||||||
|
httpGet:
|
||||||
|
path: /api/v1/health
|
||||||
|
port: 80
|
||||||
|
scheme: HTTP
|
||||||
|
periodSeconds: 60
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 1
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: 500m
|
||||||
|
memory: 3000Mi
|
||||||
|
startupProbe:
|
||||||
|
failureThreshold: 3
|
||||||
|
httpGet:
|
||||||
|
path: /api/v1/health
|
||||||
|
port: 80
|
||||||
|
scheme: HTTP
|
||||||
|
periodSeconds: 60
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 1
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /appsmith-stacks
|
||||||
|
name: data
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
initContainers:
|
||||||
|
- command:
|
||||||
|
- sh
|
||||||
|
- -c
|
||||||
|
- until redis-cli -h appsmith-redis-master.appsmith.svc.cluster.local ping
|
||||||
|
; do echo waiting for redis; sleep 2; done
|
||||||
|
image: docker.io/redis:7.0.15
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
name: redis-init-container
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
- command:
|
||||||
|
- sh
|
||||||
|
- -c
|
||||||
|
- until mongosh --host appsmith-mongodb.appsmith.svc.cluster.local --eval
|
||||||
|
'db.runCommand({ping:1})' ; do echo waiting for mongo; sleep 2; done
|
||||||
|
image: docker.io/bitnamilegacy/mongodb:6.0.13
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
name: mongo-init-container
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
- command:
|
||||||
|
- sh
|
||||||
|
- -c
|
||||||
|
- until pg_isready -U $postgresuser -d $postgresdb -h appsmith-postgresql.appsmith.svc.cluster.local;
|
||||||
|
do echo waiting for postgresql; sleep 2; done
|
||||||
|
image: docker.io/bitnamilegacy/postgresql:14.5.0-debian-11-r21
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
name: psql-init-container
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
restartPolicy: Always
|
||||||
|
schedulerName: default-scheduler
|
||||||
|
serviceAccount: appsmith-appsmith
|
||||||
|
serviceAccountName: appsmith-appsmith
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
updateStrategy:
|
||||||
|
rollingUpdate:
|
||||||
|
partition: 0
|
||||||
|
type: RollingUpdate
|
||||||
|
volumeClaimTemplates:
|
||||||
|
- apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
name: data
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 10Gi
|
||||||
|
storageClassName: longhorn-fast
|
||||||
|
volumeMode: Filesystem
|
||||||
|
status:
|
||||||
|
phase: Pending
|
||||||
|
|
@ -0,0 +1,127 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: StatefulSet
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: arbiter
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
helm.sh/chart: mongodb-12.1.16
|
||||||
|
name: appsmith-mongodb-arbiter
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
persistentVolumeClaimRetentionPolicy:
|
||||||
|
whenDeleted: Retain
|
||||||
|
whenScaled: Retain
|
||||||
|
podManagementPolicy: OrderedReady
|
||||||
|
replicas: 1
|
||||||
|
revisionHistoryLimit: 10
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/component: arbiter
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
serviceName: appsmith-mongodb-arbiter-headless
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: arbiter
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
helm.sh/chart: mongodb-12.1.16
|
||||||
|
spec:
|
||||||
|
affinity:
|
||||||
|
podAntiAffinity:
|
||||||
|
preferredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
- podAffinityTerm:
|
||||||
|
labelSelector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/component: arbiter
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
namespaces:
|
||||||
|
- appsmith
|
||||||
|
topologyKey: kubernetes.io/hostname
|
||||||
|
weight: 1
|
||||||
|
containers:
|
||||||
|
- env:
|
||||||
|
- name: BITNAMI_DEBUG
|
||||||
|
value: "false"
|
||||||
|
- name: MY_POD_NAME
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
apiVersion: v1
|
||||||
|
fieldPath: metadata.name
|
||||||
|
- name: MY_POD_NAMESPACE
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
apiVersion: v1
|
||||||
|
fieldPath: metadata.namespace
|
||||||
|
- name: K8S_SERVICE_NAME
|
||||||
|
value: appsmith-mongodb-arbiter-headless
|
||||||
|
- name: MONGODB_REPLICA_SET_MODE
|
||||||
|
value: arbiter
|
||||||
|
- name: MONGODB_INITIAL_PRIMARY_HOST
|
||||||
|
value: appsmith-mongodb-0.appsmith-mongodb.$(MY_POD_NAMESPACE).svc.cluster.local
|
||||||
|
- name: MONGODB_REPLICA_SET_NAME
|
||||||
|
value: rs0
|
||||||
|
- name: MONGODB_ADVERTISED_HOSTNAME
|
||||||
|
value: $(MY_POD_NAME).$(K8S_SERVICE_NAME).$(MY_POD_NAMESPACE).svc.cluster.local
|
||||||
|
- name: MONGODB_PORT_NUMBER
|
||||||
|
value: "27017"
|
||||||
|
- name: MONGODB_INITIAL_PRIMARY_ROOT_USER
|
||||||
|
value: root
|
||||||
|
- name: MONGODB_INITIAL_PRIMARY_ROOT_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
key: mongodb-root-password
|
||||||
|
name: appsmith-mongodb
|
||||||
|
- name: MONGODB_REPLICA_SET_KEY
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
key: mongodb-replica-set-key
|
||||||
|
name: appsmith-mongodb
|
||||||
|
- name: ALLOW_EMPTY_PASSWORD
|
||||||
|
value: "no"
|
||||||
|
image: docker.io/bitnamilegacy/mongodb:6.0.13
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
livenessProbe:
|
||||||
|
failureThreshold: 6
|
||||||
|
initialDelaySeconds: 30
|
||||||
|
periodSeconds: 20
|
||||||
|
successThreshold: 1
|
||||||
|
tcpSocket:
|
||||||
|
port: mongodb
|
||||||
|
timeoutSeconds: 10
|
||||||
|
name: mongodb-arbiter
|
||||||
|
ports:
|
||||||
|
- containerPort: 27017
|
||||||
|
name: mongodb
|
||||||
|
protocol: TCP
|
||||||
|
readinessProbe:
|
||||||
|
failureThreshold: 6
|
||||||
|
initialDelaySeconds: 5
|
||||||
|
periodSeconds: 20
|
||||||
|
successThreshold: 1
|
||||||
|
tcpSocket:
|
||||||
|
port: mongodb
|
||||||
|
timeoutSeconds: 10
|
||||||
|
securityContext:
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1001
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
nodeSelector:
|
||||||
|
feature.node.kubernetes.io/cpu-cpuid.AVX: "true"
|
||||||
|
restartPolicy: Always
|
||||||
|
schedulerName: default-scheduler
|
||||||
|
securityContext:
|
||||||
|
fsGroup: 1001
|
||||||
|
serviceAccount: appsmith-mongodb
|
||||||
|
serviceAccountName: appsmith-mongodb
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
updateStrategy:
|
||||||
|
type: RollingUpdate
|
||||||
185
apps-kustomized/appsmith/statefulsetappsmith-mongodb.yaml
Normal file
185
apps-kustomized/appsmith/statefulsetappsmith-mongodb.yaml
Normal file
|
|
@ -0,0 +1,185 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: StatefulSet
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: mongodb
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
helm.sh/chart: mongodb-12.1.16
|
||||||
|
name: appsmith-mongodb
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
persistentVolumeClaimRetentionPolicy:
|
||||||
|
whenDeleted: Retain
|
||||||
|
whenScaled: Retain
|
||||||
|
podManagementPolicy: OrderedReady
|
||||||
|
replicas: 2
|
||||||
|
revisionHistoryLimit: 10
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/component: mongodb
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
serviceName: appsmith-mongodb
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: mongodb
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
helm.sh/chart: mongodb-12.1.16
|
||||||
|
spec:
|
||||||
|
affinity:
|
||||||
|
nodeAffinity:
|
||||||
|
requiredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
nodeSelectorTerms:
|
||||||
|
- matchExpressions:
|
||||||
|
- key: feature.node.kubernetes.io/cpu-cpuid.AVX
|
||||||
|
operator: In
|
||||||
|
values:
|
||||||
|
- "true"
|
||||||
|
podAntiAffinity:
|
||||||
|
preferredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
- podAffinityTerm:
|
||||||
|
labelSelector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/component: mongodb
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: mongodb
|
||||||
|
namespaces:
|
||||||
|
- appsmith
|
||||||
|
topologyKey: kubernetes.io/hostname
|
||||||
|
weight: 1
|
||||||
|
containers:
|
||||||
|
- command:
|
||||||
|
- /scripts/setup.sh
|
||||||
|
env:
|
||||||
|
- name: BITNAMI_DEBUG
|
||||||
|
value: "false"
|
||||||
|
- name: MY_POD_NAME
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
apiVersion: v1
|
||||||
|
fieldPath: metadata.name
|
||||||
|
- name: MY_POD_NAMESPACE
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
apiVersion: v1
|
||||||
|
fieldPath: metadata.namespace
|
||||||
|
- name: MY_POD_HOST_IP
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
apiVersion: v1
|
||||||
|
fieldPath: status.hostIP
|
||||||
|
- name: K8S_SERVICE_NAME
|
||||||
|
value: appsmith-mongodb
|
||||||
|
- name: MONGODB_INITIAL_PRIMARY_HOST
|
||||||
|
value: appsmith-mongodb-0.$(K8S_SERVICE_NAME).$(MY_POD_NAMESPACE).svc.cluster.local
|
||||||
|
- name: MONGODB_REPLICA_SET_NAME
|
||||||
|
value: rs0
|
||||||
|
- name: MONGODB_ADVERTISED_HOSTNAME
|
||||||
|
value: $(MY_POD_NAME).$(K8S_SERVICE_NAME).$(MY_POD_NAMESPACE).svc.cluster.local
|
||||||
|
- name: MONGODB_ROOT_USER
|
||||||
|
value: root
|
||||||
|
- name: MONGODB_ROOT_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
key: mongodb-root-password
|
||||||
|
name: appsmith-mongodb
|
||||||
|
- name: MONGODB_REPLICA_SET_KEY
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
key: mongodb-replica-set-key
|
||||||
|
name: appsmith-mongodb
|
||||||
|
- name: ALLOW_EMPTY_PASSWORD
|
||||||
|
value: "no"
|
||||||
|
- name: MONGODB_SYSTEM_LOG_VERBOSITY
|
||||||
|
value: "0"
|
||||||
|
- name: MONGODB_DISABLE_SYSTEM_LOG
|
||||||
|
value: "no"
|
||||||
|
- name: MONGODB_DISABLE_JAVASCRIPT
|
||||||
|
value: "no"
|
||||||
|
- name: MONGODB_ENABLE_JOURNAL
|
||||||
|
value: "yes"
|
||||||
|
- name: MONGODB_PORT_NUMBER
|
||||||
|
value: "27017"
|
||||||
|
- name: MONGODB_ENABLE_IPV6
|
||||||
|
value: "no"
|
||||||
|
- name: MONGODB_ENABLE_DIRECTORY_PER_DB
|
||||||
|
value: "no"
|
||||||
|
image: docker.io/bitnamilegacy/mongodb:6.0.13
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
livenessProbe:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- /bitnami/scripts/ping-mongodb.sh
|
||||||
|
failureThreshold: 6
|
||||||
|
initialDelaySeconds: 30
|
||||||
|
periodSeconds: 20
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 10
|
||||||
|
name: mongodb
|
||||||
|
ports:
|
||||||
|
- containerPort: 27017
|
||||||
|
name: mongodb
|
||||||
|
protocol: TCP
|
||||||
|
readinessProbe:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- /bitnami/scripts/readiness-probe.sh
|
||||||
|
failureThreshold: 6
|
||||||
|
initialDelaySeconds: 5
|
||||||
|
periodSeconds: 10
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 5
|
||||||
|
securityContext:
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1001
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /bitnami/mongodb
|
||||||
|
name: datadir
|
||||||
|
- mountPath: /bitnami/scripts
|
||||||
|
name: common-scripts
|
||||||
|
- mountPath: /scripts/setup.sh
|
||||||
|
name: scripts
|
||||||
|
subPath: setup.sh
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
restartPolicy: Always
|
||||||
|
schedulerName: default-scheduler
|
||||||
|
securityContext:
|
||||||
|
fsGroup: 1001
|
||||||
|
serviceAccount: appsmith-mongodb
|
||||||
|
serviceAccountName: appsmith-mongodb
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
volumes:
|
||||||
|
- configMap:
|
||||||
|
defaultMode: 360
|
||||||
|
name: appsmith-mongodb-common-scripts
|
||||||
|
name: common-scripts
|
||||||
|
- configMap:
|
||||||
|
defaultMode: 493
|
||||||
|
name: appsmith-mongodb-scripts
|
||||||
|
name: scripts
|
||||||
|
updateStrategy:
|
||||||
|
type: RollingUpdate
|
||||||
|
volumeClaimTemplates:
|
||||||
|
- apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
name: datadir
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 8Gi
|
||||||
|
storageClassName: longhorn-fast
|
||||||
|
volumeMode: Filesystem
|
||||||
|
status:
|
||||||
|
phase: Pending
|
||||||
164
apps-kustomized/appsmith/statefulsetappsmith-postgresql.yaml
Normal file
164
apps-kustomized/appsmith/statefulsetappsmith-postgresql.yaml
Normal file
|
|
@ -0,0 +1,164 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: StatefulSet
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: primary
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: postgresql
|
||||||
|
helm.sh/chart: postgresql-11.9.5
|
||||||
|
name: appsmith-postgresql
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
persistentVolumeClaimRetentionPolicy:
|
||||||
|
whenDeleted: Retain
|
||||||
|
whenScaled: Retain
|
||||||
|
podManagementPolicy: OrderedReady
|
||||||
|
replicas: 1
|
||||||
|
revisionHistoryLimit: 10
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/component: primary
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: postgresql
|
||||||
|
serviceName: appsmith-postgresql-hl
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: primary
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: postgresql
|
||||||
|
helm.sh/chart: postgresql-11.9.5
|
||||||
|
name: appsmith-postgresql
|
||||||
|
spec:
|
||||||
|
affinity:
|
||||||
|
podAntiAffinity:
|
||||||
|
preferredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
- podAffinityTerm:
|
||||||
|
labelSelector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/component: primary
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: postgresql
|
||||||
|
namespaces:
|
||||||
|
- appsmith
|
||||||
|
topologyKey: kubernetes.io/hostname
|
||||||
|
weight: 1
|
||||||
|
containers:
|
||||||
|
- env:
|
||||||
|
- name: BITNAMI_DEBUG
|
||||||
|
value: "false"
|
||||||
|
- name: POSTGRESQL_PORT_NUMBER
|
||||||
|
value: "5432"
|
||||||
|
- name: POSTGRESQL_VOLUME_DIR
|
||||||
|
value: /bitnami/postgresql
|
||||||
|
- name: PGDATA
|
||||||
|
value: /bitnami/postgresql/data
|
||||||
|
- name: POSTGRES_USER
|
||||||
|
value: root
|
||||||
|
- name: POSTGRES_POSTGRES_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
key: postgres-password
|
||||||
|
name: appsmith-postgresql
|
||||||
|
- name: POSTGRES_PASSWORD
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
key: password
|
||||||
|
name: appsmith-postgresql
|
||||||
|
- name: POSTGRES_DB
|
||||||
|
value: keycloak
|
||||||
|
- name: POSTGRESQL_ENABLE_LDAP
|
||||||
|
value: "no"
|
||||||
|
- name: POSTGRESQL_ENABLE_TLS
|
||||||
|
value: "no"
|
||||||
|
- name: POSTGRESQL_LOG_HOSTNAME
|
||||||
|
value: "false"
|
||||||
|
- name: POSTGRESQL_LOG_CONNECTIONS
|
||||||
|
value: "false"
|
||||||
|
- name: POSTGRESQL_LOG_DISCONNECTIONS
|
||||||
|
value: "false"
|
||||||
|
- name: POSTGRESQL_PGAUDIT_LOG_CATALOG
|
||||||
|
value: "off"
|
||||||
|
- name: POSTGRESQL_CLIENT_MIN_MESSAGES
|
||||||
|
value: error
|
||||||
|
- name: POSTGRESQL_SHARED_PRELOAD_LIBRARIES
|
||||||
|
value: pgaudit
|
||||||
|
image: docker.io/bitnamilegacy/postgresql:14.12.0
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
livenessProbe:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- /bin/sh
|
||||||
|
- -c
|
||||||
|
- exec pg_isready -U "root" -d "dbname=keycloak" -h 127.0.0.1 -p 5432
|
||||||
|
failureThreshold: 6
|
||||||
|
initialDelaySeconds: 30
|
||||||
|
periodSeconds: 10
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 5
|
||||||
|
name: postgresql
|
||||||
|
ports:
|
||||||
|
- containerPort: 5432
|
||||||
|
name: tcp-postgresql
|
||||||
|
protocol: TCP
|
||||||
|
readinessProbe:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- /bin/sh
|
||||||
|
- -c
|
||||||
|
- -e
|
||||||
|
- |
|
||||||
|
exec pg_isready -U "root" -d "dbname=keycloak" -h 127.0.0.1 -p 5432
|
||||||
|
failureThreshold: 6
|
||||||
|
initialDelaySeconds: 5
|
||||||
|
periodSeconds: 10
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 5
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: 250m
|
||||||
|
memory: 256Mi
|
||||||
|
securityContext:
|
||||||
|
runAsUser: 1001
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /dev/shm
|
||||||
|
name: dshm
|
||||||
|
- mountPath: /bitnami/postgresql
|
||||||
|
name: data
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
restartPolicy: Always
|
||||||
|
schedulerName: default-scheduler
|
||||||
|
securityContext:
|
||||||
|
fsGroup: 1001
|
||||||
|
serviceAccount: default
|
||||||
|
serviceAccountName: default
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
volumes:
|
||||||
|
- emptyDir:
|
||||||
|
medium: Memory
|
||||||
|
name: dshm
|
||||||
|
updateStrategy:
|
||||||
|
rollingUpdate:
|
||||||
|
partition: 0
|
||||||
|
type: RollingUpdate
|
||||||
|
volumeClaimTemplates:
|
||||||
|
- apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
name: data
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 8Gi
|
||||||
|
storageClassName: longhorn-fast
|
||||||
|
volumeMode: Filesystem
|
||||||
|
status:
|
||||||
|
phase: Pending
|
||||||
162
apps-kustomized/appsmith/statefulsetappsmith-redis-master.yaml
Normal file
162
apps-kustomized/appsmith/statefulsetappsmith-redis-master.yaml
Normal file
|
|
@ -0,0 +1,162 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: StatefulSet
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: master
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
name: appsmith-redis-master
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
persistentVolumeClaimRetentionPolicy:
|
||||||
|
whenDeleted: Retain
|
||||||
|
whenScaled: Retain
|
||||||
|
podManagementPolicy: OrderedReady
|
||||||
|
replicas: 1
|
||||||
|
revisionHistoryLimit: 10
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/component: master
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
serviceName: appsmith-redis-headless
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
checksum/configmap: 200ea504d6238919d0d307d6a9532731dc31f75b892c7c3aa5c0ac0e6d33989f
|
||||||
|
checksum/health: 773ea337f77df0444ffc318b00d3e78d6dab5a70ff1a5ba67bf18d98ad459fa9
|
||||||
|
checksum/scripts: c8705e5003141308d45cbfb90346393c427657644ab7aea26bcb88fff444a244
|
||||||
|
checksum/secret: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
|
||||||
|
creationTimestamp: null
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: master
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
spec:
|
||||||
|
affinity:
|
||||||
|
podAntiAffinity:
|
||||||
|
preferredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
- podAffinityTerm:
|
||||||
|
labelSelector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/component: master
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
namespaces:
|
||||||
|
- appsmith
|
||||||
|
topologyKey: kubernetes.io/hostname
|
||||||
|
weight: 1
|
||||||
|
containers:
|
||||||
|
- args:
|
||||||
|
- -c
|
||||||
|
- /opt/bitnami/scripts/start-scripts/start-master.sh
|
||||||
|
command:
|
||||||
|
- /bin/bash
|
||||||
|
env:
|
||||||
|
- name: BITNAMI_DEBUG
|
||||||
|
value: "false"
|
||||||
|
- name: REDIS_REPLICATION_MODE
|
||||||
|
value: master
|
||||||
|
- name: ALLOW_EMPTY_PASSWORD
|
||||||
|
value: "yes"
|
||||||
|
- name: REDIS_TLS_ENABLED
|
||||||
|
value: "no"
|
||||||
|
- name: REDIS_PORT
|
||||||
|
value: "6379"
|
||||||
|
image: docker.io/redis:7.0.15
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
livenessProbe:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- sh
|
||||||
|
- -c
|
||||||
|
- /health/ping_liveness_local.sh 5
|
||||||
|
failureThreshold: 5
|
||||||
|
initialDelaySeconds: 20
|
||||||
|
periodSeconds: 5
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 6
|
||||||
|
name: redis
|
||||||
|
ports:
|
||||||
|
- containerPort: 6379
|
||||||
|
name: redis
|
||||||
|
protocol: TCP
|
||||||
|
readinessProbe:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- sh
|
||||||
|
- -c
|
||||||
|
- /health/ping_readiness_local.sh 1
|
||||||
|
failureThreshold: 5
|
||||||
|
initialDelaySeconds: 20
|
||||||
|
periodSeconds: 5
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 2
|
||||||
|
securityContext:
|
||||||
|
runAsUser: 1001
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /opt/bitnami/scripts/start-scripts
|
||||||
|
name: start-scripts
|
||||||
|
- mountPath: /health
|
||||||
|
name: health
|
||||||
|
- mountPath: /data
|
||||||
|
name: redis-data
|
||||||
|
- mountPath: /opt/bitnami/redis/mounted-etc
|
||||||
|
name: config
|
||||||
|
- mountPath: /opt/bitnami/redis/etc/
|
||||||
|
name: redis-tmp-conf
|
||||||
|
- mountPath: /tmp
|
||||||
|
name: tmp
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
restartPolicy: Always
|
||||||
|
schedulerName: default-scheduler
|
||||||
|
securityContext:
|
||||||
|
fsGroup: 1001
|
||||||
|
serviceAccount: appsmith-redis
|
||||||
|
serviceAccountName: appsmith-redis
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
volumes:
|
||||||
|
- configMap:
|
||||||
|
defaultMode: 493
|
||||||
|
name: appsmith-redis-scripts
|
||||||
|
name: start-scripts
|
||||||
|
- configMap:
|
||||||
|
defaultMode: 493
|
||||||
|
name: appsmith-redis-health
|
||||||
|
name: health
|
||||||
|
- configMap:
|
||||||
|
defaultMode: 420
|
||||||
|
name: appsmith-redis-configuration
|
||||||
|
name: config
|
||||||
|
- name: redis-tmp-conf
|
||||||
|
- name: tmp
|
||||||
|
updateStrategy:
|
||||||
|
rollingUpdate:
|
||||||
|
partition: 0
|
||||||
|
type: RollingUpdate
|
||||||
|
volumeClaimTemplates:
|
||||||
|
- apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: master
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
name: redis-data
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 8Gi
|
||||||
|
storageClassName: longhorn-fast
|
||||||
|
volumeMode: Filesystem
|
||||||
|
status:
|
||||||
|
phase: Pending
|
||||||
171
apps-kustomized/appsmith/statefulsetappsmith-redis-replicas.yaml
Normal file
171
apps-kustomized/appsmith/statefulsetappsmith-redis-replicas.yaml
Normal file
|
|
@ -0,0 +1,171 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: StatefulSet
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: replica
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
name: appsmith-redis-replicas
|
||||||
|
namespace: appsmith
|
||||||
|
spec:
|
||||||
|
persistentVolumeClaimRetentionPolicy:
|
||||||
|
whenDeleted: Retain
|
||||||
|
whenScaled: Retain
|
||||||
|
podManagementPolicy: OrderedReady
|
||||||
|
replicas: 1
|
||||||
|
revisionHistoryLimit: 10
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/component: replica
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
serviceName: appsmith-redis-headless
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
checksum/configmap: 200ea504d6238919d0d307d6a9532731dc31f75b892c7c3aa5c0ac0e6d33989f
|
||||||
|
checksum/health: 773ea337f77df0444ffc318b00d3e78d6dab5a70ff1a5ba67bf18d98ad459fa9
|
||||||
|
checksum/scripts: c8705e5003141308d45cbfb90346393c427657644ab7aea26bcb88fff444a244
|
||||||
|
checksum/secret: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
|
||||||
|
creationTimestamp: null
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: replica
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/managed-by: Helm
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
helm.sh/chart: redis-16.11.2
|
||||||
|
spec:
|
||||||
|
affinity:
|
||||||
|
podAntiAffinity:
|
||||||
|
preferredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
- podAffinityTerm:
|
||||||
|
labelSelector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/component: replica
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
namespaces:
|
||||||
|
- appsmith
|
||||||
|
topologyKey: kubernetes.io/hostname
|
||||||
|
weight: 1
|
||||||
|
containers:
|
||||||
|
- args:
|
||||||
|
- -c
|
||||||
|
- /opt/bitnami/scripts/start-scripts/start-replica.sh
|
||||||
|
command:
|
||||||
|
- /bin/bash
|
||||||
|
env:
|
||||||
|
- name: BITNAMI_DEBUG
|
||||||
|
value: "false"
|
||||||
|
- name: REDIS_REPLICATION_MODE
|
||||||
|
value: slave
|
||||||
|
- name: REDIS_MASTER_HOST
|
||||||
|
value: appsmith-redis-master-0.appsmith-redis-headless.appsmith.svc.cluster.local
|
||||||
|
- name: REDIS_MASTER_PORT_NUMBER
|
||||||
|
value: "6379"
|
||||||
|
- name: ALLOW_EMPTY_PASSWORD
|
||||||
|
value: "yes"
|
||||||
|
- name: REDIS_TLS_ENABLED
|
||||||
|
value: "no"
|
||||||
|
- name: REDIS_PORT
|
||||||
|
value: "6379"
|
||||||
|
image: docker.io/redis:7.0.15
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
livenessProbe:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- sh
|
||||||
|
- -c
|
||||||
|
- /health/ping_liveness_local_and_master.sh 5
|
||||||
|
failureThreshold: 5
|
||||||
|
initialDelaySeconds: 20
|
||||||
|
periodSeconds: 5
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 6
|
||||||
|
name: redis
|
||||||
|
ports:
|
||||||
|
- containerPort: 6379
|
||||||
|
name: redis
|
||||||
|
protocol: TCP
|
||||||
|
readinessProbe:
|
||||||
|
exec:
|
||||||
|
command:
|
||||||
|
- sh
|
||||||
|
- -c
|
||||||
|
- /health/ping_readiness_local_and_master.sh 1
|
||||||
|
failureThreshold: 5
|
||||||
|
initialDelaySeconds: 20
|
||||||
|
periodSeconds: 5
|
||||||
|
successThreshold: 1
|
||||||
|
timeoutSeconds: 2
|
||||||
|
securityContext:
|
||||||
|
runAsUser: 1001
|
||||||
|
startupProbe:
|
||||||
|
failureThreshold: 22
|
||||||
|
initialDelaySeconds: 10
|
||||||
|
periodSeconds: 10
|
||||||
|
successThreshold: 1
|
||||||
|
tcpSocket:
|
||||||
|
port: redis
|
||||||
|
timeoutSeconds: 5
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /opt/bitnami/scripts/start-scripts
|
||||||
|
name: start-scripts
|
||||||
|
- mountPath: /health
|
||||||
|
name: health
|
||||||
|
- mountPath: /data
|
||||||
|
name: redis-data
|
||||||
|
- mountPath: /opt/bitnami/redis/mounted-etc
|
||||||
|
name: config
|
||||||
|
- mountPath: /opt/bitnami/redis/etc
|
||||||
|
name: redis-tmp-conf
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
restartPolicy: Always
|
||||||
|
schedulerName: default-scheduler
|
||||||
|
securityContext:
|
||||||
|
fsGroup: 1001
|
||||||
|
serviceAccount: appsmith-redis
|
||||||
|
serviceAccountName: appsmith-redis
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
volumes:
|
||||||
|
- configMap:
|
||||||
|
defaultMode: 493
|
||||||
|
name: appsmith-redis-scripts
|
||||||
|
name: start-scripts
|
||||||
|
- configMap:
|
||||||
|
defaultMode: 493
|
||||||
|
name: appsmith-redis-health
|
||||||
|
name: health
|
||||||
|
- configMap:
|
||||||
|
defaultMode: 420
|
||||||
|
name: appsmith-redis-configuration
|
||||||
|
name: config
|
||||||
|
- name: redis-tmp-conf
|
||||||
|
updateStrategy:
|
||||||
|
rollingUpdate:
|
||||||
|
partition: 0
|
||||||
|
type: RollingUpdate
|
||||||
|
volumeClaimTemplates:
|
||||||
|
- apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/component: replica
|
||||||
|
app.kubernetes.io/instance: release-name
|
||||||
|
app.kubernetes.io/name: redis
|
||||||
|
name: redis-data
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 8Gi
|
||||||
|
storageClassName: longhorn-fast
|
||||||
|
volumeMode: Filesystem
|
||||||
|
status:
|
||||||
|
phase: Pending
|
||||||
Loading…
Add table
Reference in a new issue