JAX K8s (Kubernetes) Clusters
Kubernetes Overview
Kubernetes, often abbreviated as K8s, is an open-source platform designed to automate the deployment, scaling, and management of containerized applications. It provides an abstraction over the complexity of managing hardware and network infrastructure, enabling applications to be deployed as sets of services that can run anywhere. This enhances scalability and reliability by decoupling application development from specific infrastructure concerns, allowing for greater flexibility and efficiency in deploying and managing applications.
There are three Kubernetes clusters set up for shared use:
jax-cluster-sandbox-10- Sandbox cluster for testing terraform changes.jax-cluster-dev-10- Development cluster for development and testing.jax-cluster-prod-10- Production cluster for running applications.
Cluster Ingress
Each cluster has an ingress controller that is used to route traffic to the appropriate service. These ingress controllers each have a single static IP. To configure DNS for your application, you should contact IT to route a DNS name to the appropriate IP address.
jax-cluster-sandbox-10-35.243.152.235jax-cluster-dev-10-35.190.162.93jax-cluster-prod-10-35.231.66.214
Cluster Access
Sandbox Access
The sandbox cluster is intended for infrastructure development purposes and is not considered stable for developer use. If you have a need to use the sandbox cluster, please contact the SQA team to discuss.
Developer Access
Developers are provided view access to all jax-cluster-* managed resources. Additional
access is provided to the jax-cluster-dev-10 cluster. Access is managed
by membership in the jax-compsci-nc-dev-01-developer@jax.org group. To get access
to the cluster, you should contact the SQA team to get added to the
group.
You can view the exact permissions that are provided to the group by inspecting the terraform definition in the terraform-prod repository.
The list of developers who currently have access are:
- Abigail.Ames@jax.org
- Christina.Closson@jax.org
- Matt.Dunn@jax.org
- Dave.Walton@jax.org
- John.Bluis@jax.org
- Matthew.Gerring@jax.org
- Nick.Sebasco@jax.org
- Baha.ElKassaby@jax.org
- Tim.Holland@jax.org
- Francisco.Castellanos@jax.org
- Hongping.Liang@jax.org
- Benjamin.Walton@jax.org
- Georgi.Kolishovski@jax.org
Note
If you need permissions beyond what are currently provided to this group, please contact the SQA team to get your permissions updated.
Cloud SQL Access
Developers have access to connect to the Cloud SQL database instance used in the dev cluster. To connect to the database, you will need to use the Cloud SQL Proxy.
You can download the Cloud SQL Auth proxy by following these download instructions.
Once you have downloaded the proxy, you can connect to the database by running the following command:
Check Active GCP Account
Make sure that you are logged into the correct GCP account before running the proxy. You can check which account you are logged into by running the following command:
If you are not logged into the correct account, you can log into the correct account by running the following command:
You will be prompted to select the account you want to log into.
Production Access
Access to jax-cluster-prod-10 is provided through credentials managed in CICD. Please
contact the SQA team to get access set up in your project.