Onboard to the Replicated Platform
This topic describes how to onboard applications to the Replicated Platform.
Before You Begin
This section includes guidance and prerequisites to review before you begin onboarding your application.
Best Practices and Recommendations
The following are some best practices and recommendations for successfully onboarding with Replicated:
-
When integrating new Replicated features with an application, make changes in small iterations and test frequently by installing or upgrading the application in a development environment. This will help you to more easily identify issues and troubleshoot. This onboarding workflow will guide you through the process of integrating features in small iterations.
-
Use the Replicated CLI to create and manage your application and releases. Getting familiar with the Replicated CLI will also help later on when integrating Replicated workflows into your CI/CD pipelines. For more information, see Install the Replicated CLI.
-
These onboarding tasks assume that you will test the installation of each release on a VM with the Replicated Embedded Cluster installer and in a cluster with the Replicated KOTS installer. If you do not intend to offer existing cluster installations with KOTS (for example, if you intend to support only Embedded Cluster and Helm installations for your users), then can choose to test with Embedded Cluster only.
-
Ask for help from the Replicated community. For more information, see Get Help from the Community below.
Getting Help from the Community
The Replicated community site is a forum where Replicated team members and users can post questions and answers related to working with the Replicated Platform. It is designed to help Replicated users troubleshoot and learn more about common tasks involved with distributing, installing, observing, and supporting their application.
Before posting in the community site, use the search to find existing knowledge base articles related to your question. If you are not able to find an existing article that addresses your question, create a new topic or add a reply to an existing topic so that a member of the Replicated community or team can respond.
To search and participate in the Replicated community, see https://community.replicated.com/.
Prerequisites
-
Create an account in the Vendor Portal. You can either create a new team or join an existing team. For more information, see Create a Vendor Account.
-
Install the Replicated CLI. See Install the Replicated CLI.
-
Complete a basic quick start workflow to create an application with a sample Helm chart and then promote and install releases in a development environment. This helps you get familiar with the process of creating, installing, and updating releases in the Replicated Platform. See Replicated Quick Start.
-
Ensure that you have access to a VM that meets the requirements for the Replicated Embedded Cluster installer. You will use this VM to test installation with Embedded Cluster.
Embedded Cluster has the following requirements:
-
Linux operating system
-
x86-64 architecture
-
systemd
-
At least 2GB of memory and 2 CPU cores
-
The disk on the host must have a maximum P99 write latency of 10 ms. This supports etcd performance and stability. For more information about the disk write latency requirements for etcd, see Disks in Hardware recommendations and What does the etcd warning “failed to send out heartbeat on time” mean? in the etcd documentation.
-
The data directory used by Embedded Cluster must have 40Gi or more of total space and be less than 80% full. By default, the data directory is
/var/lib/embedded-cluster
. The directory can be changed by passing the--data-dir
flag with the Embedded Clusterinstall
command. For more information, see Embedded Cluster Install Command Options.Note that in addition to the primary data directory, Embedded Cluster creates directories and files in the following locations:
/etc/cni
/etc/k0s
/opt/cni
/opt/containerd
/run/calico
/run/containerd
/run/k0s
/sys/fs/cgroup/kubepods
/sys/fs/cgroup/system.slice/containerd.service
/sys/fs/cgroup/system.slice/k0scontroller.service
/usr/libexec/k0s
/var/lib/calico
/var/lib/cni
/var/lib/containers
/var/lib/kubelet
/var/log/calico
/var/log/containers
/var/log/embedded-cluster
/var/log/pods
/usr/local/bin/k0s
-
(Online installations only) Access to replicated.app and proxy.replicated.com or your custom domain for each
-
Embedded Cluster is based on k0s, so all k0s system requirements and external runtime dependencies apply. See System requirements and External runtime dependencies in the k0s documentation.
-
-
(Optional) Ensure that you have kubectl access to a Kubernetes cluster. You will use this cluster to test installation with KOTS. If you do not intend to offer existing cluster installations with KOTS (for example, if you intend to support only Embedded Cluster and Helm installations for your users), then you do not need access to a cluster for the main onboarding tasks.
You can use any cloud provider or tool that you prefer to create a cluster, such as Replicated Compatibility Matrix, Google Kubernetes Engine (GKE), or minikube.
Onboard
Complete the tasks in this section to onboard your application. When you are done, you can continue to Next Steps to integrate other Replicated features with your application.
Task 1: Create An Application
To get started with onboarding, first create a new application. This will be the official Vendor Portal application used by your team to create and promote both internal and customer-facing releases.
To create an application:
-
Create a new application using the Replicated CLI or the Vendor Portal. Use an official name for your application. See Create an Application.
Can I change the application name in the future?
You can change the application name, but you cannot change the application slug.
The Vendor Portal automatically generates and assigns a unique slug for each application based on the application's name. For example, the slug for "Example App" would be
example-app
.Application slugs are unique across all of Replicated. This means that, if necessary, the Vendor Portal will append a random word to the end of slug to ensure uniqueness. For example,
example-app-flowers
. -
Set the
REPLICATED_APP
environment variable to the unique slug of the application that you created. This will allow you to interact with the application from the Replicated CLI throughout onboarding. See Set Environment Variables in Installing the Replicated CLI.For example:
export REPLICATED_APP=my-app