Deploy Backbone Services

Once the cluster is ready and healthy you can start deploying backbones services.

            Deploy configuration and deployment in the following Services Lists

  1.   Backbone (Redis, ZooKeeper-v2, Kafka-v2,elasticsearch-data-v1, elasticsearch-client-v1, elasticsearch-master-v1)

  2.   Gateway (Zuul, nginx-ingress)

Prerequisites

  • Understanding of VM Instances, LoadBalancers, SecurityGroups/Firewalls, nginx,   DB  Instance, Data Volumes.

  • Experience of kubernetes, docker, jenkins, helm, golang, Infra-as-code.

  • Install go tools (https://golang.org/doc/install#install)

 Deploy configuration and deployment backbone services:        

  1. Clone the git repo GitHub - egovernments/DIGIT-DevOps . Copy existing dev.yaml and dev-secrets.yaml with new environment name (eg. <new_env>.yaml and <new_env>-secrets.yaml) 

  2.  Modify the global domain and set namespaces create to true

          

3.  Modify the below mentioned changes for each backbone services:

Eg. For Kafka-v2 If you are using AWS as a cloud provider, change the respective volume id’s and zone’s

(You will get the volume ids and zone details from either remote state bucket or from AWS portal)

Eg. Kafka-v2 If you are using Azure cloud provider, change the diskName and diskUri

(You will get the volume ids and zone details from either remote state bucket or from Azure portal)

Eg. Kafka-v2 If you are using ISCSI , change the targetPortal and iqn.

4.  Deploy the backbone services using  go command

cd DIGIT-DevOps/deploy-as-code/egov-deployer go run main.go deploy -e dev -p -c 'kafka-v2,redis,zookeeper-v2,elasticsearch-data-v1,elasticsearch-master-v1,playground,cert-manager,kafka-connect,kafka-connect-restart-tasks,kibana-v1,nginx-ingress'

Modify the “dev” environment name with your respective environment name.

 Flags:

  • e  --- Environment name

  • p  --- Print the manifest 

  • c  --- Enable Cluster Configs

5. Check the Status of pods

kubectl get pods --all-namespaces