亚马逊AWS上的嵌入式Solr



目前,我已经开发了一个web应用程序。在我的web应用程序中,我使用嵌入式solr服务器进行索引。之后,我在windowsxp上部署到Tomcat6上。一切都很好。接下来,我尝试了在亚马逊AWS上部署我的web应用程序。我的平台是linux+mysql。当我部署时,我得到了与嵌入式solr相关的异常。

[ WARN] 19:50:55 SolrCore - [] Solr index directory 'solrhome/./data/index' doesn't     exist. Creating new index...
[ERROR] 19:50:55 CoreContainer - java.lang.RuntimeException: java.io.IOException: Cannot   create directory: /usr/share/tomcat6/solrhome/./data/index
    at org.apache.solr.core.SolrCore.initIndex(SolrCore.java:403)
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:552)
    at org.apache.solr.core.CoreContainer.create(CoreContainer.java:480)

那么如何解决我的问题。我是linux新手。

我的猜测是运行Solr的用户没有访问该目录的权限。

此外,您正在使用哪个版本的Solr?看起来像3+。最新版本是4,所以从一开始就尝试使用它可能是有意义的。可能需要更多的故障排除,但从遗留配置开始会有更好的回报。

我得到了解决方案。这是因为ec2用户在AmazonLinux上的权限问题。所以,我通过以下方式更改了权限。

sudo chmod -R ugo+rw /usr/share/tomcat6

http://wiki.apache.org/solr/SolrOnAmazonEC2strong文本

t应该允许访问您使用的IP的端口22和8983,路由前缀为/32(例如4.2.2.1/32)。这将限制对当前计算机的访问。如果您希望对实例进行更广泛的访问以与其他人协作,您可以指定该访问权限,但请确保只允许所需的访问权限。Solr实例不应暴露于一般的Internet流量。如果你需要帮助弄清楚你的IP是什么,你可以随时使用whatismyip.com。请注意,AWS上的生产安全是一个广泛的主题,超出了本教程的范围。

最新更新