You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In order to make contributions to the SSB, the Data.gov Core Team wants to follow these steps to become familiar with the development, deployment, maintenance and management of SSB components.
Acceptance Criteria
GIVEN this ticket is complete
WHEN the assignee performs a demonstration
THEN foundational learning of the SSB is complete
NOTE: We are running v0.10.0 of the CSB, the documentation is for the newest version v0.19.9. This will require additional work to upgrade our CSB to the latest version. This tutorial assumes that we are sticking with v0.10.0 for the short term.
Pass KinD config/credentials to Terraform code directly and launch SolrCloud in KinD on local machine
Do terraform apply in provision directory to create SolrCloud
Do terraform apply in bind directory to generate credentials to talk to SolrCloud
Play around with SolrCloud
Do terraform destroy in bind directory to delete credentials
See that the credentials no longer work
Do terraform destroy in the provision directory to delete SolrCloud (notice, the KinD cluster is still running)
Destroy KinD cluster by doing make kind-down
WORKFLOW 2 - Running the CSB in Docker on Local Machine
Spin up KinD cluster by doing make kind-up
Build broker by doing make build up
Send a request to create solrcloud by doing something like docker exec csb-service-solr /bin/cloud-service-broker client provision --serviceid 'b9013a91-9ce8-4c18-8035-a135a8cd6ff9' --planid 'e35e9675-413f-4f42-83de-ad5003357e77' --instanceid "demo-user-solrcloud" --params '{ \"replicas\": 2 }'
Send a request to create credentials for solrcloud by doing something like docker exec csb-service-solr /bin/cloud-service-broker client bind --serviceid 'b9013a91-9ce8-4c18-8035-a135a8cd6ff9' --planid 'e35e9675-413f-4f42-83de-ad5003357e77' --instanceid "demo-user-solrcloud" --bindingid "testid"
NOTE: The Terraform state is managed in the docker container running the broker (IN THIS CASE), since the resources are all local in KinD, it is okay to completely destroy the container without deprovisioning. HOWEVER, if this was creating resources on AWS, those resources would need to be manually cleaned up in the case this container was destroyed before deprovisioning all instances.
Send a request to unbind
Send a request to deprovision
Stop/Remove the broker container and tear down KinD
Update the app-setup-<service>.sh script to reference the new version
Push PR to develop branch.
Check the deployment in github actions.
If successful, try to create service in development-ssb space
If not successful, contact @nickumia or @mogul for additional explanations
If everything is functional from the development-ssb test, create PR to main
Review terraform plan comment in PR (generated from github actions)
If plan looks acceptable, merge and see change in production!
If plan does not look acceptable, then evaluate changes and correct as necessary.
An "acceptable" plan varies by situation, however, most updates will just change the broker app (i.e. a specific one, whether it's solr or eks). However, if you are adding additional resources, of course new things will be created. If a resource is changing that should NOT be affected by the changes in the PR, then that definitely constitutes as a BAD plan.
The text was updated successfully, but these errors were encountered:
User Story
In order to make contributions to the SSB, the Data.gov Core Team wants to follow these steps to become familiar with the development, deployment, maintenance and management of SSB components.
Acceptance Criteria
WHEN the assignee performs a demonstration
THEN foundational learning of the SSB is complete
Background
Nick is leaving 😢
Security Considerations (required)
Knowledge Transfer is important and needs to happen to maintain awareness of the project.
Sketch
Theoretical Learning
v0.10.0
of the CSB, the documentation is for the newest versionv0.19.9
. This will require additional work to upgrade our CSB to the latest version. This tutorial assumes that we are sticking withv0.10.0
for the short term.datagov-brokerpak-eks
ANDdatagov-brokerpak-solr
KinD
helm_release
fromhelm
providerPractical Learning (the Solrcloud example here "should" be very similar to the environment in which airflow would exist.)
datagov-brokerpak-solr
KinD
cluster by doingmake kind-up
KinD
config/credentials toTerraform
code directly and launchSolrCloud
inKinD
onlocal machine
terraform apply
inprovision
directory to create SolrCloudterraform apply
inbind
directory to generate credentials to talk to SolrCloudterraform destroy
inbind
directory to delete credentialsterraform destroy
in theprovision
directory to delete SolrCloud (notice, theKinD
cluster is still running)KinD
cluster by doingmake kind-down
KinD
cluster by doingmake kind-up
make build up
docker exec csb-service-solr /bin/cloud-service-broker client provision --serviceid 'b9013a91-9ce8-4c18-8035-a135a8cd6ff9' --planid 'e35e9675-413f-4f42-83de-ad5003357e77' --instanceid "demo-user-solrcloud" --params '{ \"replicas\": 2 }'
docker exec csb-service-solr /bin/cloud-service-broker client bind --serviceid 'b9013a91-9ce8-4c18-8035-a135a8cd6ff9' --planid 'e35e9675-413f-4f42-83de-ad5003357e77' --instanceid "demo-user-solrcloud" --bindingid "testid"
KinD
, it is okay to completely destroy the container without deprovisioning. HOWEVER, if this was creating resources on AWS, those resources would need to be manually cleaned up in the case this container was destroyed before deprovisioning all instances.KinD
datagov-brokerpak-eks
ssb-development
accountterraform/modules/provision-aws
directory.kubectl
commandsterraform apply
in theterraform/modules/bind
directory.terraform destroy
in theterraform/modules/bind
directory.terraform destroy
in theterraform/modules/provision-aws
directory.datagov-brokerpak-eks
repo (either terraform or broker workflow).datagov-brokerpak-solr
repo (either terraform or broker workflow).app-setup-<service>.sh
script to reference the new versiondevelop
branch.development-ssb
spacedevelopment-ssb
test, create PR tomain
terraform plan
comment in PR (generated from github actions)The text was updated successfully, but these errors were encountered: