atlas网上资料太少了,并且千篇一律,实在没有营养。经过又两天的摸索终于把atlas成功的启动起来。接下来把启动方式详细的记录起来,如果按照下面的操作,还是启动失败,可以私信我。
一、安装环境
JDK1.8
Zookeeper(atlas自带)
Kafka(atlas自带)
Hbase(atlas自带)
Solr(atlas自带)
二、安装步骤
1、解压包
编译成功之后,会在apache-atlas-sources-2.1.0/distro/target目录生成多个tar包,找到apache-atlas-2.1.0-server.tar.gz包复制到opt目录下执行
tar -xzvf apache-atlas-2.1.0-server.tar.gz
进行解压
2、修改配置
解压完成进入apache-atlas-2.1.0目录,修改环境配置vim conf/atlas-env.sh
修改java_home和是否使用内嵌的hbase和solr
1. export JAVA_HOME=/opt/jdk1.8.0_191/ 2. 3. export MANAGE_LOCAL_HBASE=true 4. 5. export MANAGE_LOCAL_SOLR=true
此时按照网上的直接执行bin/atlas_start.py我的环境会报异常。
Failed to obtain graph instance, retrying 3 times, error: java.lang.IllegalArgumentException: Could not instantiate imple mentation: org.janusgraph.diskstorage.solr.Solr6Index错误 Caused by: org.apache.solr.common.SolrException: Cannot connect to cluster at localhost:2181: cluster not found/not ready
Zk节点找不到,因为zk是在HBASE启动的时候启动的,所以我们分开启动再看看有什么问题。
3、启动HBASE
进入atlas目录,执行
hbase/bin/start-hbase.sh
执行jps,看下进程
18309 HMaster
存在HMaster说明,hbase已经启动
4、启动solr
启动 solr
执行以下命令,
solr/bin/solr start -c -z 127.0.0.1:2181 -p 8983 -force
将zk的地址和端口根据实际进行修改,我直接使用的HBASE启动的ZK。也是本地的。
创建索引节点,否则启动会报错
solr/bin/solr create -c fulltext_index -force -d conf/solr/ solr/bin/solr create -c edge_index -force -d conf/solr/ solr/bin/solr create -c vertex_index -force -d conf/solr/
5、启动altas
执行 bin/atlas_start.py,之后会写入很多数据,时间大概要启动几分钟
完全启动之前会一致抛出ZK连不上的异常,不用管
Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect (ClientCnxn$SendThread:1102) java.net.ConnectException: Connection refused
后续在启动的话只需要执行bin/atlas_start.py即可,不需要再单独启动hbase和solr了
6、查看进程
执行jps -lm服务启动正常
如果存在以上三个进程,说明服务启动成功。
7、进入首页
输入http://ip:21000,输入账号密码 admin/admin 进入首页
三、常见错误
一、环境变量配置有问题
bin/atlas_start.py Exception: [Errno 2] No such file or directory Traceback (most recent call last): File "bin/atlas_start.py", line 163, in <module> File "bin/atlas_start.py", line 73, in main File "/opt/apache-atlas-2.1.0/bin/atlas_config.py", line 162, in expandWebApp jar(atlasWarPath) File "/opt/apache-atlas-2.1.0/bin/atlas_config.py", line 215, in jar process = runProcess(commandline) File "/opt/apache-atlas-2.1.0/bin/atlas_config.py", line 251, in runProcess p = subprocess.Popen(commandline, stdout=stdoutFile, stderr=stderrFile, shell=shell) File "/usr/lib64/python2.7/subprocess.py", line 711, in __init__ errread, errwrite) File "/usr/lib64/python2.7/subprocess.py", line 1327, in _execute_child raise child_exception OSError: [Errno 2] No such file or directory
解决方式:conf/atlas-env.sh 中JAVA_HOME配置的jdk位置有误
二、ZK节点没有找到
java.util.concurrent.ExecutionException: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /hbase/hbaseid Caused by: org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /hbase/hbaseid
我在修改atlas配置使用外部zk的时候启动报错。可以按照上面步骤手动启动HBASE解决。
或者将hbase的配置修改为/hbase,然后重启hbase即可解决~
<property> <name>zookeeper.znode.parent</name> <value>/hbase-xxx</value> </property>
三、Kafka启动失败
org.apache.atlas.AtlasException: Failed to start embedded kafka
atlas.kafka.zookeeper.connect=localhost:9026 配置的zk端口重复