Cloud Foundry Advisory Board Call, Aug 2022: Korifi Architecture Updates
The Cloud Foundry Community Advisory Board (CAB) meeting in August focused on the updates to the architecture of Korifi. There were also a couple of reminders for the upcoming Cloud Foundry Day, which is set for October 25, 2022. The call was moderated by Ram Iyengar from the CF Foundation.
Korifi architecture updates
During the call, Matt Royal of VMware explained that the Korifi team was making changes to the project’s architecture to enable plugging alternative workflows for building and running different implementations. However, he also provided a disclaimer saying that the architecture is undergoing active development and breaking changes are being made frequently. The design right now may not be the same exact architecture in a week, but it should give people a good idea of what is in place at the moment.
“Originally, Korifi directly managed both building and running of apps. We used kpack images for the building and StatefulSets for the running,” explained Matt. “We introduced BuildWorkload and AppWorkload (formerly RunWorkload) resources to support alternative implementations of the build and run workflow.”
Matt also introduced two new terms: Builders and Runners.
- Builders react to the creation of a BuildWorkload by building images from a source.
- Runners react to the creation of an AppWorkload by running a pod for each requested app instance.
Both Builders and Runners update the status of their Workload resource to communicate back to Korifi. Then, Korifi ships with kpack-image-builder and statefulset-runner, which implement the previous build and workflows.
“One thing worth noting, after we introduced this, the behavior in Korifi is actually still the same. We’ve just taken the existing behavior that was part of Korifi core and put them into these sub projects called kpack-image-builder and statefulset-runner.” —Matt Royal, VMware
According to Matt, some of the goals behind the change in architecture are:
- Minimizing the complexity of implementing build and run workflows
- Creating an abstraction boundary
- Supporting one active builder and one active runner at a time
“In the short term, any given deployment should only have one component that’s actively doing the building and one component that’s doing the running. In the future, we may add support for having multiple concurrent builders and runners.” —Matt Royal, VMware
In addition to AppWorkload and BuildWorkload, the Korifi team also added task support through TaskWorkload, noted Giuseppe Capizzi of VMware. “The default implementation uses Jobs, so it’s the same spirit,” explained Giuseppe.
“A lot of these [new changes] are inspired by the previous Eirini implementation. So, we’ve basically replaced the Eirini types with these new types that are a bit more straightforward to use.” —Giuseppe Capizzi, VMware
CF Day updates
With Cloud Foundry Day set for October 25, Ram reminded members of the community that the call for proposals (CFP) ends on August 26. He also mentioned that the foundation is looking for volunteers for the program committee, which decides what tracks are chosen for the stage during Cloud Foundry Day. Anyone interested in volunteering can fill up this form.
“The last day for CFP submissions is a little over a week away. If you’re interested in submitting a CFP for the Cloud Foundry Day, you have about 10 days to do that. We all typically tend to do this in the last couple of days, so we’ll send out some e-mail reminders.” —Ram Iyengar, CF Foundation
The next CAB call is tentatively scheduled for September 21, 2022, at 11 a.m. ET / 8 a.m. PT. Anyone interested in participating can join the CAB Slack channel.
Want details? Watch the video!
During another call on August 9, the Korifi Working Group also discussed the latest project developments.