Skip to content

Commit

Permalink
choosing an installation method doc
Browse files Browse the repository at this point in the history
  • Loading branch information
louiseschmidtgen committed Jan 8, 2025
1 parent 66772d6 commit 03facb3
Show file tree
Hide file tree
Showing 2 changed files with 68 additions and 0 deletions.
1 change: 1 addition & 0 deletions docs/canonicalk8s/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ Home <self>
:maxdepth: 6
src/about.md
Choose an installation method <src/snap/installation-methods.md>
Deploy from Snap package <src/snap/index.md>
Deploy with Juju <src/charm/index.md>
Deploy with Cluster API <src/capi/index.md>
Expand Down
67 changes: 67 additions & 0 deletions docs/src/snap/explanation/installation-methods.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Choosing an installation method

{{ product }} can be installed in a variety of ways, depending on your needs and
preferences. All installation methods provide a fully functional cluster with
upstream Kubernetes and additional built-in features such as networking, ingress
and storage. Your choice may be influenced by the cluster size, the
environment you are deploying to, and the life cycle management tools that you
prefer to use. The following sections describe the different installation
methods:

## Snap

The {{ product }} snap is a self-contained, simple to install package. It can
be installed on any Linux distribution that supports the
[snapd] service, such as
[Ubuntu]. If you're using a non-Linux system, we recommend creating virtual
machines using [Multipass] or [Lxd]. [Snaps] come with the advantage of
automatic and atomic updates making it easy for users to install, maintain and
update their software.

If you are looking for a straightforward way to get started with {{ product }},
and you don't intend to grow your cluster beyond a single node, installing
{{ product }} using the snap is the recommended installation method. Follow the
[getting-started guide] to install {{ product }} using the snap.

## Juju

[Juju] is an open-source orchestration engine that allows you to
deploy, configure, scale and operate {{ product }} on any infrastructure. Juju
uses charms which are encapsulated reusable software packages to define how
applications are deployed and related to each other. At its core, {{ product }}
comprises two Juju charms: a control plane charm and a worker charm.
Additionally, the Juju charm ecosystem provides further integrations, for
example an observability stack.

If you are looking to deploy {{ product }} in a public/private cloud
environment, on metal or in VMs you can take advantage of Juju's powerful
lifecycle management. Get started with a simple deployment of the
{{ product }}'s charms using the [juju-cli guide] or leverage
[Terraform's Juju provider] by following the [installing-with-terraform]
guide.

## Cluster API (CAPI)

[Cluster API] is a Kubernetes sub-project that provides declarative APIs for
creating, configuring, and managing multiple Kubernetes clusters.

If you plan to deploy and operate a large deployment with multiple
Kubernetes clusters, you can use the {{ product }}'s CAPI providers for AWS and
[MAAS]. Follow the [cluster-provisioning-with-CAPI guide] to deploy and operate
{{ product }} with the help of the CAPI providers.

<!-- LINKS -->

[Ubuntu]: https://help.ubuntu.com/
[Snaps]: https://snapcraft.io/docs
[snapd]: https://snapcraft.io/docs/installing-snapd
[Terraform's Juju provider]: https://github.com/juju/terraform-provider-juju/
[Multipass]: https://canonical.com/multipass
[Lxd]: https://canonical.com/lxd
[juju-cli guide]: /src/charm/tutorial/getting-started.md
[getting-started guide]: /src/snap/tutorial/getting-started.md
[installing-with-terraform]: /src/charm/howto/install-terraform.md
[cluster-provisioning-with-CAPI guide]: src/capi/tutorial/getting-started.md
[Juju]: https://juju.is
[Cluster API]: https://cluster-api.sigs.k8s.io/
[MAAS]: https://maas.io/

0 comments on commit 03facb3

Please sign in to comment.