首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从windows主机ping virtualbox来宾上的cassandra

从windows主机ping virtualbox来宾上的cassandra
EN

Stack Overflow用户
提问于 2016-12-14 22:20:44
回答 3查看 1.1K关注 0票数 1

我使用虚拟机器作为Cassandra DB的Linux来宾,并尝试通过我的windows主机访问它,但是,我不知道这样做的正确配置是什么。

在虚拟机器上,我使用“仅主机网络”从windows进行通信。

有人知道如何进行这些配置吗?

EN

回答 3

Stack Overflow用户

发布于 2016-12-14 22:36:35

可能是访客的网络配置问题。在VirtualBox环境中,如果要从主机与来宾进行通信,则VM的网络类型必须是“桥接网络”或“仅主机网络”。

你可以在这里找到更多信息:https://www.virtualbox.org/manual/ch06.html

票数 2
EN

Stack Overflow用户

发布于 2017-05-25 08:51:57

从主机操作系统访问来宾虚拟机上的Cassandra

为了将来参考我自己和其他人,这对我在Cassandra V3.10中是有效的:

http://grokbase.com/t/cassandra/user/14cpyy7bt8/connect-to-c-instance-inside-virtualbox

一旦您的来宾VM配备了Cassandra,我就有了一个IP为192.168.5.10的仅主机网络适配器。

然后不得不修改/etc/cassandra/cassandra.yaml来设置:

来自的

代码语言:javascript
运行
复制
rpc_address: localhost

代码语言:javascript
运行
复制
rpc_address: 192.168.5.10

然后运行sudo service cassandra restart并等待15秒...

然后,在来宾虚拟机或主机上执行以下操作:

代码语言:javascript
运行
复制
cqlsh 192.168.5.10

希望这能帮助到一些人。

供参考的Vagrantfile

请注意,它还不适用于集群中的多个节点

代码语言:javascript
运行
复制
# Adjustable settings
## Cassandra cluster settings
mem_mb = "3000"
cpu_count = "2"
server_count = 1
network = '192.168.5.'
first_ip = 10

servers = []
seeds = []
cassandra_tokens = []
(0..server_count-1).each do |i|
  name = 'cassandra-node' + (i + 1).to_s
  ip = network + (first_ip + i).to_s
  seeds << ip
  servers << {'name' => name,
              'ip' => ip,
              'provision_script' => "sleep 15; sudo sed -i -e 's/^rpc_address: localhost/rpc_address: #{ip}/g' /etc/cassandra/cassandra.yaml; sudo service cassandra restart;",
              'initial_token' => 2**127 / server_count * i}
end

# Configure VM server
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "ubuntu/xenial64"
  servers.each do |server|

    config.vm.define server['name'] do |x|
      x.vm.provider :virtualbox do |v|
        v.name = server['name']
        v.customize ["modifyvm", :id, "--memory", mem_mb]
        v.customize ["modifyvm", :id, "--cpus"  , cpu_count  ]
      end
      x.vm.network :private_network, ip: server['ip']
      x.vm.hostname = server['name']
      x.vm.provision "shell", path: "provision.sh"
      x.vm.provision "shell", inline: server['provision_script']

    end
  end
end

provision.sh

代码语言:javascript
运行
复制
# install Java and a few base packages
add-apt-repository ppa:openjdk-r/ppa
apt-get update
apt-get install vim curl zip unzip git python-pip -y -q

# Java install - adjust if needed
# apt-get install openjdk-7-jdk -y -q
apt-get install openjdk-8-jdk -y -q

# Install Cassandra 
echo "deb http://www.apache.org/dist/cassandra/debian 310x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
curl https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
sudo apt-get update
sudo apt-get install cassandra -y
sudo service cassandra start
票数 1
EN

Stack Overflow用户

发布于 2016-12-15 01:57:15

因此,您正在尝试从您的virtualbox中的Linux来宾连接到Cassandra?或者是相反的情况?

无论如何,请确保您的IP是可访问的,并且Cassandra端口是打开的(从9042开始)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41144884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档