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
5.创建pod
 calicoctl create -f calico_pool_minion5.conf
6.创建网络
 docker network create -d calico --ipam-driver calico-ipam --subnet=10.1.0.0/16 net1

docker network ls

7.测试

calico实现docker容器内部的网络链接的更多相关文章

  1. 从Docker容器内部,如何连接到本机的本地主机?

    原文 从Docker容器内部,如何连接到本机的本地主机? 编辑:如果您使用的是Docker-for-mac或Docker-for-Windows 18.03+,只需使用主机连接到您的mysql服务即可 ...

  2. 在宿主机上执行docker容器内部的shell或程序

    为了避免反复进入docker容器内部操作,可以将一系列容器内部的指令由宿主机来操作完成. 在宿主机(作者主机为windows7)上执行centos容器(name为centos-1)中/usr目录下的“ ...

  3. Jenkins(4)docker容器内部修改jenkins容器时间

    前言 用docker搭建的Jenkins环境时间显示和我们本地时间相差8个小时,需修改容器内部的系统时间 查看时间 查看系统时间 date-R 进入docker容器内部,查看容器时间 docker e ...

  4. Docker容器内部端口映射到外部宿主机端口的方法小结

    转自:https://www.cnblogs.com/kevingrace/p/9453987.html Docker允许通过外部访问容器或者容器之间互联的方式来提供网络服务.容器启动之后,容器中可以 ...

  5. Docker容器内部端口映射到外部宿主机端口 - 运维笔记

    Docker允许通过外部访问容器或者容器之间互联的方式来提供网络服务.容器启动之后,容器中可以运行一些网络应用,通过-p或-P参数来指定端口映射. 注意:宿主机的一个端口只能映射到容器内部的某一个端口 ...

  6. Docker容器内部端口映射到外部宿主机端口

    Docker允许通过外部访问容器或者容器之间互联的方式来提供网络服务.容器启动之后,容器中可以运行一些网络应用,通过-p或-P参数来指定端口映射. 注意:宿主机的一个端口只能映射到容器内部的某一个端口 ...

  7. docker容器跨主机网络overlay

    前提:已部署好docker服务服务预计部署情况如下10.0.0.134 Consul服务10.0.0.135 host1  主机名mcw510.0.0.134 host2  主机名mcw6host1与 ...

  8. 如何进入到Docker容器内部

    启动Docker容器后,对应的服务(例如tomcat启动)也通过dockerfile文件命令运行起来了,这个时候如何进行容器内部观察容器的运行状态. 1.docker attach 这个命令在创建一个 ...

  9. 【docker】 docker容器内部安装vi命令

    有时会需要在docker容器内使用vi命令,但是新启动的docker容器内并没有vi命令,那就需要自己安装一个 1.使用命令 apt-get update 2.进行安装 apt-get install ...

随机推荐

  1. lombok的使用和原理

    一.项目背景 在写Java程序的时候经常会遇到如下情形: 新建了一个Class类,然后在其中设置了几个字段,最后还需要花费很多时间来建立getter和setter方法 lombok项目的产生就是为了省 ...

  2. Intel支持八九代酷睿的B365芯片组将登场亮相

    不久前,Intel悄然推出了新款芯片组B365,看起来像是B360的升级版,但事实上二者并无太大关系. 根据最新曝料,基于B365芯片组的主板将在1月16日登场亮相,支持八九代酷睿. 同时获悉,B36 ...

  3. 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 ...

  4. saltstack配置管理之states

    states是saltstack中的配置语言,我们安装一个包,管理一个配置文件,最后保证服务的正常运行,都需要我们编写一些states sls文件(描述状态的文件)去描述和实现我们的功能.sls文件都 ...

  5. parallel方法 异步并行执行

    Promise提供了all方法, 但是状态只有2种, 第一种是所有promise实例都成功则返回值组成一个数组,传递给p的回调函数: 第二种是有一个实例被rejected,状态就变成rejected, ...

  6. SQL Server如何查看当前数据库连接的SPID

    使用SQL Server系统变量@@SPID即可: SELECT @@SPID

  7. Codechef STREDUC Reduce string Trie、bitset、区间DP

    VJ传送门 简化题意:给出一个长度为\(l\)的模板串\(s\)与若干匹配串\(p_i\),每一次你可以选择\(s\)中的一个出现在集合\(\{p_i\}\)中的子串将其消去,其左右分成的两个串拼接在 ...

  8. Vue-认识状态管理vuex

    vuex是一个专门为vue.js设计的状态管理模式,并且也可以使用devtools进行调试,可以多个组件共享状态.简单来说,就是共享的状态用state来存放,用mutations来操作state,但是 ...

  9. Stencil 基础

    Stencil 一个轻量化,渐进式编译器,注意,不是框架. 使用 TypeScript 进行所有操作,这是一个门槛,有一定技术门槛要求. PS:个人强烈推荐所有的前端同学都学习,或至少了解这个超集语言 ...

  10. VS2017登陆不了,TFS无法连接成功的问题

    由于使用的win7 64位操作系统,重装系统以后,安装了vs2017,登陆不成功,https://auth.gfx.ms/16.000.27887.2/OldConvergedLogin_PCore. ...