(Created page with "= Deploying with bash scripts = The following Kubernetes distributions are supported: * Openshift (Fully Supported) * GKE (Partially Supported) * AWS EKS (TBD) * Pure Kuberne...") |
|||
Line 8: | Line 8: | ||
== Requirements == | == Requirements == | ||
− | + | # {{#Widget:ExtLink|link=https://kubernetes.io/docs/tasks/tools/install-kubectl/|displaytext=Kubectl}} and {{#Widget:ExtLink|link=https://docs.helm.sh/using_helm/#installing-helm|displaytext=Helm}} client utilities | |
− | + | #* Tiller is not required. | |
+ | ## For Openshift deployments, install the ''{{#Widget:ExtLink|link=https://docs.helm.sh/using_helm/#installing-helm|displaytext=oc}}'' utility. | ||
+ | ## For GKE deployments, install and configure the ''{{#Widget:ExtLink|link=https://cloud.google.com/sdk/docs/#linux | ||
+ | |displaytext=gloud}}'' utility/ | ||
+ | # The scripts reside in the ''gws-microservices'' hg repository. | ||
+ | # Get your credentials and try using the utilities you've installed. We assume that your credentials are valid and they work without any errors. | ||
+ | ## For non-GKE platforms: copy your configuration to ~/.kube/config and try "kubectl get nodes" and see the cluster nodes list. | ||
+ | ## For GKE: follow the registration web-UI steps and try "gcloud container clusters list" and see all GKE clusters you have if any. | ||
+ | # $ cd gws-microservices/infrastructure/kubernetes/gws-deployment # The "helm" directory actually contains all helm-charts we are using. | ||
+ | #$ ls ../gws-settings # This will show you the environment files needed to source to operate a particular cluster with a particular environment. | ||
+ | # $ . ../gws-settings/<YOUR ENVIRONMENT SOURCE FILE> # After you source the cluster/env variables, you'll see all available commands. To create your own environment file you can use the others as templates. | ||
+ | # Import GWS-applications docker images to your container registry or add the GWS registries' keys to /etc/docker.d | ||
+ | ## Internal Kubernetes clusters, deployed on Genesys premise: Get the registries' keys and add them to /etc/docker.d on all hosts, then restart docker. | ||
+ | ## GKE. Get the GWS-microservices docker images tarball via any Genesys supply channel and import it to Google Container Registry as follows: "TARBALL=/full/path/to/GWS/apps/tarball push-containers-to-gke.sh" | ||
+ | |||
+ | === Working with Prometheus and Grafana === | ||
+ | {{NoteFormat|These services are deployed clusterwide and do not depend on GWS-applications' loads. }} | ||
+ | <pre> | ||
+ | $ ./monitoring-deploy.sh delete | ||
+ | $ ./monitoring-deploy.sh | ||
+ | </pre> | ||
+ | |||
+ | === Working with GWS Infrastructure=== | ||
+ | <pre> | ||
+ | $ ./gws-infra-deploy.sh delete | ||
+ | $ ./gws-infra-deploy.sh | ||
+ | </pre> | ||
+ | |||
+ | === Working with GWS Application Stack=== | ||
+ | <pre> | ||
+ | $ ./gws-app-deploy.sh delete | ||
+ | $ ./gws-app-deploy.sh | ||
+ | </pre> | ||
+ | |||
+ | === Pulling Current GWS Applications Container === | ||
+ | |||
+ | <pre> | ||
+ | - $ STACK_DOCKER_IMAGE_PATH=gws-registry-usw1.genhtcc.com ./pull-containers.sh | ||
+ | </pre> | ||
+ | |||
+ | === DNS Requirements === | ||
+ | |||
+ | All of the services, either cluster-wide, infrastructure or GWS-applications ingresses require DNS names to be pre-populated to get access to and for host-based naming virtualization. | ||
+ | * Openshit | ||
+ | * GKE | ||
+ | |||
[[Category:V:HTCC:9.0.0DRAFT]] | [[Category:V:HTCC:9.0.0DRAFT]] |
Revision as of 04:49, November 7, 2018
Deploying with bash scripts
The following Kubernetes distributions are supported:
- Openshift (Fully Supported)
- GKE (Partially Supported)
- AWS EKS (TBD)
- Pure Kubernetes (TBD)
Requirements
-
Kubectl and
Helm client utilities
- Tiller is not required.
- The scripts reside in the gws-microservices hg repository.
- Get your credentials and try using the utilities you've installed. We assume that your credentials are valid and they work without any errors.
- For non-GKE platforms: copy your configuration to ~/.kube/config and try "kubectl get nodes" and see the cluster nodes list.
- For GKE: follow the registration web-UI steps and try "gcloud container clusters list" and see all GKE clusters you have if any.
- $ cd gws-microservices/infrastructure/kubernetes/gws-deployment # The "helm" directory actually contains all helm-charts we are using.
- $ ls ../gws-settings # This will show you the environment files needed to source to operate a particular cluster with a particular environment.
- $ . ../gws-settings/<YOUR ENVIRONMENT SOURCE FILE> # After you source the cluster/env variables, you'll see all available commands. To create your own environment file you can use the others as templates.
- Import GWS-applications docker images to your container registry or add the GWS registries' keys to /etc/docker.d
- Internal Kubernetes clusters, deployed on Genesys premise: Get the registries' keys and add them to /etc/docker.d on all hosts, then restart docker.
- GKE. Get the GWS-microservices docker images tarball via any Genesys supply channel and import it to Google Container Registry as follows: "TARBALL=/full/path/to/GWS/apps/tarball push-containers-to-gke.sh"
Working with Prometheus and Grafana
Important
These services are deployed clusterwide and do not depend on GWS-applications' loads. $ ./monitoring-deploy.sh delete $ ./monitoring-deploy.sh
Working with GWS Infrastructure
$ ./gws-infra-deploy.sh delete $ ./gws-infra-deploy.sh
Working with GWS Application Stack
$ ./gws-app-deploy.sh delete $ ./gws-app-deploy.sh
Pulling Current GWS Applications Container
- $ STACK_DOCKER_IMAGE_PATH=gws-registry-usw1.genhtcc.com ./pull-containers.sh
DNS Requirements
All of the services, either cluster-wide, infrastructure or GWS-applications ingresses require DNS names to be pre-populated to get access to and for host-based naming virtualization.
- Openshit
- GKE
Comments or questions about this documentation? Contact us for support!