创buildBigInsights(IBM Hadoop)Docker镜像,sysctl问题

我正在尝试使用IBM BigInsights QuickStart Edition创build一个Docker镜像,并使用本地软件安装程序在DOCKER容器云(例如IBM Bluemix)上运行,这可以在此处find:

http://www-01.ibm.com/software/data/infosphere/biginsights/quick-start/downloads.html

问题是,在安装过程中,我得到的错误是某些使用sysctl访问的内核参数设置不正确。

如果我使用Dockerfile调整它们,我得到一个错误:

只读文件系统

现在我想知道是否可以创build一个BigInsights镜像,因为必须在主机上设置内核参数,当然我无法控制容器云。

Dockerfile看起来像这样:

FROM centos:latest COPY biginsights-3.0.0.2-quickstart-nonproduction-Linux-amd64-b20150120_1502 /usr/local/biginsights-3.0.0.2-quickstart-nonproduction-Linux-amd64-b20150120_1502 RUN yum -y install tar RUN yum -y install hostname RUN yum -y install expect RUN yum -y install net-tools RUN yum -y install openssh RUN yum -y install openssh-clients RUN yum -y install openssh-server RUN yum -y install passwd RUN yum -y install sudo RUN ssh-keygen -f id_rsa -t rsa -N '' RUN mkdir /root/.ssh RUN chmod 700 /root/.ssh RUN mv id_rsa* /root/.ssh/ RUN cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys RUN cat /etc/ssh/sshd_config |sed 's/#PubkeyAuthentication yes/PubkeyAuthentication yes/' | sed 's/#RSAAuthentication yes/RSAAuthentication yes/'| sed 's/HostKey \/etc\/ssh\/ssh_host_rsa_key/#HostKey \/etc\/ssh\/ssh_host_rsa_key/'| sed 's/HostKey \/etc\/ssh\/ssh_host_ecdsa_key/#HostKey \/etc\/ssh\/ssh_host_ecdsa_key/' > /etc/ssh/sshd_config.stage RUN mv /etc/ssh/sshd_config.stage /etc/ssh/sshd_config RUN ssh-keygen -f /etc/ssh/ssh_host_key -N '' -t rsa1 RUN ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N '' -t rsa RUN ssh-keygen -f /etc/ssh/ssh_host_dsa_key -N '' -t dsa RUN ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N '' 

附加到容器后,我运行以下命令:

 /sbin/sshd -f /etc/ssh/sshd_config cat /etc/ssh/ssh_host_ecdsa_key.pub |awk '{print "localhost " $1" "$2}' > /root/.ssh/known_hosts echo "UUID=dummy /dummy dummy defaults,noauto 0 0" >> /etc/fstab export myip=`ifconfig |grep netmask|head -1|awk '{print $2}'` export myhostname=`hostname` cat /usr/local/biginsights-3.0.0.2-quickstart-nonproduction-Linux-amd64-b20150120_1502/silent-install/sample-install-enterprise-defaultFlat.xml |sed 's/9.125.91.82/'"$myip"'/g' |sed 's/node.sample.ibm.com/'"$myhostname"'/g' |sed 's/<partitions>1<\/partitions>/<partitions>2<\/partitions>/' > /usr/local/biginsights-3.0.0.2-quickstart-nonproduction-Linux-amd64-b20150120_1502/install.xml /usr/local/biginsights-3.0.0.2-quickstart-nonproduction-Linux-amd64-b20150120_1502/silent-install/silent-install.sh 

确切的错误是:

 [ERROR] (CDYIN0220E) 172.17.0.49: The kernel parameter kernel.pid_max is not set to 4194303. Use the sysctl program to set the kernel.pid_max parameter to 4194303. [ERROR] (CDYIN0221E) 172.17.0.49: The kernel parameter net.ipv4.ip_local_port_range is not set to a minimum of 1024. Use the sysctl program to set the minimum to 1024. [ERROR] (CDYIN0222E) 172.17.0.49: The kernel parameter net.ipv4.ip_local_port_range is not set to a maximum of 64000. Use the sysctl program to set the maximum to 64000 or greater. 

那么基本上SW如何被docker化,需要设置内核参数等变化?

最好的祝福

罗密欧(Kienzler)

尝试使用sudo运行命令