calico实现docker容器内部的网络链接
calico官网
https://www.projectcalico.org//
calico介绍
http://www.sdnlab.com/17161.html
calico网络
环境
系统 centos 7.2
ip 10.0.0.51
IP 10.0.0.61
1.下载etcd
wget https://github.com/coreos/etcd/releases/download/v3.0.4/etcd-v3.0.4-linux-amd64.tar.gz
tar xf etcd-v3.0.4-linux-amd64.tar.gz
cd etcd-v3.0.4-linux-amd64
cp etcd /usr/bin/etcd && cp etcdctl /usr/bin/etcdctl
2.链接etcd集群
calico1执行
etcd --name infra0 --initial-advertise-peer-urls http://10.0.0.51:2380 --listen-peer-urls http://10.0.0.51:2380 --listen-client-urls http://10.0.0.51:2379,http://127.0.0.1:2379 --advertise-client-urls http://10.0.0.51:2379 --initial-cluster-token etcd-cluster-1 --initial-cluster infra0=http://10.0.0.51:2380,infra1=http://10.0.0.61:2380 --initial-cluster-state new &
calico2执行
etcd --name infra0 --initial-advertise-peer-urls http://10.0.0.61:2380 --listen-peer-urls http://10.0.0.61:2380 --listen-client-urls http://10.0.0.61:2379,http://127.0.0.1:2379 --advertise-client-urls http://10.0.0.61:2379 --initial-cluster-token etcd-cluster-1 --initial-cluster infra0=http://10.0.0.61:2380,infra1=http://10.0.0.51:2380 --initial-cluster-state new &
3.查看
etcdctl member list
docker配置
1.下载doker
yum install -y docker
2.修改docker的配置文件
calico1修改
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd $INSECURE_REGISTRY --cluster-store=etcd://10.0.0.51:2379
calico2修改
vim /usr/lib/systemd/system/docker.service
3.启动docker
systemctl daemon-reload
systemctl restart docker
三.calico
需要先下载calico/node 镜像
1.下载calico并授权
wget http://www.projectcalico.org/latest/calicoctl
chmod +x calicoctl && mv calicoctl /usr/local/bin
2.执行calico命令
1.在本机执行
calicoctl node run
2.在另一台执行
ETCD_ENDPOINTS=http://10.0.0.51:2379 calicoctl node run
3.查看
calicoctl node status
4.创建网络池
cat
> calico_pool_minion5.conf <<EOF
apiVersion: v1
kind: ipPool
metadata:
cidr: 10.1.0.0
/16
spec:
ipip:
enabled:
false
nat-outgoing:
true
disabled:
false
EOF
docker network create -d calico --ipam-driver calico-ipam --subnet=10.1.0.0
/16
net1
docker network
ls
7.测试
calico实现docker容器内部的网络链接的更多相关文章
- 从Docker容器内部,如何连接到本机的本地主机?
原文 从Docker容器内部,如何连接到本机的本地主机? 编辑:如果您使用的是Docker-for-mac或Docker-for-Windows 18.03+,只需使用主机连接到您的mysql服务即可 ...
- 在宿主机上执行docker容器内部的shell或程序
为了避免反复进入docker容器内部操作,可以将一系列容器内部的指令由宿主机来操作完成. 在宿主机(作者主机为windows7)上执行centos容器(name为centos-1)中/usr目录下的“ ...
- Jenkins(4)docker容器内部修改jenkins容器时间
前言 用docker搭建的Jenkins环境时间显示和我们本地时间相差8个小时,需修改容器内部的系统时间 查看时间 查看系统时间 date-R 进入docker容器内部,查看容器时间 docker e ...
- Docker容器内部端口映射到外部宿主机端口的方法小结
转自:https://www.cnblogs.com/kevingrace/p/9453987.html Docker允许通过外部访问容器或者容器之间互联的方式来提供网络服务.容器启动之后,容器中可以 ...
- Docker容器内部端口映射到外部宿主机端口 - 运维笔记
Docker允许通过外部访问容器或者容器之间互联的方式来提供网络服务.容器启动之后,容器中可以运行一些网络应用,通过-p或-P参数来指定端口映射. 注意:宿主机的一个端口只能映射到容器内部的某一个端口 ...
- Docker容器内部端口映射到外部宿主机端口
Docker允许通过外部访问容器或者容器之间互联的方式来提供网络服务.容器启动之后,容器中可以运行一些网络应用,通过-p或-P参数来指定端口映射. 注意:宿主机的一个端口只能映射到容器内部的某一个端口 ...
- docker容器跨主机网络overlay
前提:已部署好docker服务服务预计部署情况如下10.0.0.134 Consul服务10.0.0.135 host1 主机名mcw510.0.0.134 host2 主机名mcw6host1与 ...
- 如何进入到Docker容器内部
启动Docker容器后,对应的服务(例如tomcat启动)也通过dockerfile文件命令运行起来了,这个时候如何进行容器内部观察容器的运行状态. 1.docker attach 这个命令在创建一个 ...
- 【docker】 docker容器内部安装vi命令
有时会需要在docker容器内使用vi命令,但是新启动的docker容器内并没有vi命令,那就需要自己安装一个 1.使用命令 apt-get update 2.进行安装 apt-get install ...
随机推荐
- lombok的使用和原理
一.项目背景 在写Java程序的时候经常会遇到如下情形: 新建了一个Class类,然后在其中设置了几个字段,最后还需要花费很多时间来建立getter和setter方法 lombok项目的产生就是为了省 ...
- Intel支持八九代酷睿的B365芯片组将登场亮相
不久前,Intel悄然推出了新款芯片组B365,看起来像是B360的升级版,但事实上二者并无太大关系. 根据最新曝料,基于B365芯片组的主板将在1月16日登场亮相,支持八九代酷睿. 同时获悉,B36 ...
- PAT A1140 Look-and-say Sequence (20 分)——数学题
Look-and-say sequence is a sequence of integers as the following: D, D1, D111, D113, D11231, D112213 ...
- saltstack配置管理之states
states是saltstack中的配置语言,我们安装一个包,管理一个配置文件,最后保证服务的正常运行,都需要我们编写一些states sls文件(描述状态的文件)去描述和实现我们的功能.sls文件都 ...
- parallel方法 异步并行执行
Promise提供了all方法, 但是状态只有2种, 第一种是所有promise实例都成功则返回值组成一个数组,传递给p的回调函数: 第二种是有一个实例被rejected,状态就变成rejected, ...
- SQL Server如何查看当前数据库连接的SPID
使用SQL Server系统变量@@SPID即可: SELECT @@SPID
- Codechef STREDUC Reduce string Trie、bitset、区间DP
VJ传送门 简化题意:给出一个长度为\(l\)的模板串\(s\)与若干匹配串\(p_i\),每一次你可以选择\(s\)中的一个出现在集合\(\{p_i\}\)中的子串将其消去,其左右分成的两个串拼接在 ...
- Vue-认识状态管理vuex
vuex是一个专门为vue.js设计的状态管理模式,并且也可以使用devtools进行调试,可以多个组件共享状态.简单来说,就是共享的状态用state来存放,用mutations来操作state,但是 ...
- Stencil 基础
Stencil 一个轻量化,渐进式编译器,注意,不是框架. 使用 TypeScript 进行所有操作,这是一个门槛,有一定技术门槛要求. PS:个人强烈推荐所有的前端同学都学习,或至少了解这个超集语言 ...
- VS2017登陆不了,TFS无法连接成功的问题
由于使用的win7 64位操作系统,重装系统以后,安装了vs2017,登陆不成功,https://auth.gfx.ms/16.000.27887.2/OldConvergedLogin_PCore. ...