Releases: rik-org/rik
Releases · rik-org/rik
v1.1.0-rc2
Highlight: We improved the network management on Riklet in order to reduce friction when working with RIK.
What's Changed
Features
- fix(riklet): microVM external network access (#119) @alexandrebrg
- chore(riklet): use firepilot binary autoload (#123) @MaloPolese
- feat: controller error handling (#97) @MaloPolese
- feat(riklet): graceful shutdown (#90) @kalil-pelissier
- feat(riklet): improve iptables management (#109) @alexandrebrg
Bug Fixes
- fix(riklet): microVM external network access (#119) @alexandrebrg
Documentation
- fix(riklet): microVM external network access (#119) @alexandrebrg
- chore(riklet): use firepilot binary autoload (#123) @MaloPolese
- docs: background color to white for mermaid schema (#112) @thomas-mauran
- docs: add KCD replay link (#111) @thomasgouveia
- docs(riklet): graceful shutdown (#90) @kalil-pelissier
- docs(riklet): network impl (#110) @alexandrebrg
- fix(docs): workload examples to match new definitions (#104) @JeremyLARDENOIS
Dependencies updates
4 changes
- chore(update): bump utils from v1.3.1 to v1.3.2 (#121) @dependabot
- chore(update): bump serde from 1.0.160 to 1.0.162 (#122) @dependabot
- chore(update): bump daemonize from 0.4.1 to 0.5.0 (#117) @dependabot
- chore(update): bump anyhow from 1.0.70 to 1.0.71 (#118) @dependabot
v1.1.0-rc1
Highlight: We improved the network management on Riklet in order to reduce friction when working with RIK.
What's Changed
Features
- feat(riklet): graceful shutdown (#90) @kalil-pelissier
- feat(riklet): improve iptables management (#109) @alexandrebrg
Documentation
- docs(riklet): graceful shutdown (#90) @kalil-pelissier
- docs(riklet): network impl (#110) @alexandrebrg
- fix(docs): workload examples to match new definitions (#104) @JeremyLARDENOIS
v1.0.0
This first release bring the basic functionalities of RIK, and is stable enough to be released. You can learn more about it through the README and through our documentation.
What features are available ?
Main purpose:
- Orchestrate workloads around a multi-node cluster
Components:
- Controller binary is used to manage the state of the cluster, it's the only source of truth
- Scheduler binary is used to determine the appropriate node for a workload
- Scheduler component is able to re-scheduler a workload when a worker is unhealthy
- Riklet binary is a worker, it receives workload from scheduler
- Rikctl binary can be used to manage your cluster
- Inter component communication is defined with
protobuf
Workloads:
- Workloads supported are
pod
andfunction
function
workloads expect to be bring a custom rootfs and linux kernel in order to runpod
workloads are containers which support containers from hub.docker.com
High-level architecture
┌──────────────────────────────────────────┐
│ Developer Computer │
│ ┌────────────────────────┐ │
│ │ Rikctl │ │
│ └────────────────────────┘ │
└─────────────────────┬────────────────────┘
│Communicate with Controller
│ HTTP API
┌───────────────┘
┌──────────┼───────────────────────────────────────┐
│ │ Master Node │
│ ▼ │
│ ┌────────────┐ ┌────────────┐ │
│ │ │ │ │ │
│ │ │ Request │ │ │
│ │ Controller │ Orchestration │ Scheduler │ │
│ │ │◀─────────────▶│ │ │
│ │ │ │ │ │
│ │ │ │ │ │
│ └────────────┘ └────────────┘ │
│ Manage ▲ │
│ Workloads │ │
└───────────────────────────────────────┼──────────┘
│
┌──────────────────────────┐ │
┌┴─────────────────────────┐│ │
┌┴─────────────────────────┐││ │
│ Worker Node │││ │
│ │││ │
│ │││ │
│ ┌────────────────┐ │││ │
│ │ │ │││ │
│ │ │ │││ │
│ │ Riklet │ │││ │
│ │ │◀───┼┼┼───────────┘
│ │ │ │││
│ │ │ │││
│ └────────────────┘ │││
│ │├┘
│ ├┘
└──────────────────────────┘