Feature: Kubernetes: Containers View - cockpit-project/cockpit GitHub Wiki
Containers listing view.
Notes
- Goal: Show and interact with containers running in kubernetes.
- Kubernetes containers are actually the real meat of the orchestration. Containers containers should be readily accessible for interaction diagnosis and status.
- Scope: The pods and nodes may be listed as aspects of what a container is running for/where, but they are not displayed as first class objects in this view.
- Answers questions like:
- "Which containers are actually running?"
- "Why is this container restarting, what is the failure?"
Stories
Phillip J. Fry leads a small IT at a moderately sized firm. His company has a modest data center.
Phillip is running the 'Poppler.io' application. 'Poppler.io' is an application that runs on top of a Kubernetes cluster. This morning the application stopped "working". Phillip uses the containers view to look at its containers, and examine the output of a container.
Hermes Conrad is the VP of engineering at a large corporation.
Hermes is exploring Kubernetes as a way to orchestrate containers. He has just setup a Kubernetes master, and add further machines. Hermes has no deep knowledge of Kubernetes, but Docker was seemed easy to discover hands-on, and wants to do the same here. Hermes uses the containers view to find a container, start a shell in it, and manually change a setting manually to see its effect.
Workflows
Phillip:
- Clicks on the a failed service on the Cockpit Kubernetes Dashboard
- Is taken to a listing of all containers in the service.
- He can see that one of the containers is waiting to start.
- Is able to diagnose a missing application container image that wasn't pushed to the right repo.
Hermes:
- Clicks on a service on the Cockpit Kubernetes Dashboard
- Is taken to a listing of all containers in the service.
- Adjusts the labels slightly to change the number of containers displayed.
- Expands a container to show its log output.
- Clicks a button to start a shell in the terminal.
- Configures a file in a config directory of the container.
- Watches for its effect on the application.
Implementation Notes and Technical Limitations
- Watch for changes in kubernetes and update listing on the fly.
- Failures should stand out.
- Try to limit display of information to what we get from kubernetes.
- The exception is terminal/logs interaction, which we do with cockpit on the destination node directly.
Wireframes
Feedback
Please give feedback on the above! This is the place where those not working on the feature can provide insight, questions, limitations, notes etc.
- ... (sign name)
- ... (sign name)