curl -L https://anypoint.mulesoft.com/runtimefabric/api/download/rtfctl-windows/latest -o rtfctl.exe
Installing Runtime Fabric Using rtfctl
You can use the Runtime Fabric command line tool, rtfctl
, to install Anypoint Runtime Fabric on an Amazon Elastic Kubernetes Service (Amazon EKS), Amazon Elastic Kubernetes Service Anywhere (Amazon EKS-A), Azure Kubernetes Service (AKS), Alibaba Cloud Container Service for Kubernetes (ACK), Google Kubernetes Engine (GKE), Rancher Kubernetes Engine (RKE) installation that you manage.
Runtime Fabric versions 2.2.5 or later that support multiple instances require rtfctl version 0.4.1 or later.
|
rtfctl always installs the latest version of Runtime Fabric agent.
|
Refer to scalability benchmarking to review the limits for rtfctl
-based deployments. For larger deployments, use Helm-based Runtime Fabric deployments so you can allocate additional resources to the agent for optimal performance.
Before you Begin
Before installing Anypoint Runtime Fabric in a Kubernetes environment, ensure:
-
You have reviewed the architecture and requirements outlined in Runtime Fabric
-
You have installed and configured your Kubernetes environment with:
-
An ACK, AKS, EKS, EKS-A, GKE, or RKE Kubernetes environment. Other Kubernetes environments are not supported.
-
A supported Kubernetes version.
-
An ingress controller to send external requests to applications.
-
-
You create your clusters using the latest Runtime Fabric agent version available. If you can’t do so, refer to How to Specify the RTF Agent Version in Upgrades.
|
RTFCTL Versions Compatibility
The following tables list the rtfctl
versions compatibility with Runtime Fabric appliance 1.x.x agent versions and Runtime Fabric self-managed 2.x.x agent versions.
Runtime Fabric Appliance 1.x.x
The following rtfctl
versions are compatible with all supported Runtime Fabric agents on appliance clusters:
RTF appliance 1.x.x agent version | rtfctl version |
---|---|
All versions |
0.6.0-2.release-gravity |
All versions |
0.5.2-4.release-gravity |
All versions |
0.3.87 to 0.4.22 |
Runtime Fabric Self-Managed (BYOK) 2.x.x
The following rtfctl
versions are compatible with Runtime Fabric agents in self-managed Kubernetes clusters:
RTF self-managed 2.x.x agent version | rtfctl version |
---|---|
2.4.0 |
0.4.1 or later |
2.3.34 |
0.4.1 or later |
2.3.1 |
0.4.1 or later |
2.2.5 |
0.4.1 or later |
2.1.30 |
0.3.87 to 1.0.12 |
2.1.0 |
0.3.87 to 1.0.12 |
2.0.0 |
0.3.87 to 1.0.12 |
Create a Runtime Fabric using Runtime Manager
To install Runtime Fabric, first create a Runtime Fabric using Runtime Manager. This is required to obtain the activation data which is needed during installation.
-
From Anypoint Platform, select Runtime Manager.
-
Click Runtime Fabrics.
-
Click Create Runtime Fabric.
-
Enter the name of the new Runtime Fabric, then select one of the following options:
-
Amazon Elastic Kubernetes Service
-
Azure Kubernetes Service
-
Google Kubernetes Engine
-
-
Click Next.
-
Click rtfctl.
-
Review the Support responsibility disclaimer, then if you agree click Accept.
Runtime Manager creates the Runtime Fabric and displays the Activation State page. This page displays the activation data used to install Runtime Fabric on a Kubernetes service. Copy this data to the clipboard for use in the next section.
Download the rtfctl Utility
Runtime Fabric uses the rtfctl
command-line utility for installation and management tasks. See Install the Runtime Fabric Command Line Tool.
-
Download the
rtfctl
command-line utility:rtfctl
is supported on Windows, MacOS (Darwin), and Linux. Choose the appropriate method:-
Windows
-
MacOS (Darwin)
curl -L https://anypoint.mulesoft.com/runtimefabric/api/download/rtfctl-darwin/latest -o rtfctl
-
Linux
curl -L https://anypoint.mulesoft.com/runtimefabric/api/download/rtfctl/latest -o rtfctl
-
-
Change file permissions for the
rtfctl
command-line utility:sudo chmod +x rtfctl
Install Runtime Fabric
After creating a Runtime Fabric in Runtime Manager and obtaining the activation data, install Runtime Fabric into your Kubernetes service using the rtfctl
command-line utility.
If your Kubernetes configuration is not located in the \~/.kube/config
directory, set the KUBECONFIG
environment variable before running rtfctl
:
export KUBECONFIG=<path-to-kubeconfig>
-
Validate that your Kubernetes environment is ready for installation:
rtfctl validate <activation_data>
The
validate
option verifies that:-
The Kubernetes environment is running.
-
All required components exist.
-
All required services are available.
The
rtfctl
command-line utility outputs any incompatibilities with the Kubernetes environment.
-
-
Install Runtime Fabric:
rtfctl install <activation_data>
<activation_data>
is the activation data obtained after creating the Runtime Fabric using Runtime Manager. During installation, thertfctl
utility displays any errors encountered.
For private registry installations, add the --cluster-ops-image
flag and select the image version as per the release notes of the agent version to install:
rtfctl install <ACTIVATION_DATA> --cluster-ops-image <local-reg-host>/mulesoft/rtf-cluster-ops:<version-here>
Insert the Mule License Key
If you didn’t add the Mule license key during install, you can add it using the rtfctl
command line utility or Helm.
Before you install the license key, encode it to Base64 format.
Encode the License Key
-
On MacOS, run the following command:
base64 -b 0 -i <license-file>
-
On Unix, run the following command:
base64 -w0 <license-file>
-
On Windows, choose one of the following:
-
Use a WSL or Cygwin shell that includes the base64 tool and use the above Unix command.
-
Use the base64.exe program included with Windows git (C:\Program Files\Git\usr\bin).
-
Use the following Powershell command:
$BASE64_ENCODED_LICENSE=[convert]::ToBase64String((Get-Content -path "license.lic" -Encoding byte))
-
Apply the License Key Using rtfctl
-
On the controller node acting as the leader during installation (the installer node), run the following command:
rtfctl apply mule-license $BASE64_ENCODED_LICENSE
You can also apply the Mule license providing the file path directly:
rtfctl apply mule-license --file /path/to/license.lic
Any value used with rtfcl apply
updates does not work for OpenShift. You have to update the values in the OpenShift console. -
To verify the Mule license key has applied correctly, run:
rtfctl get mule-license
Configure the Ingress Resource Template
If your ingress controller requires custom annotations and ingress class definition, follow the instructions in Defining a Custom Ingress Configuration.
For GKE customers, the ingress controller included with GKE will provision a separate HTTP load balancer per application by default. Please read this KB article for more details. |
Validate Your Runtime Fabric
After completing the installation, your Runtime Fabric should be activated within your Anypoint organization. To validate your installation, go to Anypoint Runtime Manager and confirm that the status of the Runtime Fabric is Active
.
Before deploying an application to your Runtime Fabric:
-
Associate the Runtime Fabric with at least one Anypoint environment.
-
Review and update the Inbound Traffic settings based upon your Kubernetes environment.
-
Deploy an application to verify that Runtime Fabric is installed and configured correctly.
Perform a Rollback
To roll back to a previous version of Runtime Fabric trigerred automatically on failed upgrade, refer to the How to Specify the RTF Agent Version in Upgrades Knowledge base article for details.