一、         linux部分

  1. 请阐述swap分区作用,您认为hadoop集群中的linux是否必须有swap分区?
答:在Linux中,如果一个进程的内存空间不足,那么,它会将内存中的部分数据暂时写到磁盘上,当需要时,再将磁盘上的数据动态置换到内存中,通常而言,这种行为会大大降低进程的执行效率。在MapReduce分布式计算环境中,用户完全可以通过控制每个作业处理的数据量和每个任务运行过程中用到的各种缓冲区大小,避免使用swap分区。
  具体方法是调整/etc/sysctl.conf文件中的vm.swappiness参数。vm.swappiness有效范围是0~100,值越高表明内核应该更积极将应用程序的数据交换到磁盘,较低的值表示将延迟这种行为,而不是强制丢弃文件系统的缓冲区。

参考链接:http://www.aixchina.net/Question/172307

  1. 请根据free -g -t,说明内存使用情况,给出剩余内存和可用内存大小。

Total userd free shared buffers cached

Mem: 62 56 6 0 0 45

-/+ buffers/cache: 10   52

Swap: 19 0 19

Total: 82 56 26

答:剩余内存等于userd-buffers-cache,即-buffers/cache的值10

可用内存等于free+buffers+cache,即+buffers/cache的值52

参考链接:http://www.cnblogs.com/pengdonglin137/p/3315124.html

  1. 请说明ssh-copy-id hadoop@host命令实现的作用

答:ssh-copy-id 将本机的公钥复制到远程机器的authorized_keys文件中

  1. 写一个脚本,实现批量添加20个用户,用户名为hdfs01-20,密码为用户名后面跟5个随机字符。
 #!/bin/bash
	for i in seq 1 9
   do
   pwd=$(cat /dev/urandom | head -1 | md5sum | head -c 5)
	username=hdfs0$i
   useradd username
   echo "${username}$pwd" | passwd --stdin user$i
   echo ${username} ${username}$pwd" >> userinfo.txt
   done
   for i in seq 10 20
   do
   pwd=$(cat /dev/urandom | head -1 | md5sum | head -c 5)
   useradd hdfs$i
   echo "hdfs$i$pwd" | passwd --stdin user$i
   echo hdfs$i hdfs$i$pwd" >> userinfo.txt
   done
  1. 查看当前系统中每个IP的连接数

netstat -n |awk ‘/^tcp/ {print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -rn

其中uniq -c是求uv,sort -rn 是降序,以数字顺序排序

参考值:http://yuangeqingtian.blog.51cto.com/6994701/1191651

  1. 写出查找yarn-hdfs-resourcemanager-master01.log包含error(不区分大小写)字符前后各15行的命令

答案:cat yarn-hdfs-resourcemanager-master01|grep -i ‘error’-C  15

  1. 写出查找当前时间48小时之前的hdfs用户的普通文件并删除的命令。

答:find -mtime +2 -user hdfs -type f -exec rm {} \

参考自:http://www.2cto.com/os/201208/149552.html

  1. 写出显示/usr/local/nagios/etc/nrpc.cfg文件中出去以#开头和空行的所有内容的命令。

答:cat  /usr/local/nagios/etc/nrpc.cfg |grep ‘^#’

cat /usr/local/nagios/etc/nrpc.cfg |grep ‘^$’

  1. 假设有200台HADOOP主机,slave001到slave200,在开启ssh互信的情况下,编写脚本实现在任意主机上执行批量查看磁盘大小的功能

期望结果:

Slave001:

/dev/sdb1 ext4 548G 224G 297G 43% /data/disk01s

Slave002:

/dev/sdb1 ext4 548G 224G 297G 43% /data/disk01s

Slave003:

...

答:

vim ssh_cmd.sh

#!/bin/bash

cmd=$1

for((i=1;i<=200;i++))

do

a=$((1000+$i))

user=Slave${a:1}

echo ${user}:

ssh ${user}

out=cmd

echo ${out}

done

sh  ssh_cmd.sh `df -h /dev/sdb1`

二、HADOOP部分

  1. Hadoop自身具有严格的权限管理和安全措施保证集群正常运行。(F)
  2. NameNode负责管理metadata,client端每次读写请求,它都会从磁盘中读取或者写入metadata信息并反馈client端。(F)
  3. Hadoop2.0以上版本支持热部署,修改fair-scheduler.xml或capacity-scheduler.xml文件,调度策略自动生效。(F)
  4. HDFS文件支持随机读写。(F)
  5. Hadoop默认调度器为公平调度,队列内部是FIFO策略。(F)
  6. 不同版本hadoop集群之间数据迁移如何实现(给出两种实现方法)

答:1.使用distcp命令,例如hadoop distcp hftp://10.4.2.41:50070/user  hdfs://nn2:8020/bar/foo

参考自:http://www.tuicool.com/articles/INJZVfY

2.小数据量hadoop -get拷贝到本地,在scp到新集群

  1. 用什么命令查看hadoop相关进程的详细情况

答:jps

  1. 如何查看集群中的job的状态,如何杀掉指定用户的所有job(命令行),写出命令。

答:

mapreduce(yarn-core)web界面查看job详细

for i in `hadoop job -list | grep -w  username| awk '{print $1}' | grep job_`;

do

hadoop job -kill $i;

done

  1. 如何给用户限制使用HDFS文件系统的大小,如限制用户hadoop大小为10T,写出命令。

答:

10.如何统计某一HDFS目录下的文件数

答:hadoop fs -ls /tmp |wc -l

11.如何快速定位某个hadoop进程的输出日志。

答:Hadoop 2.x中YARN系统的服务日志包括ResourceManager日志和各个NodeManager日志,他们的日志位置如下:
ResourceManager日志存放位置是Hadoop安装目录下的logs目录下的yarn-*-resourcemanager-*.log
NodeManager日志存放位置是各个NodeManager节点上hadoop安装目录下的logs目录下的yarn-*-nodemanager-*.log
应用程序日志包括jobhistory日志和Container日志,其中,jobhistory日志是应用程序运行日志,包括应用程序启动时间、结束时间,每个任务的启动时间、结束时间,各种counter信息等。
Container日志包含ApplicationMaster日志和普通Task日志,它们均存放在Hadoop安装目录下的userlogs目录中的application_xxx目录下,其中ApplicationMaster日志目录名称为container_xxx_000001,普通task日志目录名称则为container_xxx_000002,container_xxx_000003,….,同Hadoop 1.x一样,每个目录下包含三个日志文件:stdout、stderr和syslog,且具体含义是一样的。

12.列出您使用过的hadoop常用命令和集群管理工具。

13.列出您运维或部署过的Hadoop生态圈相关的组件

14.写出你做过的hadoop集群优化措施以及收到的效果

15.谈谈您对mapreduce和spark的看法

hadoop面试时的一些问题解答的更多相关文章

  1. hadoop面试时可能遇到的问题

    面试hadoop可能被问到的问题,你能回答出几个 ? 1.hadoop运行的原理? 2.mapreduce的原理? 3.HDFS存储的机制? 4.举一个简单的例子说明mapreduce是怎么来运行的 ...

  2. hadoop面试100道收集(带答案)

    1.列出安装Hadoop流程步骤 a) 创建hadoop账号 b) 更改ip c) 安装Java 更改/etc/profile 配置环境变量 d) 修改host文件域名 e) 安装ssh 配置无密码登 ...

  3. 面试时遇到的SQL

    CustomerID DateTime ProductName Price C001 2014-11-20 16:02:59 123 PVC 100 C001 2014-11-19 16:02:59 ...

  4. (Java后端 Java web)面试时如何展示自己非技术方面的能力(其实就是综合能力)

    这篇文章的适用范围其实不仅限于Java后端或Java Web,不过其中有些是拿这方面举例的,在其它方面,大家可以举一反三,应该也能得到些启示. 我们在面试时,会发现有些候选人技术不错,比如在Java ...

  5. 面试时,当你有权提问时,别客气,这是个逆转的好机会(内容摘自Java Web轻量级开发面试教程)

    前些天,我在博客园里写了篇文章,如何在面试中介绍自己的项目经验,收获了2千多个点击,这无疑鼓舞了我继续分享的热情,今天我来分享另外一个面试中的甚至可以帮助大家逆转的技巧,本文来是从 java web轻 ...

  6. 通过软引用和弱引用提升JVM内存使用性能的方法(面试时找机会说出,一定能提升成功率)

    初学者或初级程序员在面试时如果能证明自己具有分析内存用量和内存调优的能力,这相当有利,因为这是针对5年左右相关经验的高级程序员的要求.而对于高级程序员来说,如果能在面试时让面试官感觉你确实做过内存调优 ...

  7. 面试时怎样回答:你对原生ajax的理解

    很多人跟我一样用习惯了jq封装好的$.ajax,但是面试时,原生ajax是很多面试官喜欢问的问题,今天再查资料,打算好好整理一下自己理解的原生ajax. 首先,jq的ajax:一般我常用的参数就是这些 ...

  8. hadoop启动时,报ssh: Could not resolve hostname xxx: Name or service not known

    本文转载自:http://blog.csdn.net/wodewutai17quiet/article/details/76795951 问题:hadoop启动时,报ssh: Could not re ...

  9. 反省在北京某S2B2C电商小型公司面试时掉链子的问题

    昨天,参与北京一家公司面试时,不知道为什么,错了很多题,这些题在该家公司之前已经被问很多次了,当天精神恍惚的没答上来或答错,被问到数据库优化和乐观锁的问题,首先我谈到了存储引擎底层的数据结构 B树/B ...

随机推荐

  1. C语言-------多文件编译

    (1)前段时间,学长讲解宏的一些知识  也提起了那个多文件编译,同过看别人的博客,自己也懂了一些,现在来总结一下这个多文件编译,其实和java里面的那个class的调用好像有联系 其定义即可以理解成: ...

  2. Python随机森林算法的使用

    #coding:utf-8 # from python.Lib.packages.sklearn.tree import DecisionTreeClassifier # from python.Li ...

  3. android之RadioGroup

    radioGroup这控件在开发中也是常用到的 RadioGroup 有时候比较有用.主要特征是给用户提供多选一机制. 用微信举一个例子吧! <?xml version="1.0&qu ...

  4. JProfiler使用入门(一)——准备工作

      JProfiler是一个全功能的Java剖析工具(profiler),主要用于检查和跟踪系统(限于Java开发的)的性能. JProfiler可以通过时时的监控系统的内存使用情况,随时监视垃圾回收 ...

  5. Web大规模高并发请求和抢购的解决方案

    电商的秒杀和抢购,对我们来说,都不是一个陌生的东西.然而,从技术的角度来说,这对于Web系统是一个巨大的考验.当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要.这次我们 ...

  6. 使用PreTranslateMessage替代钩子函数处理键盘消息

    2002年左右,我所在公司在开发基于H.323的VoIP电话系统(用了以色列一家公司的库,具体名字忘记了). 去电信科技研究院测试系统,同事发现处理键盘消息总有一些莫名其妙的问题,比如延迟或异常. 我 ...

  7. Apache配置多域名 AH00548: NameVirtualHost has no effect and will be removed in the next release

    httpd-vhosts.conf 中首行 NameVirtualHost *:80 删除掉即可解决.

  8. php使用openssl来实现RSA(非对称加密)

    使用非对称加密主要是借助openssl的公钥和私钥,用公钥加密私钥解密,或者私钥加密公钥解密. 1.安装openssl和PHP的openssl扩展 2.生成私钥:openssl genrsa 用于生成 ...

  9. win10使用Composer-Setup安装Composer以及使用Composer安装Yii2最新版

    1:下载 ca-bundle.crt和cacert.pem 将这两个文件放在php目录下 2:php.ini中添加上述两个文件的路径 curl.cainfo=C:/xampp/php/ca-bundl ...

  10. 模板短信接口调用java,pythoy版(一) 网易云信

    说明 短信服务平台有很多,我只是个人需求,首次使用,算是测试用的,故选个网易(大公司). 稳定性:我只测试了15条短信... 不过前3条短信5分钟左右的延时,后面就比较快.... 我只是需要发短信,等 ...