如何用宿主机访问部署在虚拟机上的OpenStack Swift服务?
环境:
虚拟机软件:VMware Workstation 12 Pro
虚拟机:Ubuntu 12.04.2 LTS (NAT连接)
宿主机:Win7 64bit
SAIO部署教程:http://docs.openstack.org/developer/swift/development_saio.html
问题描述:
1、在虚拟机中运行教程最后的一些示例能正常返回结果,虚拟机和宿主机能互相Ping通;
2、尝试在虚拟机中安装apache2,并在宿主机的浏览器地址栏输入虚拟机ip,访问成功;
3、尝试在虚拟机的浏览器地址栏输入宿主机ip(宿主机安装了wamp),访问成功;
4、尝试在宿主机通过curl访问虚拟机的Swift服务,失败:
5、尝试在虚拟机中通过curl命令重新访问Swift服务(使用虚拟机的ip地址,不用127.0.0.1),失败:
问题提出:
1、为什么只能通过127.0.0.1访问Swift服务,使用虚拟机的ip地址不行?
2、如何让宿主机访问虚拟机的Swift服务?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
建议使用swift的API访问,看下不部署的swift API 服务使用的是哪个IP,在想办法把API的IP与宿主机打通,然后就可以使用了
可能是因为你在配置文件里面配置的也都是127.0.0.1(完全按照官方文档来的话)。这样当你尝试使用其他机器访问虚拟机上面的swift时,他是无法找访问到这个服务的。
我自己的解决方式是将配置文件里头的ip地址配成虚拟机的地址。