-
Notifications
You must be signed in to change notification settings - Fork 0
InstallKubernetesComponents
The execution components run in Kubernetes as pods. The following are necessary for execution:
- Puller always running
- Executor dynamically allocated by Puller
- Handlers dynamically allocated by Executor
- Docker repository accessible by Kubernetes & installed locally
- Kubernetes
- Maven 3.3.9
- Local clone of this repo!
All below...
You will need the clone of the repo to build all the necessary modules and create the images.
From the root of the repo run:
mvn clean install
Run this command and confirm the puller, executor, and sample images are listed:
docker images
cppull 1.0.0 1a847b2e3c3a About a minute ago 176MB
fhexec 1.0.3 39e12ebdc816 About a minute ago 180MB
pop-sample 1.0.2 5fa24507d7a6 2 minutes ago 147MB
docker tag cppull:1.0.0 <your docker repo>/<your docker namespace>/cppull:1.0.0
docker tag fhexec:1.0.0 <your docker repo>/<your docker namespace>/fhexec:1.0.3
docker tag pop-sample:1.0.0 <your docker repo>/<your docker namespace>/pop-sample:1.0.2
docker push <your docker repo>/<your docker namespace>/cppull:1.0.0
docker push <your docker repo>/<your docker namespace>/fhexec:1.0.3
docker push <your docker repo>/<your docker namespace>/pop-sample:1.0.2
Please setup the namespace and the service account (and local credentials if needed): Kubernetes Setup
Location: ./deploy/resourcepool/kubernetes/configmap
- Change
agendaProviderUrl
url - Change executor image repo
- Tweak
pullAlways
andimagePullPolicy
as desired - Tweak
reapCompletedPods
as desired
Apply with kubectl apply -f ConfigMap.yaml
- Change the
image
to your docker repo - Tweak the
imagePullPolicy
as desired
(do not apply yet!)
- No specific changes recommended.
(do not apply yet!)
- Change
agenda.progress.url
url - Setup any new entries in the
registry-json
section (if you plan to use sample you'll need theimageName
updated to point to your docker repo) - tweak
pullAlways
as desired - tweak
reapCompletedPods
as desired
Apply with kubectl apply -f ConfigMap.yaml
- Change
agenda.progress.url
url - Change
pop.kubernetes.podconfig.docker.imageName
to point to an image available in your docker repo. - tweak
pullAlways
as desired - tweak
reapCompletedPods
as desired
Apply with kubectl apply -f ConfigMap.yaml
- Navigate to
./deploy/resourcepool/kubernetes/configmap/puller
- Start the puller deployment with:
kubectl apply -f Deployment.yaml
- Start the puller service with:
kubectl apply -f Service.yaml
- Watch the logs for successful calls to getAgenda
- Submission
- Scheduling
-
Execution
the ResourcePool
Agenda
the workflow
Agenda Template
the workflow definition
Customer
Insight
the scheduling queue definition
Operation Progress
the state of the running Agenda operations
Progress
the state of the running Agendas
ResourcePool
the processing resources
Agenda Service
the workflow submission
Progress Service
rolled up agenda progress summary
ResourcePool Service
getting work and updating progress
AgendaReclaimer
restarting stuck Agendas
AgendaRetry
retrying failed Agendas
DataObjectReaper
reaping expired data objects
PodReaper
reaping stuck Kubernetes pods