访问Cassandra EC2集群外的devops接口

时间:2016-05-05 11:12:14

标签: amazon-web-services cassandra communication ssh-tunnel opscenter

我刚在AWS上设置了运行centOS 7的四个节点Cassandra 3.4集群。我能够配置它并将所有节点放在一起。现在我想执行一些测试,使用我在一台机器上安装的devops中心来监控集群行为。

我想用ssh-tunneling从我的电脑上访问它:

ssh -i Amazon-EC2-Ami.pem -L 9999:localhost:8888 centos@public_address

使用我的浏览器,localhost:9999被正确地通过隧道登录页面http://localhost:8888/opscenter/login.html,但我得到了ERR_CONNECTION_REFUSED

我尝试使用命令行浏览器访问该计算机上的devops,并显示登录页面。我真的不知道问题是什么。任何信息都是真正的赞赏。这是cassandra-yaml配置文件,如果它有帮助:

cluster_name: 'Cloak'
listen_address:
endpoint_snitch: GossipingPropertyFileSnitch
rpc_address: 
seed_provider:
- class_name: org.apache.cassandra.locator.SimpleSeedProvider
  parameters:
  - seeds: "172.31.55.186,172.31.55.187"

修改 使用-v选项启动ssh隧道我可以确认请求是否正确通过隧道传输:

[centos@ip-172-31-55-186 ~]$ debug1: Connection to port 9999 
forwarding to localhost port 8888 requested.
debug1: channel 3: new [direct-tcpip]
debug1: Connection to port 9999 forwarding to localhost port 8888      
requested.
debug1: channel 4: new [direct-tcpip]
debug1: channel 3: free: direct-tcpip: listening port 9999 for    
localhost port 8888, connect from 127.0.0.1 port 43846 to 127.0.0.1     
port 9999, nchannels 5

1 个答案:

答案 0 :(得分:1)

最后我设法从我的电脑访问它。我必须修改位于/etc/opscenter/opscenterd.conf的操作中心的配置文件(仅用于软件包安装):

[webserver]
port = 8888
interface = 127.0.0.1

默认情况下,Web服务器仅接受来自localhost的请求。可能它不是最好的选择,但由于操作中心允许配置用户,我设置interface = 0.0.0.0,允许任何主机联系它。