hadoop 守護進程一般同時運行RPC 和HTTP兩個服務器,RPC服務器支持守護進程間的通信,HTTP服務器則提供與用戶交互的Web頁面。需要分別爲各個服務器配置網絡地址和端口號。當網絡地址被設爲 0.0.0.0的時候,Hadoop將於本機上所有的地址綁定。用戶也可以將服務器與某個指定的地址綁定。端口號爲0 表示服務器會選擇一個空閒的端口號:但這種做法與集羣範圍的防火牆策略不兼容,因爲防火牆通常開放一定的端口不會放開全部的端口,防止對服務器造成衝擊。
RPC 服務器的屬性
fs.default.name 被設置爲一個HDFS的URI時,該屬性描述namenode的RPC服務器地址和端口。若未指定端口,那端口號默認是8020
dfs.datanode.ipc.address datanode 的RPC 服務器的地址和端口
mapred.job.tracker 被設爲主機名稱和端口號時,該屬性指定jobtracker的RPC服務器地址和端口。常用的端口號是8021
mapred.task.tracker.report.address tasktracker的RPC 服務器地址和端口號,tashtracker的子JVM利用它和tasktracker通信。默認是127.0.0.0:0表示可以使用任一空閒端口,因爲服務器進對回送地址隱藏。如果本機器沒有回送地址,則需變更默認設置。
HTTP服務器的屬性
mapred.job.tracker.http.address 默認0.0.0.0:50030
mapred.task.tracker.http.address 默認0.0.0.0:50060
dfs.http.address 默認0.0.0.0:50070
dfs.datanode.http.address 默認0.0.0.0:50075
dfs.secondary.http.address 默認0.0.0.0:50090
除了 RPC服務器之外,datanode也運行TCP/IP服務器以支持塊傳輸。服務器地址和端口屬性有
dfs.datanode.address 默認是 0.0.0.0:50010
當有多個網絡接口時,還可以選擇某一個網絡接口作爲各個datanode和tasktracker 的IP地址(針對RPC和HTTP服務器)。相關屬性包括
dfs.datanode.dns.interface
mapred.tasktracker.dns.interface
默認都是default 表示使用默認的網絡接口,可以修改者兩個屬性項來變更網絡接口的地址 例如 ech0;