Download, Install, Configure, and Upgrade Mule

Before downloading and installing Mule, verify that you have a supported JDK installed. This example uses AdoptOpenJDK 8, which is recommended for Mule 4.4.

$ java -version
openjdk version "1.8.0_282"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_282-b08)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.282-b08, mixed mode)

Download Mule

  1. Download the Mule 4 binary file from the following link and unzip it:

  2. Set an environment variable called MULE_HOME for the mule directory inside your extracted folder.

    Example for version 4.4.0 in the Downloads directory:

    • In Windows environments:

      $ env:MULE_HOME="C:\Downloads\mule-enterprise-standalone-4.4.0"
    • In Linux or Unix environments:

      $ export MULE_HOME=~/Downloads/mule-enterprise-standalone-4.4.0

The procedure for making the MULE_HOME setting permanent depends on your operating system.

Test Your Mule Instance

After downloading Mule, test to confirm that it runs in your system without errors by executing the following commands:

  • In Windows environments:

    %MULE_HOME%\bin\mule.bat
  • In Linux or Unix environments:

    $ $MULE_HOME/bin/mule

These commands run Mule in foreground mode, and the startup script displays information on the terminal’s standard output. You can’t issue further commands on the terminal as long as Mule is running.

To stop Mule, press CTRL-C in the terminal in which the script is running.

Install Mule

You can install Mule as a Windows service or as a Linux or Unix daemon by executing the corresponding command:

  • In Windows environments:

    $ $MULE_HOME\bin\mule.bat install
  • In Linux or Unix environments:

    $ $MULE_HOME/bin/mule install

Configure Properties in the wrapper.conf File

After installing Mule as a Windows service, you can override the properties defined in the wrapper.conf file by declaring new properties in the wrapper.additional.conf file.

The configuration steps change depending on the Mule edition you are using:

  • Mule Community Edition

    1. After adding a new property, reinstall or restart the Windows service.

    2. Add the property, ensuring that its index is higher than the highest index in the wrapper-additional.conf file so that your property cannot be overridden.

      For example, imagine that wrapper-additional.conf has the following property:

      wrapper.java.additional.n=-Dproperty=value

      If n is the highest index, you would add your property in the wrapper.conf file and increment the index, as follows:

      wrapper.java.additional.n+1=-DyourProperty=valueOfYourProperty

  • Mule Enterprise Edition

    After you install Mule as a service, configure up to 20 additional properties using the following command-line argument:

    -additionalJavaProperties=numberOfExtraProperties

Configure CPU Affinity

Many operating systems provide a mechanism to bind a process to one or more central processing units (CPUs) so that the process executes only on the assigned CPUs. You can configure CPU affinity in your environment to run Mule in a nonvirtualized multicore server and comply with the number of cores included in your subscription.

Considerations When Using CPU Affinity

  • CPUs have groups of cores that share a cache to improve thread communication and migration performance. To avoid such performance issues, check with your infrastructure team to identify which cores share this cache before setting up this feature.

  • Check with your infrastructure team to ensure that no existing resource allocation policy that can interfere with your CPU affinity configuration.

  • Ensure that the number of cores you plan to configure through CPU affinity does not exceed the number of cores included in your MuleSoft subscription plan.

Remove the Mule Service or Daemon

Run the remove command to remove the service or daemon from your system.

The following example removes the Mule daemon from a Unix console:

$ $MULE_HOME/bin/mule remove
MULE_HOME is set to /Applications/mule-enterprise-standalone-4.3.0
MULE_BASE is set to /Applications/mule-enterprise-standalone-4.3.0
Detected Mac OSX:
Mule Enterprise Edition is not running.
Removing Mule Enterprise Edition daemon...

Install Anypoint Monitoring

You can install Anypoint Monitoring for cloud-managed supported versions of on-premises runtime instances to monitor applications running on that server.

Update, Upgrade, or Migrate Mule Versions

MuleSoft releases new major, minor, and patch release versions of Mule, as well as monthly updates to patch releases of Mule that incorporate the latest bug fixes and security enhancements.

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub
Give us your feedback!
We want to build the best documentation experience for you!
Help us improve with your feedback.
Take the survey!