Currently Apache Ignite shipped with mostly all methods of delivery, except standardized linux packages and other OS installers (like Windows Installer or macOS DMG). It will be very useful for project's popularity and accessibility to prepare such package and installers.
Possible benefits of packages introducing:
- Popularity through accustomedness and confidence – installation of Apache Ignite with familiar instruments (apt / yum) from firstly third-party and later official repositories – will increase project's popularity among users, so that Apache Ignite become a must-have easy-to-access instrument.
- Accessibility – while binary archive already offers easy and simple way of accessing Apache Ignite's functionality and running it, linux packages will push it further. Packed by corresponding policies, these packages will seamlessly integrate into OS, granting access only to necessary for operation granular controls over services, which Apache Ignite provides. And installing executable as system service will shift its management to accustomed and proven facilities (i.e. systemd).
- Ease of maintenance – with packages, upgrading from previous version can be pre-programmed and tested accordingly, so that the whole process of moving to newer release is transparent and predictable.
Currently, proposed (and implemented in IGNITE-7107) architecture is as follows:
| ||Binary archive||Package|
- SystemD Service Wrapper – packages accompanied with systemd service description, service executable and node configuration file
- Service description (
apache-ignite@.service) – systemd-compliant description of how to start / stop / restart Apache Ignite with all concomitant directives, like user access permissions management, PID consideration, on boot service load order and so on. Service designed to be able to run multiple instances of Apache Ignite via
systemctl start apache-ignite@<config name>.
- Service executable (
service.sh) – main executable in charge of service operation, where service start process and firewalld port management included.
- FirewallD Compatibility – systemd service wrapper includes honouring firewalld installation set of rules for opening Apache Ignite operation's corresponding ports.
- Advanced Default Configuration – packages supplied with advanced out-of-the-box default configuration file (
default-config.xml) with switched on Persistent Data Store and Multicast Discovery SPI for quick multinode topologi obtaining with minimum effort.
Risks and Assumptions
None. Linux packages are just other means of delivery along with source / binary / docker / cloud images / etc., so only benefits are assumpted.
IGNITE-7107Getting issue details...
IGNITE-7108Getting issue details...