版权声明:博客将逐步迁移到 http://cwqqq.com https://blog.csdn.net/cwqcwk1/article/details/24738599

在Linux下部署erlang项目,开发过程非常多都是在Windows完毕的,然后再公布到Linux,所以測试过程要在虚拟机下完毕。有一天由于想要在虚拟机中使用到erlang图形化工具。比方appmon、tv、observer等等,便突发奇想得利用Windows的erlang连接到虚拟机中使用这些工具,来查看虚拟机的执行状态。

须要准备哪些东西?

我是在VmWare10虚拟Centos6.5系统。所以这里以VmWare10和Centos6.5为例,其它Linux系统及工具仅仅做參考。

注意了,Linux的erlang要和Windows的erlang的主版本号号要保持一致,比方你在Linux下选用R15B03的erlang,在Windows下就不能用R16、R17的版本号了。

这里跳过VmWare装Centos系统及erlang等软件的过程。

首先,确保Windows和虚拟机能通信。

其实,这一步vm已经帮我们做好了。

简单的測试方法就是ping一下,Windows下获取ip的命令是ipconfig。Linux是ifconfig,获取后两方互ping一下。

假设ping不通能够考虑重装vm,建议使用比較新的版本号。

这里我的Windows IP是192.168.1.100。虚拟机的ip是192.168.146.128

启动erlang节点

Windows下启动erlang节点:

erl -name win@192.168.1.100 -setcookie 123456

虚拟机启动erlang节点:

erl -name linux@192.168.146.128 -setcookie 123456

虚拟机更新防火墙:

1、查看epmdport情况,应该能够看到erlang节点占用的port。将这些port加到防火墙的同意port

netstat -apn |grep epmd

2、改动iptables

vi /etc/sysconfig/iptables

在适当的位置加入2行记录

命令仅參考,不同系统或版本号可能有差别

-A INPUT -p tcp -m state --state NEW -m tcp --dport 4369 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 30000:65535 -j ACCEPT

3、重新启动iptables让策略生效

service iptables stop

service iptables start

Windows连接虚拟机节点:

Windows启动erlang节点后,再连接到虚拟机中的远程节点

D:\> erl –name win@192.168.1.100 –setcookie 123456
(win@192.168.1.100)1> net_kernel:connect('linux@192.168.146.128').
true
(win@192.168.1.100)2> nodes().
['linux@192.168.146.128']

说明连接成功了!

以下以appmon演示这个功能

 

执行appmon:start().后,在界面中选择Nodes菜单就有节点的选项。

參考:

http://blog.csdn.net/mycwq/article/details/24738599

erlang在windows下和虚拟机节点通信的更多相关文章

  1. windows azure中国 里面建立一个虚拟机,与虚拟机建立通信 里面部署IIS,外网访问

    在windows azure中国 里面建立一个虚拟机,里面部署IIS,外网不能访问么? 外网访问的地址是给的那个DNS地址 ,比如我的是 DNS 名称 urbanairserver.cloudapp. ...

  2. 学习Hadoop+Spark大数据巨量分析与机器学习整合开发-windows利用虚拟机实现模拟多节点集群构建

    记录学习<Hadoop+Spark大数据巨量分析与机器学习整合开发>这本书. 第五章 Hadoop Multi Node Cluster windows利用虚拟机实现模拟多节点集群构建 5 ...

  3. 运行预构建 Linux 映像的 Windows Azure 虚拟机中的交换空间 – 第 1 部分

    本文章由 Azure CAT 团队的 Piyush Ranjan (MSFT) 撰写. 随着基础结构服务(虚拟机和虚拟网络)近期在 Windows Azure 上正式发布,越来越多的企业工作负荷正在向 ...

  4. SPARK如何使用AKKA实现进程、节点通信

    SPARK如何使用AKKA实现进程.节点通信 <深入理解Spark:核心思想与源码分析>一书前言的内容请看链接<深入理解SPARK:核心思想与源码分析>一书正式出版上市 < ...

  5. 宿主机Windows访问虚拟机Linux文件(二)

    上一篇文章中详细讲述FTP服务(基于文件传输协议的服务),本文则介绍另一种能够实现此功能Telnet(Telecommunications network 远程登陆)服务.本文介绍的telnet我常用 ...

  6. virtualbox 下windows与虚拟机实现文件共享---挂载

    1.创建挂载目录: mkdir /mnt/share 2.挂载:mount /dev/cdrom /mnt/share 3.cd /mnt/share 3.虚拟机-设备-分配光驱-VBoxGuestA ...

  7. Windows Azure 虚拟机备份

    如果我们要在Windows Azure的虚拟机上进行一些“重要且高危”的操作,我们通常会想到使用快照或者备份功能.但是在Windows Azure上是没有虚拟机快照功能的,尽管我们可以对虚拟机的磁盘文 ...

  8. XE6移动开发环境搭建之IOS篇(5):解决Windows和虚拟机下Mac OSX的共享问题(有图有真相)

    网上能找到的关于Delphi XE系列的移动开发环境的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 在安装XE6 PAS ...

  9. Windows下虚拟机安装Mac OS X ----- VM12安装Mac OS X 10.11

    Windows下虚拟机安装Mac OS X -– VM12安装Mac OS X 10.11 随着Iphone在国内大行其道,越来越多的开发者涌入iOS开发大军 中,但都苦于没有苹果机,本文即将介绍WI ...

随机推荐

  1. (4.20)sql server分离附加操作

    关键词:sql server分离.sql server附加.分离附加.sql server附加分离 [0].数据库分离.附加的说明 SQL Server提供了“分离/附加”数据库.“备份/还原”数据库 ...

  2. 数据持久化之嵌入式数据库 SQLite(三)

    阿里P7Android高级架构进阶视频免费学习请点击:https://space.bilibili.com/474380680 SQLite 是 D. Richard Hipp 用 C 语言编写的开源 ...

  3. SqlServer 跨库访问

    同实例跨库 只需要 库名.dbo.表 dbo可省略 如: use Test select * from rdrecords select * from oa.dbo.UserInfo 不同实例与不同i ...

  4. uvloop官网翻译

    魔术堆栈 uvloop:快速的Python网络连接 作者Yury Selivanov @ 1st1 2016年5月3日 TL; DR asyncio是Python标准库附带的异步I / O框架.在此博 ...

  5. 32-python基础-python3-列表永久排序方法-sort()方法

    1-数值的列表或字符串的列表,能用 sort()方法排序. 实例1: 实例2: 2-可以指定 reverse 关键字参数为 True,让 sort()按逆序排序. 实例1: 3-关于 sort()方法 ...

  6. 【Movie】绿皮书

    今天和室友一起去看了<绿皮书>,一部获得奥斯卡的电影. 起初我是没什么太大期望的,纯粹是因为特价票10块钱,加上身边一个小姐姐的力荐. 看完我觉得,啊不愧是奥斯卡电影啊.推荐. 以下可能会 ...

  7. Samba服务的安装

    Samba的安装 1.准备环境 Centos7 [root@localhost ~]# systemctl stop firewalld [root@localhost ~]# setenforce ...

  8. iptables 防火墙(上)

    iptables 防火墙(上) 1. 防火墙概述 1.1 概念与作用 网络中的防火墙是一种将内部网络和外部网络分开的方法,是一种隔离技术.防火墙在内网与外网通信时进行访问控制,依据所设置的规则对数据包 ...

  9. 转译es6原生原生对象及方法,如Object.assign,Object.keys等,及promise

    下面主要为兼容恶心的ie 1,首先引入‘babel-polyfill’,可写在webpack.dev.js的entry.vendors数组里面 2,在入口文件如app.js里面import 'babe ...

  10. spring在注解标注的方法上加切面

    之前以为只能在方法签名上加切面,今天发现注解上也能加切面 1.自定义一个注解(任意注解都可以,不一定是自定义的) @Target({ElementType.METHOD}) @Retention(Re ...