EnterpriseApps/Ignite: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
 
(не показано 5 промежуточных версий этого же участника)
Строка 1: Строка 1:
{{stub}}
{{stub}}
Ignite - это ...
{|class="wikitable" style="float:right; margin-left:2em"
!colspan="2"|Apache Ignite
|-
|colspan="2"|[[Изображение:Altenter-menu-Ignite.png|64px|center]]
|-
|'''Появился в:
|''' 2015<br>
|-
|'''Оф. сайт''':
|[https://ignite.apache.org/ ignite.apache.org]
|-
|'''Репозиторий ALT Linux'''
|нет
|-
|'''Лицензия''':
| Apache License 2.0
|}
'''Apache Ignite''' - распределенная система управления базами данных для высокопроизводительных вычислений.  


=Установка=
=Установка=
Строка 38: Строка 55:


Создаем файл /home/ignite/startIgnite.sh
Создаем файл /home/ignite/startIgnite.sh
 
<syntaxhighlight lang="bash">
  #!/bin/bash
  #!/bin/bash
  IGNITE_HOME=/opt/ignite
  IGNITE_HOME=/opt/ignite
Строка 46: Строка 63:
  #С нашим конфигом:
  #С нашим конфигом:
  /opt/ignite/bin/ignite.sh /home/ignite/apache-ignite-config/production-config.xml
  /opt/ignite/bin/ignite.sh /home/ignite/apache-ignite-config/production-config.xml
</syntaxhighlight>


  chmod 755 /home/ignite/startIgnite.sh
  chmod 755 /home/ignite/startIgnite.sh


Создаем apache-ignite-config
Создаем apache-ignite-config
<pre>
<syntaxhighlight lang="xml">
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <configSections>
      <section name="igniteConfiguration" type="Apache.Ignite.Core.IgniteConfigurationSection, Apache.Ignite.Core" />
  </configSections>
  <runtime>
      <gcServer enabled="true"/>
  </runtime>
  <igniteConfiguration xmlns="http://ignite.apache.org/schema/dotnet/IgniteConfigurationSection" gridName="myGrid1">
   
      <localhost></localhost>
 
      <networkTimeout>1000</networkTimeout>
     
      <networkSendRetryDelay>1000</networkSendRetryDelay>
         
      <jvmOptions>
          <string>-Xms512m</string>
          <string>-Xmx3g</string>
          <string>--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED</string>
          <string>--add-exports=java.base/sun.nio.ch=ALL-UNNAMED</string>
          <string>--add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED</string>
          <string>--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED</string>
          <string>--add-exports=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED</string>
          <string>--add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED</string>
          <string>-Djava.net.preferIPv4Stack=true</string>
          <string>--illegal-access=warn</string>
      </jvmOptions>
     
      <discoverySpi type="TcpDiscoverySpi">
          <ipFinder type="TcpDiscoveryStaticIpFinder">
              <endpoints>
                  <string>127.0.0.1</string>
              </endpoints>
          </ipFinder>
      </discoverySpi>
     
      <atomicConfiguration type="AtomicConfiguration">
          <atomicSequenceReserveSize>1000</atomicSequenceReserveSize>
          <cacheMode>Partitioned</cacheMode>
          <backups>1</backups>
      </atomicConfiguration>
 
      <dataStorageConfiguration type="DataStorageConfiguration">
          <walPath>wal/</walPath>
          <walArchivePath>wal/</walArchivePath>
          <defaultDataRegionConfiguration type="DataRegionConfiguration">
              <name>Default_Region</name>
              <persistenceEnabled>false</persistenceEnabled>
              <initialSize>10485760</initialSize>
              <maxSize>20971520</maxSize>
          </defaultDataRegionConfiguration>
          <dataRegionConfigurations type="DataRegionConfiguration">
                  <dataRegionConfiguration>
                      <name>Persistent</name>
                      <persistenceEnabled>true</persistenceEnabled>
                      <initialSize>10485760</initialSize>
                      <maxSize>1147483648</maxSize>
                      <pageEvictionMode>RandomLru</pageEvictionMode>
                  </dataRegionConfiguration>
                  <dataRegionConfiguration>
                      <name>InMemory</name>
                      <persistenceEnabled>false</persistenceEnabled>
                      <initialSize>10485760</initialSize>
                      <maxSize>50485760</maxSize>
                  </dataRegionConfiguration>
          </dataRegionConfigurations>
      </dataStorageConfiguration>
 
      <clientMode>false</clientMode>
 
      <includedEventTypes></includedEventTypes>
 
      <workDirectory>/home/ignite/apache-ignite-data/</workDirectory>
 
      <jvmDllPath></jvmDllPath>  


      <igniteInstanceName>Comindware_Instance2</igniteInstanceName>  
<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="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
        <property name="gridName" value="testGrid-server"/>
        <property name="clientMode" value="false"/>


      <autoGenerateIgniteInstanceName>false</autoGenerateIgniteInstanceName>  
        <property name="discoverySpi">
            <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
                <property name="ipFinder">
                    <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder">
                        <property name="addresses">
                            <list>
                                <value>127.0.0.1:47500..47509</value>
                            </list>
                        </property>
                    </bean>
                </property>
<property name="localAddress" value="localhost"/>
            </bean>
        </property>
        <property name="communicationSpi">
            <bean class="org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi">
<property name="localAddress" value="localhost"/>
            </bean>
        </property>


</igniteConfiguration>  
</bean>
</configuration>
</beans>
</pre>
</syntaxhighlight>


Где <workDirectory>/home/ignite/apache-ignite-data/</workDirectory>  - одна из наших созданных папок.
Где <syntaxhighlight lang="xml"><workDirectory>/home/ignite/apache-ignite-data/</workDirectory></syntaxhighlight>  - одна из наших созданных папок.


==Запуск службы==
==Запуск службы==
Строка 182: Строка 152:


Для проверки можно перезагрузить сервер.
Для проверки можно перезагрузить сервер.
==Ссылки==
*[https://habr.com/ru/articles/310334/ Знакомство с Apache Ignite: первые шаги - Хабр]
==Источники==
*https://gist.github.com/olaf-2/ab7f72cb98c8b24a50a7f2b563221f6e
*https://kb.comindware.ru/article/Установка-и-настройка-apache-ignite-Краткое-руководство-для-linux-2093.html

Текущая версия от 12:10, 4 декабря 2023

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.
Apache Ignite
Altenter-menu-Ignite.png
Появился в: 2015
Оф. сайт: ignite.apache.org
Репозиторий ALT Linux нет
Лицензия: Apache License 2.0

Apache Ignite - распределенная система управления базами данных для высокопроизводительных вычислений.

Установка

https://ignite.apache.org/download.cgi

Установка Java

  1. Установите Java 1.8
    # apt-get install java-1.8.0-openjdk java-1.8.0-openjdk-devel

Установка программы

  1. Скачайте архив с программой (bin)
    Качаем бинарник
    https://ignite.apache.org/download.cgi#binaries
  2. Распакуйте архив
    # unzip apache-ignite-*.zip
  3. Скопируйте каталог в /opt
    # mv apache-ignite-*/ /opt/ignite
  4. Сделайте файлы исполняемыми
    # chmod +x -R /opt/ignite

Создание файла профиля

Создаем файл с профилем:

# mcedit /etc/profile.d/ignite.sh

Со следующим содержимым:

export IGNITE_HOME=/opt/ignite

Создание служебного пользователя

Создаем системного пользователя для службы:

# useradd -m ignite
# passwd ignite
$ su - ignite
$ mkdir -p /home/ignite/apache-ignite-config  /home/ignite/apache-ignite-data

Назначаем права на нового системного пользователя

# chown ignite:ignite -R /opt/ignite

Создаем файл /home/ignite/startIgnite.sh

 #!/bin/bash
 IGNITE_HOME=/opt/ignite
 export IGNITE_HOME
 #Чтобы просто крутился:
 #/opt/ignite/bin/ignite.sh -v
 #С нашим конфигом:
 /opt/ignite/bin/ignite.sh /home/ignite/apache-ignite-config/production-config.xml
chmod 755 /home/ignite/startIgnite.sh

Создаем apache-ignite-config

<?xml version="1.0" encoding="UTF-8"?>

<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="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
        <property name="gridName" value="testGrid-server"/>
        <property name="clientMode" value="false"/>

        <property name="discoverySpi">
            <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
                <property name="ipFinder">
                    <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder">
                        <property name="addresses">
                            <list>
                                <value>127.0.0.1:47500..47509</value>
                            </list>
                        </property>
                    </bean>
                </property>
				<property name="localAddress" value="localhost"/>
            </bean>
        </property>
		
        <property name="communicationSpi">
            <bean class="org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi">
				<property name="localAddress" value="localhost"/>
            </bean>
        </property>

	</bean>
</beans>

Где

<workDirectory>/home/ignite/apache-ignite-data/</workDirectory>

- одна из наших созданных папок.

Запуск службы

$ su - ignite
$ /opt/ignite/bin/ignite.sh -v

Создание сервиса

Настраиваем запуск ignite в качестве сервиса.

Создаем файл:

# mcedit /etc/systemd/system/ignite.service

Со следующим содержимым:

[Unit]
Description=Apache Ignite Service
After=network.target

[Service]
WorkingDirectory=/home/ignite
User=ignite
PrivateDevices=yes
ProtectSystem=full
Type=simple
ExecReload=/bin/kill -HUP $MAINPID
KillMode=mixed
KillSignal=SIGTERM
TimeoutStopSec=10
ExecStart=/home/ignite/startIgnite.sh
SyslogIdentifier=Ignite
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
Alias=ignite.service

Перечитываем конфигурацию systemd:

# systemctl daemon-reload

Разрешаем автозапуск:

# systemctl enable --now ignite

Для проверки можно перезагрузить сервер.

Ссылки

Источники