Differences between proxy/native charms


I am a relatively recent NetApp Developer and I’ve seen a lot of people talking about native charms and proxy charms, but I never understood it. What are the differences between them and when are they used?

Thank you!

Hello Jack,

Proxy charms are charms that run outside the application itself, meaning that it runs inside an operator (normally in LXD containers). Then, when OSM triggers the proxy charm, it will configure the VNF through their management interface.

On the other hand, native charms are placed inside the VNF itself. This way, OSM can trigger the charm directly in the VNF.

Generally, proxy charms are more useful, as they have the capability to add configurations to VNFs that are fixed (come with a custom image) and software cannot be installed inside.

Hope this answers your question!

ps: We actually address a bit of this in our own tutorial on Juju charms: Introducing OSM Primitives and Juju Charms - YouTube