Install Gluu CN with ALB controller
#Overview
The Gluu Server has been optimized with several container strategies that allow scaling micro-services and orchestrating them using Kubernetes. This tutorial will walk through installation of Gluu on AWS EKS (Elastic Kuberentes service ) with ALB controller.
#Installation
#Set up the cluster
#Resources
Follow this guide to install a cluster with worker nodes. We used four nodes of on all three available zones of instance type
t2.mediuminstance type. Please make sure that you have all theIAMpolicies for the AWS user that will be creating the cluster and volumes.Create the Kubernetes cluster. We will be using EKS but GKE is also fine to use. Example
eksctlcommand.eksctl create cluster --name gluualbcluster --version 1.19 --nodegroup-name standard-workers --node-type t2.medium --zones eu-central-1a,eu-central-1b,eu-central-1c --nodes 4 --nodes-min 1 --nodes-max 5 --region eu-central-1 --ssh-public-key "~/.ssh/id_rsa.pub"
#Requirements
The above guide should also walk you through installing
kubectl,aws-iam-authenticatorandaws clion the VM you will be managing your cluster and nodes from. Check to make sure.aws-iam-authenticator help aws-cli kubectl versionAfter setting up your EKS cluster start with installing the ALB controller following this guide
Amazon Aurora is a MySQL and PostgreSQL-compatible relational database built for the cloud, that combines the performance and availability of traditional enterprise databases with the simplicity and cost-effectiveness of open source databases. Gluu fully supports Amazon Aurora, and recommends it in production.
Create an Amazon Aurora database with MySQL compatibility version >=
Aurora(MySQL 5.7) 2.07.1and capacity typeServerless. Make sure the EKS cluster can reach the database endpoint. You may choose to use the same VPC as the EKS cluster. Save the master user, master password, and initial database name for use in Gluus helm chart.Download
pygluu-kubernetes.pyz. This package can be built manually.Run :
./pygluu-kubernetes.pyz helm-installOnce the installation has finished and you can access the GUI. Head to
Configuration > JSON Configuration > OxTrust Configuration, then setrptConnectionPoolUseConnectionPoolingtofalse.Restart oxTrust.
kubectl rollout restart statefulset <helm-name>-oxtrust -n <namespace> # kubectl rollout restart statefulset gluu-oxtrust -n gluu
