From zero to hero: Write your first Kubernetes charm¶
This tutorial will introduce you to the official way to write a Kubernetes charm — that is, how to equip an application with all the operational logic that it needs so that you can manage it on any Kubernetes cloud with just a few commands, using Juju.
Important
Did you know? Writing a charm is also known as ‘charming’!
What you’ll need:
A working station, e.g., a laptop with amd64 architecture.
Familiarity with Juju.
Familiarity with the Python programming language, Object-Oriented Programming, event handlers.
Understanding of Kubernetes fundamentals.
What you’ll do:
- Set up your development environment
- Study your application
- Create a minimal Kubernetes charm
- Make your charm configurable
- Expose the version of the application behind your charm
- Integrate your charm with PostgreSQL
- Preserve your charm’s data
- Expose operational tasks via actions
- Observe your charm with COS Lite
- Write unit tests for your charm
- Write scenario tests for your charm
- Write integration tests for your charm
- Open a Kubernetes port in your charm
- Publish your charm on Charmhub
Next steps¶
By the end of this tutorial you will have built a machine charm and evolved it in a number of typical ways. But there is a lot more to explore:
If you are wondering… |
visit… |
---|---|
“How do I…?” |
|
“What is…?” |
|
“Why…?”, “So what?” |