Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update the CRI documentation for 1.7 #743

Merged
merged 1 commit into from
Jun 21, 2017
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 19 additions & 14 deletions contributors/devel/container-runtime-interface.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ pluggable container runtimes and build a healthier ecosystem.

## How to use CRI?

For Kubernetes 1.6:
For Kubernetes 1.6+:

1. Start the image and runtime services on your node. You can have a single
service acting as both image and runtime services.
Expand All @@ -35,44 +35,49 @@ For Kubernetes 1.6:
`--container-runtime-endpoint` and `--image-service-endpoint`.
- Use the "remote" runtime by `--container-runtime=remote`.

Please see the [Status Update](#status-update) section for known issues for
each release. Note that CRI API is still in its early stages. We are actively
incorporating feedback from early developers to improve the API. Developers
should expect occasional API breaking changes.
CRI is still young and we are actively incorporating feedback from developers
to improve the API. Although we strive to maintain backward compatibility,
developers should expect occasional API breaking changes.

*For Kubernetes 1.5, additional flags are required:*
- Set apiserver flag `--feature-gates=StreamingProxyRedirects=true`.
- Set kubelet flag `--experimental-cri=true`.

## Does Kubelet use CRI today?

Yes, Kubelet uses CRI by default in 1.6.
Yes, Kubelet always uses CRI except for using the rktnetes integration.

We still maintain the old, non-CRI Docker integration, but it has been
deprecated and scheduled to be removed in the next release (1.7). Please file
a Github issue and include @kubernetes/sig-node-bugs for any CRI problem.
The old, pre-CRI Docker integration was removed in 1.7.

## Design docs and proposals
## Specifications, design documents and proposals

The Kubernetes 1.5 [blog post on CRI](http://blog.kubernetes.io/2016/12/container-runtime-interface-cri-in-kubernetes.html)
serves as a general introduction.

We plan to add CRI specifications/requirements in the near future. For now,
these proposals and design docs are the best sources to understand CRI
besides discussions on Github issues.

Below is a mixed list of CRI specifications/requirements, design docs and
proposals. We are working on adding more documentation for the API.

- [Original proposal](https://github.com/kubernetes/kubernetes/blob/release-1.5/docs/proposals/container-runtime-interface-v1.md)
- [Networking](https://github.com/kubernetes/community/blob/master/contributors/devel/kubelet-cri-networking.md)
- [Container metrics](https://github.com/kubernetes/community/blob/master/contributors/devel/cri-container-stats.md)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

? Deadlink.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's being added in another PR #742

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

- [Exec/attach/port-forward streaming requests](https://docs.google.com/document/d/1OE_QoInPlVCK9rMAx9aybRmgFiVjHpJCHI9LrfdNM_s/edit?usp=sharing)
- [Container stdout/stderr logs](https://github.com/kubernetes/kubernetes/blob/release-1.5/docs/proposals/kubelet-cri-logging.md)
- [Networking](https://github.com/kubernetes/community/blob/master/contributors/devel/kubelet-cri-networking.md)

## Work-In-Progress CRI runtimes

- [cri-o](https://github.com/kubernetes-incubator/cri-o)
- [rktlet](https://github.com/kubernetes-incubator/rktlet)
- [frakti](https://github.com/kubernetes/frakti)
- [cri-containerd](https://github.com/kubernetes-incubator/cri-containerd)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank!


## [Status update](#status-update)
### Kubernetes v1.7 release (Docker-CRI integration GA, container metrics API)
- The Docker CRI integration has been promoted to GA.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to mention --enable-cri flag is removed?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will do

- The legacy, non-CRI Docker integration has been completely removed from
Kubelet. The deprecated `--enable-cri` flag has been removed.
- CRI has been extended to support collecting container metrics from the
runtime.

### Kubernetes v1.6 release (Docker-CRI integration Beta)
**The Docker CRI integration has been promoted to Beta, and been enabled by
Expand Down