CloudFoundry虚拟机实例配置DNS
使用Bosh成功部署CloudFoundry后,在OpenStack上启了一个实例作为DNS服务器专用,配置域名mycloud.com解析到CF API接口的IP:10.68.19.134,然后使用CF客户端命令行工具,发现无法登陆CF平台,执行命令及报错如下:
root@bosh-cli:~/bosh-workspace/deployments# cf login admin -t
target: http://api.mycloud.com >>>
REQUEST: GET http://api.mycloud.com/info
REQUEST_HEADERS:
Accept : application/json
Content-Length : 0
RESPONSE: [200]
RESPONSE_HEADERS:
content-length : 250
content-type : application/json;charset=utf-8
date : Mon, 08 Jul 2013 07:48:27 GMT
server : nginx
x-content-type-options : nosniff
x-vcap-request-id : 65130b0b-48b1-42ee-b05b-a844e6dd54f2
RESPONSE_BODY:
{
"name": "vcap",
"build": "2222",
"support": "http://support.cloudfoundry.com",
"version": 2,
"description": "Cloud Foundry sponsored by Pivotal",
"authorization_endpoint": "http://login.mycloud.com",
"token_endpoint": "http://uaa.mycloud.com",
"allow_debug": true
}
<<<
Password> ******** Authenticating--->
request: post http://login.mycloud.com/oauth/token
headers: {"content-type"=>"application/x-www-form-urlencoded;charset=utf-8", "accept"=>"application/json;charset=utf-8", "authorization"=>"Basic Y2Y6"}
body: grant_type=password&username=admin&password=c1oudc0w
. <---
response: 200
headers: {"cache-control"=>"no-cache, no-store, no-cache, no-store, max-age=0", "content-language"=>"en-US", "content-type"=>"application/json;charset=UTF-8", "date"=>"Mon, 08 Jul 2013 07:48:40 GMT", "expires"=>"Thu, 01 Jan 1970 00:00:00 GMT, Thu, 01 Jan 1970 00:00:00 GMT", "pragma"=>"no-cache, no-cache", "server"=>"Apache-Coyote/1.1", "transfer-encoding"=>"chunked"}
body: {"timestamp":"2013-06-12T22:32:57-0700","app":{"artifact":"cloudfoundry-login-server","description":"Cloud Foundry Login App","name":"Cloud Foundry Login","version":"1.2.3"},"error":{"error":"rest_client_error","error_description":"I/O error: uaa.mycloud.com; nested exception is java.net.UnknownHostException: uaa.mycloud.com"},"commit_id":"0f774e2","prompts":{"username":["text","Email"],"password":["password","Password"]}} ... FAILED
注意其中错误信息: nested exception is java.net.UnknownHostException: uaa.mycloud.com
分析应该是DNS解析有问题导致,但是执行nslookup命令,查看uaa.mycloud.com却是正常解析到10.68.19.134
再分析,uaa的验证行为是有CF的controller_ng组件发起,通过uaa组件接口进行验证,直接登录到controller_ng组件所在的虚拟机实例上查看DNS解析是否正常,结果果然是无法正常解析
再分析,之前的DNS只在CF客户端所在的机器上进行配置,故其他虚拟机之间进行交互时无法正常解析
尝试修改各虚拟机实例的DNS配置信息,却发现修改后无效,因为采用BOSH进行部署,DNS分为多层:
CF组件实例 ===>> Bosh PowerDNS实例 ===>> Micro Bosh实例 ===>> 虚拟机所在物理机 ===>> 公共DNS服务器
解决办法:
1、停用虚拟机DNS服务器
2、在某一台物理机上配置DNS服务器
3、将每台物理机的DNS配置指向物理DNS服务器
如此,所有的虚拟机的DNS都能通过物理DNS服务器解析,再次尝试CF客户端的登陆等操作,完全正常!
CloudFoundry虚拟机实例配置DNS的更多相关文章
- 云计算管理平台之OpenStack启动虚拟机实例
在前边的博客中,我们主要聊了下openstack的基础环境.核心服务(认证服务keystone/镜像服务glance/计算服务nova/网络服务neutron)的安装配置:回顾请查看前边的博客:今天我 ...
- CentOS笔记——配置DNS服务器
前话 咳咳,这次Linux系统的DNS服务器搭建我不得不记下来.,这错误真的太蛋疼了,我整整弄了两天才解决问题(抱歉我很蠢). 也许有人会和我犯同样的错误,给大家分享一下经验. 首先总结一下知识点: ...
- 长平狐 Android-x86虚拟机安装配置全攻略
Android-x86虚拟机安装配置网上有很多,但是全部说明白的确不多,希望这篇文章能把主要的配置介绍给您,帮助您少走一些弯路. 本文分别针对VMWare和Virtual Box两种虚拟机介绍安装配置 ...
- MySQL 5.5.35 单机多实例配置详解
一.前言 二.概述 三.环境准备 四.安装MySQL 5.5.35 五.新建支持多实例的配置文件(我这里配置的是四个实例) 六.初始化多实例数据库 七.提供管理脚本 mysqld_multi.serv ...
- Android-x86虚拟机安装配置全攻略
转自Android-x86虚拟机安装配置全攻略 注:这里安装从简,具体请参考虚拟机Vmware安装运行安卓4.0详细教程 Android-x86虚拟机安装配置网上有很多,但是全部说明白的确不多,希望这 ...
- Linux之虚拟机网络配置
一般安装完虚拟机后,VMware会为虚拟机在网络连接配置为“NAT模式(N):用于共享主机的IP地址”. 这种模式下虚拟机会共享主机的网络环境,主机可以访问外网那么虚拟机可以,主机可以(哪怕是拨VPN ...
- CDH安装系统环境准备——虚拟机网络配置
虚拟机网络配置教程如下: 1.修改网络配置文件[root@master ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0配置IP地址.网关.掩码.DNS ...
- OpenStack实践系列⑥构建虚拟机实例
OpenStack实践系列⑥构建虚拟机实例 四.创建一台虚拟机图解网络,并创建一个真实的桥接网络 创建一个单一扁平网络(名字:flat),网络类型为flat,网络适共享的(share),网络提供者:p ...
- centos下配置DNS
centos网络配置实例 1,配置DNSvi /etc/resolv.conf加入: 代码如下: nameserver 192.168.0.1 nameserver 8.8.8.8 nameserve ...
随机推荐
- sp.Net MVC4 + Oracle + EasyUI + Bootstrap2
Asp.Net MVC4 + Oracle + EasyUI + Bootstrap 第二章 Asp.Net MVC4 + Oracle + EasyUI + Bootstrap 第二章 --使用 ...
- IS2009制作Oracle 静默安装包(二) 感谢空白先生特许授权
原文:IS2009制作Oracle 静默安装包(二) 感谢空白先生特许授权 上一篇: IS2009制作Oracle 静默安装包(一)感谢空白先生特许授权本文经原作者特许授权于海洋女神发布,转载请务必注 ...
- 纯CSS3打造七巧板
原文:纯CSS3打造七巧板 最近项目上要制作一个七巧板,脑子里瞬间闪现,什么...七巧板不是小时候玩的吗... 七巧板的由来 先来个科普吧,是我在查资料过程中看到的,感觉很有意思. 宋朝有个叫黄伯思的 ...
- PHP 16: MySql的数据库访问
原文:PHP 16: MySql的数据库访问 本章介绍PHP访问MySql的方法.如果你对MySQL不是很清晰,可以参看PHP 17: MySQL的简单介绍.对于数据库的操作,无非就是以下几个点: 如 ...
- 基于4.5Framework web程序、SQLSERVER数据库打包
原文:基于4.5Framework web程序.SQLSERVER数据库打包 估计很多朋友和我一样,对于C/S程序打包很熟悉,但对于B/S程序打包一头雾水... 最近公司要求我们把项目和数据库(SQL ...
- JQuery -> 超级简单的下拉菜单
使用jquery实现一个超级简单的下拉菜单. 效果图 最初的效果 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRmVlTGFuZw==/font/5a6L ...
- WindowsService开发遇到的问题
1.Windows服务安装 通过cmd运行指令安装Windows服务: 安装方法:运行cmd,以InstallUtil.exe 来运行 Windows服务程序. 如果是Release模式的话,直接在c ...
- WebIM(5)----将WebIM嵌入到页面中
在之前的文章中,已经开发了一个简单的WebIM,但是这个WebIM是在独立的页面中的,今天发布的WebIM是一个可以嵌入到自己网页中的版本,你只需添加少量的代码,就可以在页面中嵌入一个WebIM.不过 ...
- ORACLE抽象数据类型
ORACLE抽象数据类型 *抽象数据类型*/1,抽象数据类型 概念包含一个或多个子类型的数据类型不局限于ORACLE的标准数据类型可以用于其他数据类型中 2,创建抽象数据类型 的语法(必须用NOT F ...
- [转]理解C# 4 dynamic(1) - var, object, dynamic的区别以及dynamic的使用
阅读目录: 一. 为什么是它们三个 二. 能够任意赋值的原因 三. dynamic的用法 四. 使用dynamic的注意事项 一. 为什么是它们三个? 拿这三者比较的原因是它们在使用的时候非常相似.你 ...