Spark修炼之道(基础篇)——Linux大数据开发基础:第八节:网络管理

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云解析 DNS,旗舰版 1个月
云解析DNS,个人版 1个月
简介: 本节主要内容ifconfig命令网络配置其它常用网络管理命令1. ifconfig命令ifconfig命令主要用于配置网络接口,如果不加任何参数,则ifconfig命令用于查看当前所有活动网络接口的状态信息,例如: 图中的eth0表示活动的以太网接口,对应的描述信息中给出了网络的整体状况信息包括网络类型、MAC地址、IP地址、子网掩码等等,lo表示本地环回
+关注继续查看

本节主要内容

  1. ifconfig命令
  2. 网络配置
  3. 其它常用网络管理命令

1. ifconfig命令

ifconfig命令主要用于配置网络接口,如果不加任何参数,则ifconfig命令用于查看当前所有活动网络接口的状态信息,例如:
这里写图片描述
图中的eth0表示活动的以太网接口,对应的描述信息中给出了网络的整体状况信息包括网络类型、MAC地址、IP地址、子网掩码等等,lo表示本地环回网络地址。从图中可以看到,所有的网络类型都是inet即基于TCP/IP协议的网络。

目前支持的主流协议包括:
 inet (TCP/IP, 默认), 
 inet6 (IPv6), 
 ax25 (AMPR Packet Radio),
 ipx (Novell  IPX)  
 netrom (AMPR Packet radio).

ifconfig其它常用选项包括:

 -a     显示所有网络接口,包括停用的

 -s     短格式显示网络信息,同netstat -i
 -v     显示详细信息,在网络出错的情况下适用
 interface  指定网络接口
 up     启用网络接口

 down   关闭网络接口

例子:
(1)ifconfig -a
这里写图片描述
图中的pan0表示蓝牙设备,默认不开启
(2) ifconfig pan0 up
开启前 ifconfig -a显示的信息

pan0      Link encap:Ethernet  HWaddr d6:98:40:b0:9e:9d  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

执行完命令ifconfig pan0 up后

pan0      Link encap:Ethernet  HWaddr d6:98:40:b0:9e:9d  
          inet6 addr: fe80::d498:40ff:feb0:9e9d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:468 (468.0 B)

(3) ifconfig eth0 down禁用网络
这里写图片描述

2. 网络配置

目前网络配置采用的仍然是NAT即网络地址转换的形式
这里写图片描述
除NAT连网方式,VMWare还提供桥接(Bridged)与Host-only网络连接方式。它们之间的相关描述如下(部分内容引自http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646007.html):

(1)桥接
桥接网络是指本地物理网卡和虚拟机网卡通过VMnet0虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位,即物理网卡和虚拟网卡就相当于处于同一个网段,虚拟交换机就相当于一台现实网络中的交换机,因此两个网卡的IP地址也要设置为同一网段。
如果局域网中还有其他设备需要登录到虚拟机上,例如虚拟机提供ssh登录,此时最适用于使用桥接方式进行连网。

(2)NAT
NAT模式中,就是让虚拟机借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问网络。NAT模式中,虚拟机的网卡和物理网卡的网络,不在同一个网络,虚拟机的网卡,是在vmware提供的一个虚拟网络。

(3)Host-Only
在Host-Only模式下,虚拟网络是一个全封闭的网络,它唯一能够访问的就是主机。其实Host-Only网络和NAT网络很相似,不同的地方就是Host-Only网络没有NAT服务,所以虚拟网络不能连接到Internet。主机和虚拟机之间的通信是通过VMware Network Adepter VMnet1虚拟网卡来实现的。

  Host-Only的宗旨就是建立一个与外界隔绝的内部网络,来提高内网的安全性。这个功能或许对普通用户来说没有多大意义,但大型服务商会常常利用这个功能。如果你想为VMnet1网段提供路由功能,那就需要使用RRAS,而不能使用XP或2000的ICS,因为ICS会把内网的IP地址改为192.168.0.1,但虚拟机是不会给VMnet1虚拟网卡分配这个地址的,那么主机和虚拟机之间就不能通信了。

NAT和桥接的比较:

(1) NAT模式和桥接模式虚拟机都可以上外网。

(2) 由于NAT的网络在vmware提供的一个虚拟网络里,所以局域网其他主机是无法访问虚拟机的,而宿主机可以访问虚拟机,虚拟机可以访问局域网的所有主机,因为真实的局域网相对于NAT的虚拟网络,就是NAT的虚拟网络的外网,不懂的人可以查查NAT的相关知识。

(3) 桥接模式下,多个虚拟机之间可以互相访问;NAT模式下,多个虚拟机之间也可以相互访问。

如果你建一个虚拟机,只是给自己用,不需要给局域网其他人用,那么可以选择NAT,毕竟NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,只要虚拟机的网路配置是DHCP,那么你不需要进行任何其他的配置,只需要宿主机器能访问互联网即可,就可以让虚拟机联网了。

综述
  在VMware的3中网络模式中,NAT模式是最简单的,基本不需要手动配置IP地址等相关参数。至于桥接模式则需要额外的IP地址,如果是在内网环境中还很容易,如果是ADSL宽带就比较麻烦了,ISP一般是不会大方的多提供一个公网IP的。

在后期Hadoop、Spark集群搭建时,我们不建议使用NAT网络连接方式,因为NAT方式,每次关闭虚拟机重新启动后,分配的IP地址可能会不一样,这样的话不利用主机与IP地址的映射,因此推荐使用桥接方式,本节将着重讲解如果通过桥接方式进行网络配置,在配置之前先将虚拟机的网络连接方式设置为桥接,如下图
这里写图片描述

完成后按如下步骤进行网络配置:

1 修改 /etc/network/interfaces 文件内容,修改后的内容如下:
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.1.120
netmask 255.255.255.0
gateway 192.168.1.1

2 使配置后的网络地址生效
root@ubuntu:/var/lib/aptitude# vim /etc/network/interfaces 
//启动网络
root@ubuntu:/var/lib/aptitude# ifconfig eth0 up
//查看ip地址,发现没有产生变化
root@ubuntu:/var/lib/aptitude# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0c:29:e1:4c:1f  
          inet addr:192.168.47.130  Bcast:192.168.47.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fee1:4c1f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:25217 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7879 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:15912320 (15.9 MB)  TX bytes:588004 (588.0 KB)
          Interrupt:19 Base address:0x2024 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:153 errors:0 dropped:0 overruns:0 frame:0
          TX packets:153 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:11580 (11.5 KB)  TX bytes:11580 (11.5 KB)

pan0      Link encap:Ethernet  HWaddr d6:98:40:b0:9e:9d  
          inet6 addr: fe80::d498:40ff:feb0:9e9d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:468 (468.0 B)
//通过下列命令之后,修改后的ip地址才会生效
root@ubuntu:/var/lib/aptitude# /etc/init.d/networking restart
 * Reconfiguring network interfaces...                                       SIOCDELRT: No such process
ssh stop/waiting
ssh start/running, process 14692
                                                                      [ OK ]
root@ubuntu:/var/lib/aptitude# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0c:29:e1:4c:1f  
          inet addr:192.168.1.120  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fee1:4c1f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:25217 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7899 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:15912320 (15.9 MB)  TX bytes:591109 (591.1 KB)
          Interrupt:19 Base address:0x2024 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:156 errors:0 dropped:0 overruns:0 frame:0
          TX packets:156 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:11826 (11.8 KB)  TX bytes:11826 (11.8 KB)

pan0      Link encap:Ethernet  HWaddr d6:98:40:b0:9e:9d  
          inet6 addr: fe80::d498:40ff:feb0:9e9d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:468 (468.0 B)

3 设置DNS
光通过前面的设置,只能进行同一网络下的主机之间通信,如果要连接公网,还需要设置DNS,方法如下:
vim /etc/resolv.conf

这里写图片描述

将nameserver修改为8.8.8.8(google提供的域名解析服务)
,保存完成后,再执行
/etc/init.d/networking restart命令使域名设置生效。
完成后,如果使用ping www.baidu.com命令,能ping通则说明配置成功

这里写图片描述

3. 其它常用网络管理命令

(1)host进行DNS查询

root@ubuntu:/var/lib/aptitude# host www.baidu.com
www.baidu.com is an alias for www.a.shifen.com.
www.a.shifen.com has address 119.75.218.70
www.a.shifen.com has address 119.75.217.109

(2)netstat命令

netstat命令可以显示网络接口的很多统计信息,包括打开的socket和路由表

root@ubuntu:/var/lib/aptitude# netstat -r 
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.1.0     *               255.255.255.0   U         0 0          0 eth0
link-local      *               255.255.0.0     U         0 0          0 eth0
default         192.168.1.1     0.0.0.0         UG        0 0          0 eth0

(3)traceroute命令

traceroute命令进行路由追踪

root@ubuntu:/var/lib/aptitude# traceroute www.baidu.com
traceroute to www.baidu.com (119.75.217.109), 30 hops max, 60 byte packets
 1  192.168.1.1 (192.168.1.1)  3.382 ms  3.164 ms  3.610 ms
 2  218.108.255.67 (218.108.255.67)  3.354 ms  3.114 ms  2.884 ms
 3  218.109.2.70 (218.109.2.70)  2.683 ms  2.798 ms  2.300 ms
 4  30.250.9.6 (30.250.9.6)  2.634 ms  3.524 ms  2.535 ms
 5  30.207.6.97 (30.207.6.97)  3.085 ms  2.257 ms  2.891 ms
 6  *

(4)ping命令

ping命令常用来测试网络连接是否正常

root@ubuntu:/var/lib/aptitude# ping www.baidu.com 
PING www.a.shifen.com (119.75.218.70) 56(84) bytes of data.
64 bytes from 119.75.218.70: icmp_seq=1 ttl=55 time=68.3 ms
64 bytes from 119.75.218.70: icmp_seq=2 ttl=55 time=113 ms
64 bytes from 119.75.218.70: icmp_seq=3 ttl=55 time=69.4 ms

添加公众微信号,可以了解更多最新Spark、Scala相关技术资讯
这里写图片描述

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
7月前
|
缓存 分布式计算 NoSQL
大数据开发基础的Linux系统的基本的服务/软件部署
Linux系统作为大数据开发的重要基础之一,其服务和软件的部署也是非常关键的一环。本文将介绍大数据开发基础的Linux系统的基本的服务/软件部署。
78 0
|
7月前
|
存储 大数据 Shell
大数据开发基础的Linux系统的基本的Shell编程
在大数据开发中,Linux系统是一个非常重要的操作系统。而Shell编程是Linux系统中最基本的编程方式之一,能够帮助我们更高效地完成各种任务。本文将介绍关于大数据开发基础的Linux系统的基本的Shell编程。
74 0
|
7月前
|
存储 缓存 监控
大数据开发基础的Linux系统的常用系统和网络管理
当今世界正处于信息化时代,数据量不断增长。随着数据的庞大,对于数据处理和管理的需求也越来越高。在这个背景下,大数据开发成为了一个非常热门的领域。而Linux系统是大数据开发的重要基础之一。本文将介绍Linux系统的常用系统和网络管理。
65 0
|
7月前
|
大数据 Linux 网络安全
大数据开发基础的Linux系统的基本命令和配置
当我们开始进入大数据开发的世界时,Linux系统是不可避免的。在Linux上进行大数据开发需要熟悉一些基本的命令和配置。本文将介绍一些常用的命令和配置,让你能够更快速地上手Linux系统。
98 0
|
7月前
|
Ubuntu 大数据 Linux
大数据开发基础的Linux系统的系统安装部署
Linux系统在大数据开发中被广泛应用,它具有可靠性高、安全性好、稳定性强等优点,因此成为了大数据处理的首选操作系统。本篇文章将介绍一下Linux系统的安装和部署过程。
76 0
|
9月前
|
运维 分布式计算 Oracle
【大数据开发运维解决方案】Linux Solr5.1安装及导入Oracle数据库表数据
在solr页面中点击core admin–>add core 增加一个core。和id字段如果不做主键,需要将required="true"去掉。配置文件介绍中已经说了问题的主要原因是schema配置文件中存在。2、取消ID的required=true,修改为指定的字段即可。保存退出,至于为什么这么改,看后面遇到的问题及解决方法。1、将uniqueKey修改为你导入solr的字段。能够正常查询出来数据,简单导入完成。最后结果如上截图及配置。
【大数据开发运维解决方案】Linux Solr5.1安装及导入Oracle数据库表数据
|
SQL 分布式计算 大数据
BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略
BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略
BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略
|
SQL 分布式计算 大数据
BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略
BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略
|
SQL 分布式计算 Linux
Spark修炼之道(基础篇)——Linux大数据开发基础:第十五节:基础正则表达式(一)
参考书目:鸟哥的LINUX私房菜基础学习篇(第三版) Linux Shell Scripting Cookbook 本节主要内容 基础正则表达式 1. 基础正则表达式 (1)^行开始符 ^匹配一行的开始,例如’^Spark’ 匹配所有Spark开始的行 //grep -n表示查找到的结果显示行号 root@sparkslav
2727 0
|
分布式计算 大数据 Linux
Spark修炼之道(基础篇)——Linux大数据开发基础:第十四节:Shell编程入门(六)
本文主要内容 case控制结构 read命令 管道 1. case控制结构 参考:http://blog.csdn.net/dreamtdp/article/details/8048720 case控制结构语法格式: case expression in pattern1 ) statements ;; pattern2
2400 0
推荐文章
更多