docker入门与hadoop
docker hadoop
- docker入门实践
http://yuedu.baidu.com/ebook/d817967416fc700abb68fca1?pn=1&rf=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DxPpqMcWFb_-7-ceq6vjHMk1r3v21tG5PCM0IMmcfhJzurw8ZmWK3DEuJUSrG0M72Nwhjg2vSJHcVCNM6fzd38ezU98xYsXDRgUMxcltWqC8limYRWFETS7pusZO5CUYu%26wd%3D%26eqid%3Df7ebb456000df72600000004568dd017
- docker安装hadoop
http://www.cnblogs.com/songfy/p/4716431.html?utm_source=tuicool&utm_medium=referral
- 入门:http://udn.yyuap.com/doc/docker_practice/image/save_load.html
docker 网络###
pipework
- Pipework是由Docker的一个工程师设计的解决方案,它让容器能够在“任意复杂的场景”下进行连接。Pipework是Docker的一个网络功能增强插件,它使用了cgroups和namespacpace。点此查看该项目的源码。
- 安装pipework
# wget https://github.com/jpetazzo/pipework/archive/master.zip
# unzip pipework-master.zip
# cp pipework-master/pipework /usr/local/bin/
# chmod +x /usr/local/bin/pipework
- pipework会用到 ip netns 命令,检查下自己的机器是否存在。
- 不存在则
- 修改/etc/yum.repos.d/rdo-release.repo
# mv /etc/yum.repos.d/rdo-release.repo /etc/yum.repos.d/rdo-release.repo.backup
# vim /etc/yum.repos.d/rdo-release.repo
[openstack-juno]
name=OpenStack Juno Repository
baseurl=https://repos.fedorapeople.org/repos/openstack/EOL/openstack-icehouse/epel-6/
enabled=1
skip_if_unavailable=0
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-Juno
- 安装iproute:
# yum --enablerepo=openstack-juno install iproute
使用pipework 固定docker容器ip
# brctl show
# docker run -idt --net=none --name test1 registry.fjhb.cn/centos6 /bin/bash
# brctl show
# docker-enter test1
# ip a
# pipework kbr0 test1 172.17.1.3/24@172.17.1.1
# brctl show
# docker-enter test1
# ip a
# route -n
- Pipework有个缺陷,容器重启后IP设置会自动消失,需要重新设置。
- 注意使用了--net=none后,docker的port绑定就失效了
flannel
- Flannel之前的名字是Rudder,它是由CoreOS团队针对Kubernetes设计的一个覆盖网络工具,其目的在于帮助每一个使用 Kuberentes 的 CoreOS 主机拥有一个完整的子网。Kubernetes 会为每一个 POD 分配一个独立的 IP 地址,这样便于同一个 POD 中的Containers 彼此连接,而之前的 CoreOS 并不具备这种能力。为了解决这一问题,Flannel 通过在集群中创建一个覆盖网络为主机设定一个子网。点此查看该项目的源码。
https://github.com/coreos/flannel
Weave
- Weave是由Zett.io公司开发的,它能够创建一个虚拟网络来连接部署在多台主机上的Docker容器。通过Weave所有的容器就像被接入了同一个网络交换机,那些使用网络的应用程序不必去配置端口映射和链接等信息。外部设备能够访问Weave网络上的应用程序容器所提供的服务,同时已有的内部系统也能够暴露到应用程序容器上。Weave能够穿透防火墙并运行在部分连接的网络上。另外,Weave的通信支持加密,所以用户可以从一个不受信任的网络连接到主机。如果你想了解更多与Weave相关的信息,或者查看相关源码,那么可以点击这里。
https://github.com/weaveworks/weave
docker hadoop挂载卷###
- docker可以支持把一个宿主机上的目录挂载到镜像里。
docker run -it -v /home/dock/Downloads:/usr/Downloads ubuntu64 /bin/bash
- 通过-v参数,冒号前为宿主机目录,必须为绝对路径,冒号后为镜像内挂载的路径。
资料
- 五个解决docker网络问题的项目:
http://www.infoq.com/cn/news/2014/10/docker-network-project
- Docker网络详解及pipework源码解读与实践:
http://www.infoq.com/cn/articles/docker-network-and-pipework-open-source-explanation-practice/
- docker网络高级配置
http://blog.chinaunix.net/uid-522675-id-4861366.html
- dockerweave实现跨主机互联
http://blog.csdn.net/wangtaoking1/article/details/45244525
docker 十大管理工具
http://os.51cto.com/art/201411/456204.htm