我正在使用虚拟盒作为Cassandra DB的Linux访客,我正试图通过我的Windows主机访问它,但是,我不知道这样做的正确配置是什么。
在虚拟机上我正在使用“仅主机网络”从Windows进行通信。
任何人都知道如何进行这些配置?
答案 0 :(得分:2)
也许,这是来宾的网络配置。 在VirtualBox环境中,如果要从主机与guest虚拟机进行通信,则VM的网络类型必须为“桥接网络”或“仅主机网络”。
您可以在此处找到更多信息:https://www.virtualbox.org/manual/ch06.html。
答案 1 :(得分:0)
所以你试图从虚拟机中的Linux客户端连接到Cassandra?或者是相反的方式?
无论如何,无论方向如何,都要确保您的IP可以访问并且Cassandra端口是打开的(从9042开始)。
答案 2 :(得分:0)
为了将来参考我自己和其他人,这对我来说对Cassandra v3.10来说很有用:
http://grokbase.com/t/cassandra/user/14cpyy7bt8/connect-to-c-instance-inside-virtualbox
一旦您的Guest虚拟机配置了Cassandra,我就拥有了一台仅限主机的网络适配器,其IP为192.168.5.10。
然后必须修改/etc/cassandra/cassandra.yaml
来设置:
发件人强>
rpc_address: localhost
要强>
rpc_address: 192.168.5.10
然后运行sudo service cassandra restart
并给它15秒......
然后在来宾VM或主机上,以下工作:
cqlsh 192.168.5.10
希望能有所帮助。
请注意,它不适用于集群中的多个节点
# 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
# 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