v0.4.0
版本发布时间: 2020-08-06 01:51:56
krustlet/krustlet最新发布版本:v1.0.0-alpha.1(2021-07-28 01:06:02)
Krustlet v0.4.0 focuses on Windows support, Init Containers, and testing improvements. For more details on what isn't implemented yet, see the Known Issues section.
Because this is pre-release software, there are no backwards compatibility guarantees for the Rust API or functionality. However, we will do our best to document any breaking changes in future releases.
Caveats
Please note that this is NOT production-ready software, but it is in a usable state. The WASI standard and wasmtime are still under heavy development, and because of this there are key features (like networking) that are missing; these will appear in the future. However, there is networking support available in wasCC.
Notable Features/Changes
- Windows support has been added, including pre-built binaries. There are also build scripts written for PowerShell when building on Windows. Please consult the documentation to understand some of the caveats when running on Windows.
- We now have full Init Container support in the WASI provider. Init Containers are not supported on waSCC due to it being an entirely different runtime where Init Containers don't make much sense.
- The waSCC provider now supports automatic port allocation when
nodePort
isn't specified - The e2e test suite was greatly expanded and made more flexible
-
ImagePullPolicy
is now respected in both providers
Breaking changes
The oci-distribution
crate has unexported the Client
's version
and auth
methods as they are only meant to be used internally. The Client
fetch_manifest_digest
method now requires an &mut self
.
Known Issues/Missing Features
- Cloud volume mounting support
- Kubernetes networking support. The waSCC provider currently exposes the service on one of the node's ports, but there is nothing that updates
Service
s orEndpoint
s - Support for all pod phases/conditions (
ContainerCreating
,CrashLoopBackoff
, etc.). However, please note that running and error conditions are supported, so you'll know if your pod is in an erroneous state - Unsupported workloads (such as those dropped automatically onto a node like kube-proxy) can enter an error loop. This is more of a nuisance that will cause some logging noise, but not impact the running of Krustlet
- Modifying a bare pod's image is not implemented. Nothing will error, but Krustlet will not restart the "container"
- TLS bootstrapping does not auto-renew certificates when they are close to expiry
What's next?
Our next anticipated version is 0.5.0 (although we will cut a 0.4.1 if necessary). You can see a full list of issues planned for 0.5 in the milestone. We expect 0.5.0 to contain some major breaking changes, particularly around the Provider
API. However, we believe these changes will make it easier for developers to write their own providers and simplify the process for updating pod statuses. These changes will be clearly documented in the 0.5 release notes
Thanks
We also want to express a huge thanks to all of those in the community who contributed to this release. We appreciate your efforts in making this project a success.
Contributors to 0.4
- @kflansburg
- @itowlson
- @bacongobbler
- @thomastaylor312
- @radu-matei
Installation
Download Krustlet 0.4.0:
Check out our installation docs for information on how to install Krustlet.