This is a draft document that was built and uploaded automatically. It may document beta software and be incomplete or even incorrect. Use this document at your own risk.
Eirini, an alternative to Diego, is a scheduler for the Cloud Foundry Application Runtime (CFAR) that runs Cloud Foundry user applications in Kubernetes. For details about Eirini, see https://www.cloudfoundry.org/project-eirini/ and http://eirini.cf
Different schedulers and stacks have different memory requirements for applications. Not every combination is tested so there is no universal memory setting for Cloud Application Platform, and because it depends on the application deployed, it is up to the user to adjust the setting based on their application.
When using Eirini, it is important to take into consideration:
If you are upgrading from SUSE Cloud Application Platform 2.0.1 to 2.1.0 and plan to convert from Diego to Eirini, please upgrade your Diego environment to SUSE Cloud Application Platform 2.1.0 first and then migrate to Eirini as the earlier CAP versions relied a technical preview version of Eirini.
In this situation, your current applications relying on the
cflinuxfs3 stack need to be converted to the
sle15 stack. You can re-push your applications with
cf push APP_NAME -s sle15 to do so, otherwise your
applications will crash on Eirini.
Applications on Eirini will require slightly more memory than on Diego. From testing, add an additional 32 MB to your application's manifest. The increase may vary, depending on your application.
TCP routing is not available in Eirini deployments at this time.
Eirini requires the k8s-metrics-server to be installed
on the Kubernetes environment where SUSE Cloud Application Platform is installed in order for
Stratos Metrics to work.
Stratos Metrics will not show disk stats on Eirini.
When there is a Kubernetes outage, Eirini will not automatically restart applications upon its return. You will need to manually start them up at present.
To enable Eirini, and disable Diego, add the following to your
kubecf-config-values.yaml file.
features:
eirini:
enabled: true
When Eirini is enabled, both features.suse_default_stack
and features.suse_buildpacks must be enabled as well.
A cflinuxfs3 Eirini image is currently not available, and the SUSE stack
must be used. By default, both the SUSE stack and buildpacks are enabled.
After enabling Eirini, you will still see the
diego-api pod. This is normal behavior because the Diego pod has a component required by Eirini.
Eirini will only work on a cluster that has the parameter --cluster-domain set to cluster.local.
Deploy kubecf.
Refer to the following for platform-specific instructions:
For SUSE® CaaS Platform, see Chapter 4, Deploying SUSE Cloud Application Platform on SUSE CaaS Platform.
For Microsoft Azure Kubernetes Service, see Chapter 5, Deploying SUSE Cloud Application Platform on Microsoft Azure Kubernetes Service (AKS).
For Amazon Elastic Kubernetes Service, see Chapter 6, Deploying SUSE Cloud Application Platform on Amazon Elastic Kubernetes Service (EKS).
For Google Kubernetes Engine, see Chapter 7, Deploying SUSE Cloud Application Platform on Google Kubernetes Engine (GKE).
In order for Eirini to report application metrics, Metrics Server (link xlink:href="https://github.com/kubernetes-sigs/metrics-server"/> must be installed.
Note that --kubelet-insecure-tls is not recommended for
production usage, but can be useful in test clusters with self-signed
Kubelet serving certificates. For production, use
--tls-private-key-file.
tux > helm install metrics-server stable/metrics-server --set args[0]="--kubelet-preferred-address-types=InternalIP" --set args[1]="--kubelet-insecure-tls"