操做系统默认只能打开1024个文件,打开的文件超过这个数发现程序会有“too many open files”的错误,1024对于大数据系统来讲显然是不够的,若是不设置,基本上整个大数据系统是“不可用的”,根本不能用于生产环境。 node
配置方法以下:docker
echo "* soft nofile 128000" >> /etc/security/limits.confbash
echo "* hard nofile 128000" >> /etc/security/limits.conf服务器
echo "* soft nproc 128000" >> /etc/security/limits.conf网络
echo "* hard nproc 128000" >> /etc/security/limits.confapp
cat /etc/security/limits.confssh
sed -i 's/1024/unlimited/' /etc/security/limits.d/90-nproc.confoop
cat /etc/security/limits.d/90-nproc.conf性能
ulimit -SHn 128000大数据
ulimit -SHu 128000
在10~20年前一台服务器的内存很是有限,64m~128m,因此经过swap能够将磁盘的一部分空间用于内存。可是现今咱们的服务器内存广泛达到了64G以上,内存已经再也不那么稀缺,可是内存的读取速度与磁盘的读取相差倍数太大,若是咱们某段程序使用的内存映射到了磁盘上,将会对程序的性能照成很是严重的影响,甚至致使整个服务的瘫痪。对于YDB系统来讲,要求必定要禁止使用Swap.
禁用方法以下,让操做系统尽可能不使用Swap:
echo "vm.swappiness=1" >> /etc/sysctl.conf
sysctl -p
sysctl -a|grep swappiness
echo " net.core.somaxconn = 32768 " >> /etc/sysctl.conf
sysctl -p
sysctl -a|grep somaxconn
安装 Hadoop与Ambari均须要无密码登陆
设置方法请参考以下命令
ssh-keygen
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
ssh-copy-id root@ydbslave01
ssh-copy-id root@ydbslave02
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
chkconfig iptables off
/etc/init.d/iptables stop
service iptables stop
iptables -F
hostname ydbmaster
vi /etc/sysconfig/network
vi /etc/hosts
切记 hosts文件中 不要将localhost给注释掉,而且配置完毕后,执行下 hostname -f 看下 是否能识别出域名
setenforce 0
sed -i 's/enabled=1/enabled=0/' /etc/yum/pluginconf.d/refresh-packagekit.conf
cat /etc/yum/pluginconf.d/refresh-packagekit.conf
umask 0022
echo umask 0022 >> /etc/profile
若是为2,建议修改成0,不然有可能会出现,明明机器可用物理内存不少,但JVM确申请不了内存的状况。
先修改机器的语言环境
#vi /etc/sysconfig/i18n LANG="en_US.UTF-8" SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en" SYSFONT="latarcyrheb-sun16"
而后配置环境变量为utf8
echo "export LANG=en_US.UTF-8 " >> ~/.bashrc
source ~/.bashrc
export|grep LANG
Hadoop,YDB等均要求机器时钟同步,不然机器时间相差较大,整个集群服务就会不正常,因此必定要配置。建议配置NTP服务。
集群时间必须同步,否则会有严重问题
参考资料以下:
Linux系统时钟同步服务NTPD配置方法
http://blog.csdn.net/coding_cao/article/details/60571884
YDB支持JDK1.7,JDK1.8,为了便于管理和使用,建议使用YDB随机提供的JDK1.8
建议统一安装到/opt/ydbsoftware路径下。
请你们千万不要在公共的环境变量配置Hive、Spark、LUCENE、HADOOP等环境变量,以避免相互冲突。
尤为是Ambari,有些时候,使用U盘或移动硬盘复制软件,若是这个移动硬盘挂载点是中文路径,这时在安装Ambari的时候会出现问题,必定要注意这个问题。
df -h
默认Yarn会为每台机器保留10%的空间,若是剩余空间较少,Yarn就会停掉这些机器上的进程,并出现Container released on a lost node错误。
如能够编辑crontab -e 每小时,清理一第二天志,尤为是hadoop日志,特别占磁盘空间
0 */1 * * * find /var/log/hadoop/hdfs -type f -mmin +1440 |grep -E "\.log\." |xargs rm -rf