阿里云ECS同区域不同账户之间通信配置

前言:本人是穷学生狗,所以阿里云搭建spark集群只能用自己学生账户,再借同学的账户,在经过官方文档外加售后工程师的悉心指导下,终于打通了各个账户下的vpc。ps:在网上有许多配置方法,如设置安全组,这个我问了售后工程师,只能是同账户下才管用;另外,还有想把不同账户下的实例加入同一个vpc的童鞋,也省省吧,不现实。
学生云的不足:由于学生云ECS只分配了内网网卡,所以在配置spark/hadoop的时候只能设置内网网卡,否则,集群是不能启动起来的;所以这样也导致了一个问题,调试的时候(spark-shell或者idea),spark的转换操作时没问题的,但是一旦到了行动操作,数据是取不回来的。关于这点,小弟也没能搞清楚原因,只能猜测是发送数据时,数据帧到spark集群,带的ip地址是master内网ip,而数据返回也是返回给了这个内网ip,没转发给外网。。。。。胡乱猜测,希望有大神纠正。。
正文:1.购买阿里云ECS(千万不要买成了轻量云,轻量云没法内网通信哦,后果自负哦)
2.第一个账户:进入管理控制台--》进入专有网络vpc--》创建专有网络 这里得到的称之为vpc1
3.第二个账户:同2,称之为vpc2
4.第一个账户:进入高速通道管理器--》创建路由器接口 --》选择按量付费(同一个区域不会收费的)--》只创建发起端
可得到路由器接口ID:ri-1 路由器ID:vrt-1
5.第二个账户,进入高速通道管理器--》创建路由器接口 --》选择按量付费(同一个区域不会收费的)--》只创建接收端
分别得到ri-2 vrt-2
6.回到账户一的路由器列表,在刚才创建路由器的右端选择 更多--》编辑对端接口信息 填入账户二的账户ID,路由器ID,和路由器接口ID。确认。
7.账户二的操作类似于6,填入账户一的账户ID,路由器ID,和路由器接口ID。确认。
8.回到账户一,点击发起连接。。约30秒可连接成功。
9.在账户一刚创建的路由器上点击 路由配置--》添加路由 目标网段为账户二的交换机网段(详见后);下一跳类型为 路由器接口(普通路由) ;接口实例为 ri-1 点击添加
10.回到账户二:操作类似于账户一
注:1.查询交换机网段方法:进入 专有网络vpc--》交换机 可以看到你的交换机网段
2.中间有任何不明白的也可以去阿里云官方搜索 “vpc互通”,我这里写得比较简略

到目前为止,不同账户间的vpc网络已经打通了,如果还没有ping通,那么你需要分别配置账户一和账户二的安全组,分别把对端的ip,端口等加入允许访问组里面。(这里就忽略了,不知道的可以百度)

补充一点:今天又遇到新问题,就是vpc1需要同时和vpc2和vpc3连通,但是vpc2和vpc3所在实例的交换机又恰巧属于同一个网段,那么可以创建一个交换机(方法百度),然后再参照如下流程即可改变实例的私网IP
https://help.aliyun.com/document_detail/27733.html?accounttraceid=0f1c4ca5-5422-4a68-a538-4b76c83a5aa0

操作步骤

  1. 登录云服务器ECS管理控制台

  2. 在ECS左侧导航栏,单击实例,打开实例列表,然后选择地域。

  3. 在目标实例的操作列中,单击更多 > 停止

  4. 实例停止运行后,单击目标实例的ID,进入实例详情页面。

  5. 配置信息区域,单击更多>修改私网IP

  6. 修改私网IP对话框,选择要更换的交换机,然后单击修改

    确保选择的交换机的可用区和当前交换机的可用区相同。

    注意:如果您不需要切换ECS实例的交换机,则直接修改私网IP即可。

    阿里云ECS同区域不同账户之间通信配置

  7. 返回到实例列表页面,在操作列中,单击更多>启动,ECS实例重新启动后,修改的私网IP就生效了。