In response to a customer request to add Arm64 support for our VMware Event Router, I have been spending some more time playing with k3s (lightweight Kubernetes distribution for Arm) running on ESXi-Arm using a Raspberry Pi. Not only was this a good learning experience that exposed to me to the broader Arm ecosystem, which is still maturing but it also took me down several π°π³οΈ which got me exploring new tools that I had never used before such as Buildpacks and Docker buildx to name a few.
This past weekend, I was finally successful in setting up our VMware Event Router for Arm using the Knative processor on a k3s cluster using ESXi-Arm running on a Raspberry Pi 4b 8GB model! As of writing this, the following versions were used:
- Knative Serving v0.20.0
- Knative Net Contour v0.20.0
- Knative Eventing v0.20.1
- RabbitMQ Cluster Operator v0.5.0
Made some more progress w/@KnativeProject + @VMWEventBroker on k3s on @esxi_arm
β Knative Serving & Eventing
β @RabbitMQ Operator & Eventing
β @projectcontour
β @VMware Event RouterJust need to figure out @buildpacks_io for Arm64 - https://t.co/ChdkMLSXMp looks promising pic.twitter.com/XFWDiGONSB
— William Lam (@lamw) January 24, 2021
In addition, I was able to also convert the Knative python echo function that was originally created by my colleague Michael Gasch and build an Arm64 version of the Knative python echo function which demonstrates the integration of VEBA with the Knative processor connected to a vCenter Server as my event source.
π₯³ Successfully deployed & verified my arm64 python echo func w/@VMWEventBroker (Event Router) using the @KnativeProject processor!
Awesome for lightweight testing/development purposes on small VM w/k3s on @esxi_arm
Heck, donβt even need real vCenter, can run vcsim locally! pic.twitter.com/DuI16fvXfs
— William Lam (@lamw) January 24, 2021
For those interested in just the VMware Event Router Arm64 image, you can access it here and we plan to make that an official image shortly. For those interested in setting up a fully functional Arm deployment of VEBA and Knative processor, you can find the detailed instructions below.