RPM and DEB Setup
This is a legacy Apache Ignite documentationThe new documentation is hosted here: https://ignite.apache.org/docs/latest/
Overview
Apache Ignite can be installed from the official RPM or DEB repositories.
Validated Linux DistributionsRPM/DEB packages were validated on the following Linux distributions by the Ignite community:
- Ubuntu 14.10 and higher
- Debian 9.3 and higher
- CentOS 7.4.1708 and higher
The other Linux distributions should be supported as well, as long as the packages can be installed there.
Repository Configuration
Configure Apache Ignite's RPM or DEB repository, as follows (accept the GPG key import prompt if required), including specific Linux distribution settings:
# Install dirmngr (if not already installed) for apt-key ability to retrieve remote GPG keys
sudo apt update
sudo apt install dirmngr --no-install-recommendssudo bash -c 'cat <<EOF > /etc/yum.repos.d/ignite.repo
[ignite]
name=Apache Ignite
baseurl=http://apache.org/dist/ignite/rpm/
gpgcheck=1
repo_gpgcheck=1
gpgkey=http://apache.org/dist/ignite/KEYS
http://bintray.com/user/downloadSubjectPublicKey?username=bintray
EOF'
sudo yum check-updatesudo bash -c 'cat <<EOF > /etc/apt/sources.list.d/ignite.list
deb http://apache.org/dist/ignite/deb/ apache-ignite main
EOF'
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61
sudo apt updateIgnite Installation
Install the latest Apache Ignite version:
sudo yum install apache-ignitesudo apt install apache-ignite --no-install-recommendsThe installation structure looks like this:
Folder | Mapped To | Description |
|---|---|---|
| The root of Apache Ignite's installation | |
| Bin folder (scripts and executables) | |
|
| Default configuration files |
|
| Log directory |
|
| Core and optional libraries |
|
| Ignite work directory |
| Documentation | |
| Licenses | |
|
|
Running Ignite as a Service
If running on Windows 10 WSL or Docker, you should start Apache Ignite as a stand-alone process (not as a service). More information here.
Start Apache Ignite's node with a configuration of your choice, issuing the following command: sudo systemctl start apache-ignite@<config_name>. Note that the <config_name> parameter is relative to the /etc/apache-ignite folder.
sudo systemctl start [email protected] # start Ignite service
journalctl -fe # check logsTo enable node's autostart at system boot, use:
sudo systemctl enable apache-ignite@<config name>Running Ignite as a Stand-Alone Process
Use the commands below to start Ignite as a stand-alone process (cd to /usr/share/apache-ignite previously). To change the default configuration, you can update the /etc/apache-ignite/default-config.xml file. The default configuration uses Multicast IP Finder; if you want to use Static IP Finder, you need to change the default config file. Learn more about TCP/IP Discovery in the corresponding page.
First, log in as Ignite user, as follows:
sudo -u ignite /usr/bin/env bash # switch to ignite userThen navigate to the Ignite bin folder and start a node:
cd /usr/share/apache-ignite # navigate to Ignite home folder
bin/ignite.sh # run Ignite with default configurationsudo -u ignite /usr/bin/env bash # switch to ignite user
cd /usr/share/apache-ignite/bin # navigate to Ignite bin folder
./ignite.sh <path_to_custom_config> # start Ignite with custom configurationRunning Ignite in Windows 10 WSL
Network configuration
Running Apache Ignite under Windows 10 WSL environment requires the correct Windows Defender Firewall with Advanced Security configuration:
- Run Windows Defender Firewall with Advanced Security
- Choose Inbound Rules menu item in the left column
- Choose New Rule... menu item in the right column
- Choose Program checkbox and click Next
- Enter
%SystemRoot%\System32\wsl.exeinto This program path field and click Next - Choose Allow the connection checkbox and click Next
- Choose Domain, Private and Public checkboxes and click Next
- Enter a name for Name field (and, optionally, description for Description field) and click Finish
The prepared rule will allow Apache Ignite nodes on a Windows 10 WSL environment to be exposed to the LAN.
Starting Ignite Cluster
Due to a specific network stack implementation, running several nodes in single Windows 10 WSL environment requires a custom configuration (see wsl-default-config below) and startup command as follows: bin/ignite.sh config/wsl-default-config.xml -J-DNODE=<00..99>.
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="placeholderConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
<bean id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
<property name="discoverySpi">
<bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
<property name="localPort" value="475${NODE}"/>
<property name="ipFinder">
<bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder">
<property name="addresses">
<list>
<value>127.0.0.1:47500..47599</value>
</list>
</property>
</bean>
</property>
</bean>
</property>
<property name="communicationSpi">
<bean class="org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi">
<property name="localPort" value="481${NODE}"/>
</bean>
</property>
</bean>
</beans>First, log in as ignite user, as follows:
sudo -u ignite /usr/bin/env bashThen navigate to the Ignite home folder and start the required number of Ignite nodes (up to 100) locally:
# Navigate to Ignite home folder
cd /usr/share/apache-ignite
# Run several local nodes
bin/ignite.sh config/wsl-default-config.xml -J-DNODE=00 &
bin/ignite.sh config/wsl-default-config.xml -J-DNODE=01 &
...
bin/ignite.sh config/wsl-default-config.xml -J-DNODE=99 &Updated 9 months ago
