Install
Last updated
Last updated
Prerequisites to install coKreat
Sunbirded Setup
Kubernetes Cluster
Private GitHub repository to store ansible inventory
Fully Qualified Domain Name (FQDN) with SSL
Azure Storage account
Docker hub account
Public IP
Vm's(1 KP vm, 1 DB vm)
Copy cokreat jenkins jobs to /varl/ib/jenkins/jobs folder in jenkins machine and restart jenkins service
update inventory
Use the following git commands sequentially to clone and update your private GitHub repository -
Copy the directory sunbird-devops/private_repo/ansible/inventory
to your private repo/ansible/inventory/env
Update the files common.yml, hosts, and secrets.yml under DockDev directories. After updating, push them to your private repo branch
Build/job/DockCore/player
release-6.0.1
Creation-Portal
Build/job/DockCore/Program
release-6.0.1
Program service
Build/Core/APIManager
release-4.10.0_RC1
The API Gateway
Build/Core/ApiManagerEcho
master-RC1
Simply echos the request
Build/Core/Assessment
release-5.6.0_RC1
Handles course assessments
Build/Core/Bot
release-3.9.0_RC1
Frontend for the chatbot
Build/Core/Cassandra
release-4.10.0_RC1
Handles the Cassandra database schema
Build/Core/CassandraTrigger
release-4.9.0_RC1
Creates few Cassandra Triggers
Build/Core/Content
github_release_tag: release-5.5.0_RC1,,cloud_store_group_id:org.sunbird,cloud_store_artifact_id:cloud-store-sdk,cloud_store_version:1.4.6
Handles the Contents and Content Metadata
Build/Core/KnowledgeMW
release-5.2.0
Middleware for Content service
Build/Core/Player
release-6.0.1
Handles the UI elements
Build/Core/DockOpensaber
vidyadaan, creation_portal_branch:6.0.1
Build/Core/Proxy
release-3.8.0_RC14
Nginx web server / proxy
Build/Core/Router
release-3.9.0_RC1
Backend for chatbot
Build/Core/Search
release-5.1.0
Handles contents / course search
Build/Core/Taxonomy
release-5.1.0
Handles the taxonomies
Build/Core/Telemetry
release-3.3.0_RC1
Handles the telemetry generated
Build/KnowledgePlatform/FlinkJobs
github_release_tag: release-5.5.0_RC2,cloud_store_group_id:org.sunbird,cloud_store_artifact_id:cloud-store-sdk_2.12,cloud_store_version:1.4.6
Multiple functions like search indexing, video streaming
Build/KnowledgePlatform/InquiryFlinkJob
release-5.7.0_RC2
Build/KnowledgePlatform/Learning
github_release_tag: release-5.4.1_RC2, profile_id: platform-services
Handles frameworks
Build/KnowledgePlatform/Neo4j
release-4.5.0_RC12
Generates neo4j plugins
Build/KnowledgePlatform/SyncTool
release-4.5.0_RC12
Generates a jar to manually sync contents
Build/Plugins/ContentEditor
release-5.2.1_RC3
A bunch of plugins to edit certain types of content
Build/Plugins/ContentPlayer
release-5.1.0_RC2
A bunch of plugins to handle content playback
Build/Plugins/ContentPlugins
release-5.2.1_RC4
A bunch of base plugins to support the content editors and content player
Build/Plugins/GenericEditor
release-5.2.1_RC2
A bunch of plugins to edit certain types of content
ed dataproducts in dockdev
Build/Lern/LernDataProducts
release-5.3.1_RC11
Note:
Jobs can be run in parallel to speed up execution. The only exception is you should NOT run multiple jobs which will provision packages on the same server in parallel
Provision/Core/ApplicationElasticSearch
release-6.0.0
Installs Elasticsearch used by the applications
Provision/Core/Cassandra
release-5.1.0
Installs Cassandra database
Provision/Core/ESMapping
indices_name: all, branch_or_tag: release-5.0.0_RC2
Creates Elasticsearch indices and mappings
Provision/Core/Postgres
release-5.0.0_RC2
Installs Postgres database
Provision/Core/PostgresDbUpdate
release-5.0.0_RC2
Creates Postgres tables, schema and users
Provision/KnowledgePlatform/Learning
release-5.0.0_RC2
Install tomcat and other pre-requisites for Learning service
Provision/KnowledgePlatform/Neo4j
release-5.1.0
Installs Neo4j database
Every job in the Build directory has a corresponding job in ArtifactUpload directory with the same name
These jobs are auto triggered and usually run without issues after the corresponding job in the build directory succeeds
The job will fail if your ansible inventory setup is incorrect or incomplete
If the job has failed, fix the ansible variables issue and rerun the job to upload the artifact / docker image
Ensure the artifact upload jobs are successful before proceeding
Note:
We will run the jobs which are a pre-requisite for other jobs first
The pre-requisite jobs reside in different folders so we will be jumping across folders
Jobs in the Deploy directory can be run in parallel and don’t have any restrictions if the code is from same repo unlike the Build directory
Ensure you don’t run those jobs in parallel which modify the databases (such as cassandra, neo4j etc)
Deploy/Kubernetes/CassandraDBUpdate
release-5.1.0-vdn
Creates / Updates Cassandra DB schema
Deploy/KnowledgePlatform/CassandraDbUpdate
release-5.1.0
Creates / Updates Cassandra DB schema
Deploy/Kubernetes/Cassandra
release-5.1.0-vdn
Creates / Updates Cassandra DB schema
Deploy/Kubernetes/KafkaSetup
release-5.1.0-vdn
Creates / Updates Kafka Topics
Deploy/KnowledgePlatform/KafkaSetup
release-5.0.0_RC2
Creates / Updates Kafka Topics
Deploy/KnowledgePlatform/Learning
release-5.2.0-vdn
Deploys the Learning service on tomcat
Deploy/KnowledgePlatform/Neo4j
release-5.1.0
Deploys the Neo4j plugins
Deploy/KnowledgePlatform/Neo4jDefinitionUpdate
release-5.2.0
Creates / Updates the Neo4j database
Deploy/KnowledgePlatform/FlinkJobs
branch_or_tag: release-6.0.0-vdn, job_names_to_deploy: Select All
Deploys the Flink jobs in Kubernetes cluster
Deploy/KnowledgePlatform/InquiryFlinkJob
inquiry_release_tag: release-5.7.0_RC1, branch_or_tag: release-6.0.0-vdn, job_names_to_deploy: Select All
Deploys the InquiryFlink jobs in Kubernetes cluster
Deploy/Kubernetes/nginx-private-ingress
release-6.0.0-vdn
Deploys nginx with a private load balancer
Deploy/Kubernetes/APIManager
release-6.0.0-vdn
Deploys Kong, the API gateway
Deploy/Kubernetes/OnboardAPIs
release-5.1.0-vdn
Creates the APIs in Kong
Deploy/Kubernetes/OnboardConsumers
release-5.1.0-vdn
Creates the consumers in Kong. Now read the comment mentioned in Core/Secrets.yml against the variable core_vault_sunbird_api_auth_token
Deploy/Kubernetes/UploadSchema
branch_or_tag: release-6.0.0-vdn, kp_branch_or_tag: release-4.9.0_RC8
Uploads the Content schemas to Azure blob
Deploy/Kubernetes/APIManagerEcho
release-6.0.0-vdn
Deploys Echo service
Deploy/Kubernetes/Opensaber
release-6.0.0-vdn
Deploys OpenSaber
Deploy/Kubernetes/Assessment
release-6.0.0-vdn
Deploys Assessment service
Deploy/Kubernetes/Bot
release-3.9.0_RC1
Deploys Bot service
Deploy/Kubernetes/Content
release-6.0.0-vdn
Deploys Content service
Deploy/Kubernetes/KnowledgeMW
release-6.0.0-vdn
Deploys KnowledgeMW service
Deploy/Kubernetes/Player
release-6.0.0-vdn
Deploys Player service
Deploy/Kubernetes/Program
release-6.0.0-vdn
Deploys Program service
Deploy/Kubernetes/Router
release-5.1.0
Deploys Router service
Deploy/Kubernetes/Search
release-6.0.0-vdn
Deploys Search service
Deploy/Kubernetes/Taxonomy
release-6.0.0-vdn
Deploys Taxonomy service
Deploy/Kubernetes/Telemetry
release-6.0.0-vdn
Deploys Telemetry service
Deploy/Kubernetes/nginx-public-ingress
release-5.1.0-vdn
Deploys the nginx web server. Now you can open visit your domain
Deploy/Plugins/ContentEditor
release-6.0.0
Deploys ContentEditor files to Azure blob
Deploy/Plugins/ContentPlayer
release-6.0.0
Deploys ContentPlayer files to Azure blob
Deploy/Plugins/ContentPlugins
release-6.0.0-vdn
Deploys ContentPlugins files to Azure blob
Deploy/Plugins/GenericEditor
release-6.0.0-vdn
Deploys GenericEditor files to Azure blob
Deploy/Dock/DataPipeline/EdDataProducts
release-5.3.1_RC11
CSP related changes.
cloud_store_group_id: org.sunbird
cloud_store_artifact_id: cloud-store-sdk_2.12
cloud_store_version: 1.4.6
Note: While deploy select set the module value as dock-dataproducts