Ignite实战之一 安装 运行

原本是Hazelcast的fans,偶然的机会看到了Ignite,一个以内存为中心的数据平台,其中支持off-heap memory,并且兼容 ANSI-99 的SQL语法十分让人心动。更棒的是,它的中文文档竟然update到了最新版,看起来方便很多。

先看一下如何让它跑起来


Package安装

  • 从https://ignite.apache.org/下载Ignite的zip压缩包 apache-ignite-fabric-2.2.0-bin.zip
  • unzip apache-ignite-fabric-2.2.0-bin.zip
  • cd apache-ignite-fabric-2.2.0-bin
  • bin/ignite.sh

... ....
[18:10:59] Ignite node started OK (id=0d488108)
[18:10:59] Topology snapshot [ver=1, servers=1, clients=0, CPUs=4, heap=1.0GB]

这样一个基本的Ignite实例就跑起来了。在本机的一个新的终端再执行一次 bin/ignite.sh会启动一个新的实例,默认情况下,新的实例会自动加入集群

[18:11:14] Ignite node started OK (id=34223b83)
[18:11:14] Topology snapshot [ver=2, servers=2, clients=0, CPUs=4, heap=2.8GB]

Ignite的目录结构

├── benchmarks <-- build-in benchmark tool
├── bin
├── config
├── docs
├── examples
├── libs <-- jar包目录,默认只加载核心库
│ ├── annotations-13.0.jar
│ ├── cache-api-1.0.0.jar
│ ├── ignite-core-2.1.0.jar
│ ├── ignite-indexing
│ ├── ignite-shmem-1.0.0.jar
│ ├── ignite-spring
│ └── optional <--可选库,默认不加载
├── platforms
└── work

Ingite默认只加载一些核心库,如core,index(用以使用Lucene索引)和spring,其他库文件放在libs/optional文件夹中,如需使用,需要mv到libs目录下

Ignite的配置文件

Ignite的配置文件放置在IGNITE_HOME/config目录下,用以为Ignite启动实例时提供必要的信息,这里只挑几个常用的说

  • 设置client模式,默认的Ignite实例以server模式加入集群

    ...   
    
    
    ...

启动实例后日志为

[18:11:14] Topology snapshot [ver=2, servers=1, clients=1, CPUs=4, heap=2.8GB]

  • enable Peer Class Loading
    Ignite的分布式计算支持Zero Deployment,实现了节点间的字节码交换。当Peer Class Loading enable时,不需要在网格内的每个节点上手工地部署用以计算的Java或者Scala代码。 当一个enable了Peer Class Loading的节点加入一个没有打开Peer Class Loading的集群中时会出差,导致节点无法启动,反之亦然。推荐在配置文件中默认打开

    ...   
    
    
    ...

  • 配置集群发现机制
    Ignite支持N中发现模式,这里只聊静态IP机制

  ...
  
    
      
        
          
            
              10.xxx.xxx.xxx:47500..47509
              11.xxx.xxx.xxx:47500..47509
            
          
        
      
    
  

配置好后,制定配置文件启动ignite实例

bin/ignite.sh config/xxx.xml

Docker安装

docker安装和启动比较简单,两个命令就搞定了

  • sudo docker pull apacheignite/ignite
  • sudo docker run -it --net=host apacheignite/ignite

如果需要制定配置文件并且enable一些可选库文件(如 restful api)可以使用如下命令

sudo docker run -it --net=host -v /PATH/example-cache.xml:/opt/ignite/apache-ignite-fabric-2.1.0-bin/config/example-cache.xml -e "CONFIG_URI=/opt/ignite/apache-ignite-fabric-2.1.0-bin/config/example-cache.xml" -e "OPTION_LIBS=ignite-rest-http" apacheignite/ignite

NOTE: Ignite 的restful模块目前比较弱,基本属于不能使用状态。如cache只支持 模式的input和查询 ......

你可能感兴趣的:(Ignite实战之一 安装 运行)