我们先使用商业版本作为学习的入口,在初始学习阶段,迅速了解一个产品的最好方法就是亲手安装它。
一、安装介质的下载
大家从网络获取GemFire安装包的途径有两个,开源项目自然通过
http://geode.incubator.apache.org/来下载,商业版本需要从Pivotal的官网下载:http://network.pivotal.io 。像Oracle一样,软件随便你下,但下载之前需要你先注册。这里有一点需要注意的,就是你可能需要使用一个公司后缀的邮箱(至少看起来像公司邮箱)来注册,否则会注册失败,163/139/126等等通通不行。
GemFire的下载文件主要有三个:
Pivotal GemFire 8.2.0
Pivotal GemFire Native Client 8.2.0
Pivotal GemFire Legal Files
这里我们只需下载GemFire 服务器组件,即Pivotal GemFire 8.2.0,按照不同的操作系统选择相应的安装包。本文将以CentOS和Mac OS X 为例,介绍GemFire的安装过程。
二、安装准备:
GemFire主要支持X86平台上的Redhat/CentOS/Ubuntu/SUSE,以及Solaris(SPARC),也支持Windows和OS X(主要是开发测试用途)。GemFire具体支持的操作系统如下:
如果你要安装GemFire的Linux版本并不在列表中,也不用过于担心,GemFire可以能够运行在纯JAVA环境下,列表上没有只是代表Pivotal的研发部门没有在这些操作系统上做过完整的测试,并不代表无法运行。不过,如果您要用于生产环境,还是建议您使用列表中的操作系统,万一厂家的售后支持部门以此为借口不提供技术支持......
本文使用的环境如下:CentOS 7,JDK 1.7.0_76. 注意要使用Oracle JDK,不能使用OpenJDK.
三、CentOS 安装配置
GemFire的安装有两种方式,直接安装RPM包或者解压gz. RPM包的安装最为简单,但是我还是喜欢解压的安装方式。
1.为GemFire创建新用户,GemFire安装必须使用root用户,但安装完成后,你可以使用其他用户启动GemFire.使用RPM包安装时,系统会自动创建gemfire用户和pivotal用户组。在这里我们用解压方式部署GemFire,所以需要手工创建gemfire用户和pivotal用户组。
当然你也可以直接使用root用户来管理GemFire,
groupadd pivotal
useradd -g pivotal gemfire
2.解压GemFire
RPM安装时,GemFire的默认安装路径是 /opt/pivotal/Pivotal_GemFire_XXX
我们将Pivotal_GemFire_820_b17919_Linux.tar.gz 也解压到此目录:
tar -zxvf Pivotal_GemFire_820_b17919_Linux.tar.gz
gemfire解压后的目录是:
/opt/pivotal/Pivotal_GemFire_820_b17919_Linux
3.给gemfire用户配置环境变量
a.将/opt/pivotal这个目录属主改为gemfire/pivotal
[root@centos pivotal]# chown -R gemfire:pivotal pivotal/
b.修改gemfire用户的 .bash_profile
添加如下内容:
export JAVA_HOME=/usr/java/jdk1.7.0_76
export GEMFIRE=/opt/pivotal/Pivotal_GemFire_820_b17919_Linux
export PATH=$JAVA_HOME/bin:$GEMFIRE/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export GF_JAVA=$JAVA_HOME/bin/java
使用gemfire用户执行:source .bash_profile,使上面的配置生效。
[gemfire@centos ~]$ source .bash_profile
[gemfire@centos ~]$ java -version
java version "1.7.0_76"
Java(TM) SE Runtime Environment (build 1.7.0_76-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.76-b04, mixed mode)
c.验证gemfire安装:
[gemfire@centos ~]$ gfsh
_________________________ __
/ _____/ ______/ ______/ /____/ /
/ / __/ /___ /_____ / _____ /
/ /__/ / ____/ _____/ / / / /
/______/_/ /______/_/ /_/ v8.2.0
Monitor and Manage GemFire
gfsh>version --full
Java version: 8.2.0 build 17919 08/19/2015 14:58:51 PDT javac 1.7.0_79
Native version: native code unavailable
Source revision: a58a25d2be7eab751794e9cc78ff04a03bb09a65
Source repository: gemfire82_dev
Running on: centos/192.168.90.128, 4 cpu(s), amd64 Linux 3.10.0-327.el7.x86_64
gfsh命令可以帮助我们启动GemFire命令行,GemFire几乎所有的管理配置工作都是通过命令行来完成的,通常老外管它叫:g-fish.
启动gemfire 命令行界面后,使用version —full命令可以查看当前的GemFIre的具体版本号,以及当前运行环境。
退出命令行请输入:quit
另外,你也可以直接敲 gfsh version —full,试试看。
四、在Mac OS X的安装配置(让我们把Macbook变为生产力工具)
在安装之前,请先安装配置Oracle JDK. 确保你在OS X的终端输入:java -version 能看到正确的输出。
GemFire在Mac OS X上是通过Homebrew来安装的,Homebrew类似于Redhat上的Yum,所以你安装的时候要保证联网。
安装步骤如下:
1.打开Mac OS X终端
2.如果Mac上还没有安装Homebrew,先通过下面的命令安装Homebrew.
安装的时候需要你输入当前账号的密码,系统会自动安装其他有依赖关系的Package.
3.使用下面的命令,通过Homebrew安装GemFire:
$ brew tap pivotal/tap && brew install gemfire
MBP:~ Paul$ brew tap pivotal/tap && brew install gemfire
==> Tapping pivotal/tap
Cloning into '/usr/local/Library/Taps/pivotal/homebrew-tap'...
remote: Counting objects: 16, done.
remote: Compressing objects: 100% (14/14), done.
remote: Total 16 (delta 2), reused 5 (delta 0), pack-reused 0
Unpacking objects: 100% (16/16), done.
Checking connectivity... done.
Tapped 10 formulae (50 files, 41.4K)
==> Installing gemfire from pivotal/tap
==> Downloading http://download.pivotal.com.s3.amazonaws.com/gemfire/8.2.0/Pivot
######################################################################## 100.0%
==> Caveats
By installing, you agree to comply with the license at http://www.pivotal.io/products/software-license-agreement. If you disagree with these terms, please uninstall by typing "brew uninstall gemfire" in your terminal window.
Usage:
gfsh
cacheserver
gemfire
agent
Documentation:
http://gemfire.docs.pivotal.io/index.html
==> Summary
- GemFire 入门篇1:GemFire 是什么?
一.GemFire是什么? 如果你了解Redis或memCached,那么恭喜,你很快就能理解GemFire是什么,没错,你可以把它理解为一个增强版的Redis,具体在哪些方面增强,我们日后慢慢聊 ...
- Scalding初探之番外篇:Mac OS下的安装
把你从写繁琐的Map-reduce Job中解放出来,写分布式跟写本地程序没两样,Scalding真真代表着先进生产力的方向啊 心动不如行动,赶紧装一个吧 1 安装JDK 2 安装Homebrew r ...
- 每天记录一点:NetCore获得配置文件 appsettings.json vue-router页面传值及接收值 详解webpack + vue + node 打造单页面(入门篇) 30分钟手把手教你学webpack实战 vue.js+webpack模块管理及组件开发
每天记录一点:NetCore获得配置文件 appsettings.json 用NetCore做项目如果用EF ORM在网上有很多的配置连接字符串,读取以及使用方法 由于很多朋友用的其他ORM如S ...
- Membership三步曲之入门篇 - Membership基础示例
Membership 三步曲之入门篇 - Membership基础示例 Membership三步曲之入门篇 - Membership基础示例 Membership三步曲之进阶篇 - 深入剖析Pro ...
- spring boot(一):入门篇
构建微服务:Spring boot 入门篇 什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...
- 1. web前端开发分享-css,js入门篇
关注前端这么多年,没有大的成就,就入门期间积累了不少技巧与心得,跟大家分享一下,不一定都适合每个人,毕竟人与人的教育背景与成长环境心理活动都有差别,但就别人的心得再结合自己的特点,然后探索适合自己的学 ...
- 一个App完成入门篇(七)- 完成发现页面
第七章是入门篇的倒数第二篇文章了,明天整个APP将进入收官. 本节教程主要要教会大家使用二维码扫描和用do_WebView组件加在html页面. 导入项目 do_WebView组件 扫描功能 自定义事 ...
- [原创]Linq to xml增删改查Linq 入门篇:分分钟带你遨游Linq to xml的世界
本文原始作者博客 http://www.cnblogs.com/toutou Linq 入门篇(一):分分钟带你遨游linq to xml的世界 本文原创来自博客园 请叫我头头哥的博客, 请尊重版权, ...
- 转:OSGi 入门篇:模块层
OSGi 入门篇:模块层 1 什么是模块化 模块层是OSGi框架中最基础的一部分,其中Java的模块化特性在这一层得到了很好的实现.但是这种实现与Java本身现有的一些模块化特性又有明显的不同. 本文 ...
随机推荐
- python httplib和urllib的性能比较
httplib代码: urlParseResult = urlparse(url) host = urlParseResult.hostname path = urlParseResult.path ...
- saltstack自动化运维系列③之saltstack的常用模块使用
saltstack自动化运维系列③之saltstack的常用模块使用 1.命令的常用方法: 指定主机运行命令 # salt 'mini1' cmd.run 'date'mini1: Fri Apr 7 ...
- 解决walle报错:宿主机代码检出检测出错,请确认svn用户名密码无误
使用walle检测报错: 查看日志 # tail -f /tmp/walle/walle-20161010.log 报错: 2016-10-10 14:20:30 -- --------------- ...
- 转载:2.2.2 配置项的语法格式《深入理解Nginx》(陶辉)
原文:https://book.2cto.com/201304/19627.html 从上文的示例可以看出,最基本的配置项语法格式如下: 配置项名 配置项值1 配置项值2 - ; 下面解释一下配置项的 ...
- Ex 6_26 序列对齐..._第七次作业
- Js中带有小数的值相加产生的问题
项目中遇到的问题,0.1+0.2为0.30000000000000004,与想象中不一样, 解决办法: function addNum (num1, num2) { var sq1,sq2,m; tr ...
- TensorFlow 框架
TensorFlow TensorFlow核心程序由2个独立部分组成: a:Building the computational graph构建计算图 b:Running the comput ...
- 调用write方法打印语句到浏览器
1.document.write("我爱学习--喜欢学习"); // 在浏览器中输出的结果为:我爱学习--喜欢学习 2.首先,声明一个变量. var str="h ...
- .NetCore下使用Prometheus实现系统监控和警报 (六)进阶Grafana集成自定义收集指标
Prometheus中包含了很多收集指标,那么我们怎来在Grafana中来使用呢? 接下来我们还是以之前自定义的来演示如图:我们在Prometheus中已经可以看到这个之前我们自定义的类型了 关于Gr ...
- POJ 2718【permutation】
POJ 2718 问题描述: 给一串数,求划分后一个子集以某种排列构成一个数,余下数以某种排列构成另一个数,求这两个数最小的差,注意0开头的处理. 超时问题:一开始是得到一个数列的组合之后再从中间进行 ...