我们安装完Yarn后,可以在浏览器中通过http://master:8088来访问Yarn的WEB UI,如下图:
我们详细解释上图中标记为1(也就是cluster)和2(也就是Nodes)两个界面中和资源有关的信息
对上面7个字段信息进行解释:
1.Active Nodes:表示Yarn集群管理的节点的个数,其实就是NodeManager的个数,我们集群有2个NodeManager
2.Memory Total:表示Yarn集群管理的内存的总大小,这个内存总大小等于所有的NodeManager管理的内存之和,每一个NodeManager管理的内存大小通过yarn-site.xml中的如下配置进行配置的:
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>1630</value>
<description>表示这个NodeManager管理的内存大小</description>
</property>
从配置中可以看到每一个NodeManager管理的内存大小是1630MB,那么整个Yarn集群管理的内存总大小就是1630MB * 2 = 3260MB约等于3.18GB,也就是我们看到的Memory Total
3.Vcores Total:表示Yarn集群管理的cpu的虚拟核心的总数,这个大小等于所有的NodeManager管理的虚拟核心之和,每一个NodeManager管理的虚拟核心数是通过yarn-site.xml中的如下配置进行配置的
<property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>2</value>
<description>表示这个NodeManager管理的虚拟核心个数</description>
</property>
从配置中可以看到每一个NodeManager管理的虚拟核心数是2,那么整个Yarn集群管理的虚拟核心的总数就是2 * 2 = 4,也就是我们看到的Vcores Total
4.Scheduler Type:表示资源分配的类型,也就是我Hadoop-yarn安装文章中说到的三中资源调度
5.Minimum Allocation:最小分配资源,就是说当一个任务向Yarn申请资源的时候,Yarn至少会分配<memory:1024, vCores:1>这个资源给这个任务,这个分配的最小内存和最小核心数可以分别由配置yarn.scheduler.minimum-allocation-mb(默认值是1024MB)和yarn.scheduler.minimum-allocation-vcores(默认值是1)来控制
6.Maximum Allocation:最大分配资源,就是说当一个任务向Yarn申请资源的时候,Yarn最多会分配<memory:1630, vCores:2>这个资源给这个任务,这个分配的最大内存和最多核心数可以分别由配置yarn.scheduler.maximum-allocation-mb(默认值是8192MB)和yarn.scheduler.maximum-allocation-vcores(默认值是32)来控制,当然这两个值肯定不能比集群管理的资源还要多
上面是Yarn集群管理的两个NodeManager的状态信息,分别如下:
1.Rack:表示NodeManager所在的机器所在的机架
2.Node State:表示NodeManager的状态
3.Mem Used:表示每个NodeManager已经使用了的内存大小。Mem Avail:表示每个NodeManager还剩多少可以使用的内存大小。VCores Used:表示每个NodeManager已经使用了的VCores数量。VCores Avail:表示每个NodeManager还剩多少可以使用的VCores数量。
点击一个Node Address
进入到如下的界面:
这个界面上的信息是slave2上的NodeManager的详细信息,其中,Total Vmem allocated for Containers表示这个NodeManager管理的虚拟内存的大小,虚拟内存大小由yarn-site.xml中的配置来设置的:
<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>4.1</value>
<description>表示这个NodeManager管理的虚拟内存和物理内存大小的比例</description>
</property>
上面配置yarn.nodemanager.vmem-pmem-ratio就是虚拟内存和物理内存大小的比例为4.1,也就是说虚拟内存的大小是物理内存大小的4.1倍,所以虚拟内存大小是1630MB * 4.1 = 6683MB,约等于6.53GB