Wan't to introduce a VyOS kubelet and have some dev questions

Goal:

  • Join k8s cluster as master and or worker by introducing host, id and hash information to VyOS configuration
  • Utilize existing podman integration to drive cluster’s work
  • Provide kubectl as a tool for cluster management
  • Create a proof of concept merge request to trigger review (Not expected to hit main but to create a first picture which can be discussed)

Questions:

  • I already have an account for VyOS development portal, what else?
  • I do not know VyOS architecture and internals aside of default debian stuff, are there docs?
  • I do not have a proper development environment yet, what does proper mean?
  • I do not know how to get development cycles efficient (rebuilding whole router image, redeploy it as VM, …?)
  • I do not know how to effectively debug

Further goals

  • Build cluster from scratch using VyOS configuration.
  • Spawn a kubernetes cluster across the world by just setting up vyos appliances everywhere as a swarm, the infrastructure below shall not matter as long as routes are provided (auto OpenVPN bridging)

Tickets: ⚓ T5380 VyOS Kubelet (k8s)

BR
Ralph

Hi @udet!

I’ll try my best to answer your questions one by one.

  1. VyOS Development Portal - Having an account for the VyOS development portal is a great start! You can access various development resources, participate in discussions, and collaborate with other community members. Don’t forget to join our Slack channel - Slack Invite Link to engage with the community in real-time.

  2. VyOS Architecture and Documentation - To get familiar with VyOS architecture and internals beyond the default Debian stuff, our official documentation is the go-to resource. Here’s the link to get you started: VyOS Documentation. The documentation covers a wide range of topics, helping you understand VyOS at a deeper level. Here are other resources: Build VyOS and VyOS Knowledge Base.

  3. Proper Development Environment - A proper development environment ensures you can efficiently compile and test changes. You can refer to these guides for settings your development environment: Building VyOS and Development Process.

  4. Efficient Development Cycles - To optimize your development cycles, consider using vyos-build to build specific parts of VyOS instead of the entire image and keep up to date on releases.

  5. Effective Debugging - Debugging is a crucial aspect of the development process. VyOS is built on Debian, so many standard Debian debugging techniques. You may find this document on debugging VyOS useful: Debugging VyOS.

I’ll continue researching to provide you with more helpful insights. If I come across any additional information, I’ll be sure to share it with you.

Best regards,
Joe

1 Like