A charmed operator (often called a “charm”) contains all the instructions necessary for deploying and configuring application units. Charmed operators are publicly available on Charmhub and represent the distilled knowledge of experts. Charmed operators make it easy to reliably and repeatedly deploy applications across many clouds, allowing the user to scale the application with minimal effort.
The simplest scenario is when a charmed operator is deployed (by the Juju client) with the
deploy command without any options to qualify the request. By default, a new instance will be created in the backing cloud and the application will be installed within it:
A subordinate charmed operator augments the functionality of another regular charmed operator, which in this context becomes known as the principal charmed operator. When a subordinate charmed operator is deployed no units are created. This happens only once a relation has been established between the principal and the subordinate.