- EKS Fargate profiles for
<fargate-profile-namespace>
. Guide - EKS Fargate coredns profile for coredns pods to run (create profile for
kube-system
namespace, refer guide from previous step) - EFS CSI Driver installed, mount points set and pv.yaml created. Refer Guide
- EKS ALB Controller, refer Guide.
Refer Helm Installation to install helm command
helm repo add frappe https://helm.erpnext.com
helm repo update
code erpnext-values.yaml
Change the following values:
- mariadbHost: set to hostname of managed db, e.g.
core-cluster.cluster-abc.region.rds.amazonaws.com
- redisQueueHost: set to uri of elasticache with database, e.g.
abc.pqr.0001.xyz.cache.amazonaws.com:6379/0
- redisCacheHost: set to uri of elasticache with database, e.g.
abc.pqr.0001.xyz.cache.amazonaws.com:6379/1
- redisSocketIOHost: set to uri of elasticache with database, e.g.
abc.pqr.0001.xyz.cache.amazonaws.com:6379/2
helm install <release-name> -n <fargate-profile-namespace> frappe/erpnext -f erpnext-values.yaml
code create-site.yaml
Change the following values:
<site.name.com>
change to domain name of the site to be created. e.g. admin.fxr.one<db-root-user>
change to mysql root user. e.g.frappe
<db-name>
change to db-name of database to be created for site.<SITES_PVC_NAME>
change to PVC created after helm chart install, get it using commandkubectl get pvc -n <fargate-profile-namespace>
.<base64-encoded-site-db-password>
replace with base64 encoded db-password for db to be created for site.<base64-encoded-mariadb-root-password>
replace with base64 encoded mariadb root password. e.g.echo -n "secretpassword" | base64
, use-n
to escape newline in base64.<base64-encoded-site-admin-password>
replace with base64 encoded site admin password. e.g.echo -n "secretpassword" | base64
, use-n
to escape newline in base64.
kubectl apply -f create-site.yaml -n <fargate-profile-namespace>
code erpnext-ingress.yaml
Change the following values:
<site.name.com>
change to domain name of the site to be created. e.g. admin.fxr.one<certificate-arn>
change to certificate arn, e.g.arn:aws:acm:ap-southeast-1:111122223333:certificate/4773ec2d-d90e-499d-9e9a-52c6956a55cb
<erpnext-service-name>
change to service created after helm chart install, get it using commandkubectl get svc -n <fargate-profile-namespace>
. DO NOT USE socketio service name.
kubectl apply -n <fargate-profile-namespace> -f erpnext-ingress.yaml