我使用虚拟机器作为Cassandra DB的Linux来宾,并尝试通过我的windows主机访问它,但是,我不知道这样做的正确配置是什么。
在虚拟机器上,我使用“仅主机网络”从windows进行通信。
有人知道如何进行这些配置吗?
发布于 2016-12-14 22:36:35
可能是访客的网络配置问题。在VirtualBox环境中,如果要从主机与来宾进行通信,则VM的网络类型必须是“桥接网络”或“仅主机网络”。
你可以在这里找到更多信息:https://www.virtualbox.org/manual/ch06.html。
发布于 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来设置:
来自的
rpc_address: localhost到
rpc_address: 192.168.5.10然后运行sudo service cassandra restart并等待15秒...
然后,在来宾虚拟机或主机上执行以下操作:
cqlsh 192.168.5.10希望这能帮助到一些人。
供参考的Vagrantfile
请注意,它还不适用于集群中的多个节点
# 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
endprovision.sh
# 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发布于 2016-12-15 01:57:15
因此,您正在尝试从您的virtualbox中的Linux来宾连接到Cassandra?或者是相反的情况?
无论如何,请确保您的IP是可访问的,并且Cassandra端口是打开的(从9042开始)。
https://stackoverflow.com/questions/41144884
复制相似问题