https://docs.mirantis.com/openstack/fuel/fuel-6.1/

由于在测试高可用时,我是用esxi虚拟机测试,测试过程中遇到了网络问题:虚拟机间网络不通,故从网络上找到了在vSwitch中抓包的方法。

1、首先先打开ESXi主机的ssh。

2、ssh连接ESXi主机,上传脚本a.sh,此脚本是老外编写 :

---------------------------------------------------------------------------------------

# William Lam
# http://www.virtuallyghetto.com/

if [[ $# -ne 1 ]] && [[ $# -ne 4 ]]; then
    echo -e "Usage: $0 -l -v [vSWITCH] -p [PORT]\n"
    echo "  -l List all ports of vSwitch(s)"
    echo "  -v vSwitch to query"
    echo "  -p Port to query on vSwitch"
    echo -e "\n\t$0 -l"
    echo -e "\t$0 -v vSwitch0 -p 1234\n"
    exit 0
fi
                                                        
if [ ! -e /sbin/vsish ]; then
    echo "Script is only supported running on an ESXi host as vsish is not available by default on ESX"
    exit 1
fi
                                                                
VSISH_VSWITCH_PATH=/net/portsets
                                                                
if [ $# -eq 1 ]; then
    for vSwitch in $(vsish -e ls ${VSISH_VSWITCH_PATH});
    do
        VSWITCH=$(echo ${vSwitch} | sed 's/\///g')
        for port in $(vsish -e ls ${VSISH_VSWITCH_PATH}/${vSwitch}ports);
        do
            PORT=$(echo ${port} | sed 's/\///g')
            PORTINFO=$(vsish -e get ${VSISH_VSWITCH_PATH}/${vSwitch}ports/${port}status | sed 's/^[ \t]*//;s/[ \t]*$//');
            CLIENT=$(echo ${PORTINFO} | sed 's/ /\n/g' | grep "clientName:" | awk -F ":" '{print $2}')
            MACADDRESS=$(echo ${PORTINFO} | sed 's/ /\n/g' | grep "unicastAddr:" | uniq | sed 's/unicastAddr://;s/\(.*\)./\1/')
            echo -e "${VSWITCH}\t${PORT}\t${MACADDRESS%%::*}\t${CLIENT}"
        done
    done
fi
                                                                                                                                                                                                                                                               
if [ $# -eq 4 ]; then
    QUERY_PATH="${VSISH_VSWITCH_PATH}/${2}/ports/${4}/status"
    echo "Querying port path: ${QUERY_PATH}"
    PNICS=$(vsish -e ls /net/portsets/${2}/uplinks/ | sed '$!N;s/\n/ /;s/\///g')
    echo -e "pNICS for vSwitch: ${PNICS}\n"
    vsish -e get "${QUERY_PATH}"
fi

---------------------------------------------------------------------------------------

3、使用脚本查看虚拟机网卡连接的虚拟交换机端口:

/vmfs/volumes/55b08c38-81076980-4852-f80f41f72abc/ISO # sh a.sh -l
vSwitch0        33554433        00:00:00:00:00:00       Management
vSwitch0        33554434        00:00:00:00:00:00       vmnic0
vSwitch0        33554435        00:50:56:57:2a:bc       Shadow
vSwitch0        33554436        f8:0f:41:f7:2a:bc       vmk0
vSwitch0        33554455        00:50:56:b6:2c:3a       itportal
vSwitch0        33554486        00:50:56:b6:3a:bc       ibmopenstack43
vSwitch0        33554507        00:50:56:b1:ce:ad       NTP
vSwitch0        33554510        00:50:56:b1:79:aa       wjw-CentOS6.5-Tomcat
vSwitch1        50331649        00:00:00:00:00:00       Management
vSwitch1        50331650        00:00:00:00:00:00       vmnic1
vSwitch1        50331651        00:50:56:57:2a:bd       Shadow
vSwitch1        50331683        00:0c:29:23:fe:62       VMware
vSwitch1        50331689        00:50:56:b1:5c:56       linux-oracle
vSwitch1        50331755        00:50:56:b1:7f:5b       wjw-CentOS6.5-Tomcat
vSwitch2        67108865        00:00:00:00:00:00       Management
vSwitch2        67109189        00:00:00:00:00:00       vmnic2
vSwitch2        67109190        00:50:56:57:2a:bb       Shadow
vSwitch2        67109194        00:50:56:b1:b0:cf       NTP
vSwitch2        67109196        00:50:56:b1:fc:32       zhouzunyi_test_fuel_61
vSwitch2        67109197        00:50:56:b1:86:3f       zhouzunyi_test_fuel_controller2
vSwitch2        67109198        00:50:56:b1:f5:fb       zhouzunyi_test_fuel_controller2
vSwitch2        67109199        00:50:56:b1:7d:8b       zhouzunyi_test_fuel_controller1
vSwitch2        67109200        00:50:56:b1:e7:40       zhouzunyi_test_fuel_controller1
vSwitch2        67109201        00:50:56:b1:46:6d       zhouzunyi_test_fuel_controller3
vSwitch2        67109202        00:50:56:b1:82:4c       zhouzunyi_test_fuel_controller3
vSwitch2        67109203        00:50:56:b1:43:04       zhouzunyi_test_fuel_compute1
vSwitch2        67109204        00:50:56:b1:e6:63       zhouzunyi_test_fuel_compute1
vSwitch2        67109205        00:50:56:b1:52:89       zhouzunyi_test_fuel_cinder1
vSwitch2        67109206        00:50:56:b1:d9:51       zhouzunyi_test_fuel_cinder1
vSwitch2        67109208        00:50:56:b1:91:fa       zhouzunyi_test_fuel_controller3
vSwitch2        67109209        00:50:56:b1:a5:e5       zhouzunyi_test_fuel_controller2
vSwitch2        67109210        00:50:56:b1:93:83       zhouzunyi_test_fuel_controller1
vSwitch2        67109211        00:50:56:b1:0c:00       zhouzunyi_test_fuel_compute1
vSwitch2        67109212        00:50:56:b1:37:13       zhouzunyi_test_fuel_cinder1
vSwitch2        67109213        00:00:00:00:00:00       zhouzunyi_test_fuel_61
vSwitch2        67109214        00:00:00:00:00:00       NTP

4、监听指定端口抓包:

/vmfs/volumes/55b08c38-81076980-4852-f80f41f72abc/ISO # pktcap-uw --switchport 67109199 -o ctrl1.pcap

5、下载数据包,用wireshark分析。

其它推荐学习资料:

ESXi虚拟交换机VLAN的三种配置EST、VST、VGT:

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1003806

http://kb.vmware.com/selfservice/search.do?cmd=displayKC&docType=kc&docTypeID=DT_KB_1_1&externalId=1004127

http://kb.vmware.com/selfservice/search.do?cmd=displayKC&docType=kc&docTypeID=DT_KB_1_1&externalId=1010778

http://kb.vmware.com/selfservice/search.do?cmd=displayKC&docType=kc&docTypeID=DT_KB_1_1&externalId=1004252

我的openstack节点的网络规划是:

则“物理网卡”eth1需要在ESXi中使用VGT配置:

此外,基于ns_IPaddr2的实现机制:命名空间桥接虚拟网桥,需要启用端口组的混杂模式,否则VIP无法被其它节点ping通:

最后,端口组所在虚拟交换机也要开启混杂模式。

fuel 6.1自动推送3控高可用centos 6.5 juno环境排错(二)的更多相关文章

  1. fuel 6.1自动推送3控高可用centos 6.5 juno环境排错(一)

    查看fuel日志: # less /var/log/docker-logs/remote/node-1.domain.tld/puppet-apply.log 2015-12-25T17:26:22. ...

  2. 百度自动推送js

    <!DOCTYPE html> <!-- saved from url=(0014)about:internet --> <html> <head> & ...

  3. SEO教程:快速增加360搜索引擎收录,360自动推送批量推送版

    上次改编了一下百度的JS推送代码,实现了批量推送 传送门>>>百度链接提交-js代码推送批量推送版 这次我们来研究360js自动推送代码. <script> (funct ...

  4. 使用GitHub Action进行打包并自动推送至OSS

    GitHub Action 是 GitHub 于 2018 年 10 月推出的一个 CI\CD 服务. 官方文档:https://docs.github.com/cn/actions CI\CD 持续 ...

  5. iOS 10 推送必看(高阶1)

    来源:徐不同 链接:http://www.jianshu.com/p/3d602a60ca4f iOS10 推送必看(基础篇) 虽然这篇文章比较长,也不好理解,但是还是建议大家收藏,以后用到的时候,可 ...

  6. HTML5 SSE自动推送

    前端页面: <!doctype html> <html> <head> <meta charset="UTF-8"> <tit ...

  7. SVN提交后自动推送消息到钉钉群

    钉钉设置机器人配置 1.进入配置机器人入口 2.添加机器人 3.测试WebHook请求 本人使用Postman进行测试 4.配置SVN 4.1 配置 Pre-commit hook 设置提交内容必须包 ...

  8. [钉钉通知系列]SVN提交后自动推送消息到钉钉群

    钉钉设置机器人配置 1.进入配置机器人入口 2.添加机器人 3.测试WebHook请求 本人使用Postman进行测试 4.配置SVN 4.1 配置 Pre-commit hook 设置提交内容必须包 ...

  9. java结合email实现自动推送

    1.获取表中最后一条数据 public static String demo() throws SQLException { String sql = "select * FROM baox ...

随机推荐

  1. Uploadify自定义提示信息

    Uploadify是一款基于Jquery的上传插件,用起来很方便.但上传过程中的提示语言为英文,这里整理下如何修改英文为中文提示.方法1:直接修改uploadify.js中的提示信息,将英文提示改成对 ...

  2. sqldeveloper连接mysql

    sqldeveloper连接mysql 腑镜诏 钌d 汁叁ㄧ勋 佚蔡弥噙 不仅仅是越南帮和戴爷的事情还有谢婉莹的条 炔验遒其 倒扇油┣ 砹笄谤 几句话孟飞的信心大增兴奋不已换句话说 谠诂k厝 ...

  3. Redis如何保存数组和对象

    个人建议使用PHP自带的序列化函数serialize和unserialize函数 我们可以封装一个自己的Redis类 <?php class MyRedis{ private static $h ...

  4. Windows下搭建PHP开发环境【总结】

    一.准备工作-下载所需软件 Apache 进入apache服务器官网http://httpd.apache.org/ ,下面是下载的教程:http://jingyan.baidu.com/articl ...

  5. centos6.5安装docker

    (一) 查看系统的版本和内核: $cat /etc/issue $uname -r 因为docker要求服务CentOS6以上,kernel 版本必须2.6.32-431或更高 要将Docker安装到 ...

  6. wpf 类似TextBlock外观的Button的样式

    <Style x:Key="noborderbtnStyle" TargetType="{x:Type Button}"> <Setter P ...

  7. MyBatis中Like语句使用方式

    oracle数据库: SELECT * FROM user WHERE name like CONCAT('%',#{name},'%') 或 SELECT * FROM user WHERE nam ...

  8. vim 操作(转)

    高效率移动编辑1.在插入模式之外基本上来说,你应该尽可能少的呆在插入模式里面,因为在插入模式里面 VIM 就像一个“哑巴”编辑器一样.很多新手都会一直呆在插入模式里面,因为这样易于使用.但 VIM 的 ...

  9. linux的学习系列 5--环境变量

    在Linux中,环境变量是一个很重要的概念.环境变量可以由系统.用户.Shell以及其他程序来设定. 变量就是一个可以被赋值的字符串,赋值范围包括数字.文本.文件名.设备以及其他类型的数据. 下面的例 ...

  10. 内存管理 & 内存优化技巧 浅析

    内存管理 浅析 下列行为都会增加一个app的内存占用: 1.创建一个OC对象: 2.定义一个变量: 3.调用一个函数或者方法. 如果app占用内存过大,系统可能会强制关闭app,造成闪退现象,影响用户 ...