东营网站的优化怎么查权重查询
web/
2025/10/1 5:22:02/
文章来源:
东营网站的优化,怎么查权重查询,西安市建设工程信息网诚信平台官网,泉州关键词排名本文主要介绍了Docker容器的单机网络架构与集群网络架构#xff0c;辅以演示#xff0c;并简单介绍了网络管理中的命令。
前文#xff1a;
Docker的安装与简单操作命令-CSDN博客
docker网络原理介绍
与ovs类似#xff0c;docker容器采用veth-pair linux bridge (虚拟交…本文主要介绍了Docker容器的单机网络架构与集群网络架构辅以演示并简单介绍了网络管理中的命令。
前文
Docker的安装与简单操作命令-CSDN博客
docker网络原理介绍
与ovs类似docker容器采用veth-pair linux bridge (虚拟交换机)的通信方式 以Bridge类型举例 容器外的if20连接了容器cm01的if21网卡 容器外的if22连接了容器cm02的if22网卡 数字不固定一般宿主机是偶数容器内是奇数
容器内的ip地址通过vRouter的NAT转换成宿主机地址
#二层mac表寻址
docker run -dit --name cm01 alpine
docker run -dit --name cm02 alpine
#互ping后
brctl showmacs docker0
port no mac addr is local? ageing timer1 02:42:ac:11:00:02 no 0.142 02:42:ac:11:00:03 no 0.142 36:5c:3a:ff:64:14 yes 0.002 36:5c:3a:ff:64:14 yes 0.001 ae:84:17:1c:93:6c yes 0.001 ae:84:17:1c:93:6c yes 0.00
docker网络类型介绍
docker默认创建了三种网络类型
docker network ls
NETWORK ID NAME DRIVER SCOPE
a21005000639 bridge bridge local
e6a21ab3e3b4 host host local
6725e5c3cb83 none null local
docker network inspect a21005000639 #查看网络类型详细信息 docker共有5种网络类型各有特点 1、none 只有loopback容器内部无网卡 2、host 容器使用宿主机网络类似于VMwareworkstation的桥接网络 ——直接共享宿主机的网络状态 ——不同容器之间需要使用不同的IP地址 ——直接访问效率更高 3、bridge 容器默认使用并连接到docker0网桥 最常用的方式 ——通过NAT进行访问外部访问即指定端口号 ——二层通过linux Bridge mac表进行交换 ——三层通过iptables和路由表进行转发 ——经过NAT装换效率相对较低 4、container 共享容器命名空间 ——主机和主机共享命名空间 ——不同容器之间可以使用相同的IP地址 ——k8s打包pod时使用 5、vxlan cluster 集群网络 ——用于集群内容器实现大二层通信 ——通过安装etcd实现 Bridge网络
创建新的网桥br1
docker network create
-d #指定网络类型
--gateway #指定网关
--subnet #指定子网docker network create -d bridge br1 #添加了类型为Bridge的网桥
docker network rm br1 #删除网桥
#如果指定子网创建
docker network create -d bridge --subnet 192.168.1.0/24 -- gateway 192.168.1.1 br1 通过查看docker network ls和brctl show可以发现都多了一个网桥br1 没有指定子网的情况下子网会顺延创建默认的docker0使用的是172.17网段br1使用172.18网段 创建新的容器并指定网络 docker run -itd --name cm04 --network br1 alpine docker exec -it cm04 ash ip a 能看到新的容器已经获得了地址 新的br上增加了一个interface 查看iptables 将容器切换网桥 docker network disconnect bridge cm01 #断开连接 docker network connect br1 cm01 #重新连接 docker network inspect br1 #查看br1状态可以看到有两个容器获得了地址 自定义网桥的域名访问
在用户自定义的网络类型中自带了域名解析功能可以使用域名直接进行访问 host网络 复制宿主机网络状态与宿主机共用同一个网络命名空间 docker run -itd --name cm05 --network host alpine docker exec -it cm05 ash ip a #看到了所有网络的网卡 none网络 docker run -itd --name cm08 --network none alpine docker exec -ti cm08 ash ip a container网络 复制另外容器的网络状态与另外容器共用同一个网络命名空间 docker run -itd --name cm06 --network container:cm01 alpine docker exec -it cm06 ash ip a #与cm01使用的网络一样 vxlan cluster网络
#docker版本为Docker 20.10.6如果不是这个版本可能会报错
集群场景下两个宿主机要跨网段进行大二层交换需要安装etcd分布式数据库构建etcd集群用以同步网络信息 集群场景下两个宿主机要跨网段进行大二层交换需要安装etcd分布式数据库构建etcd存储用以同步网络信息
注意docker版本为Docker 20.10.6如果不是这个版本可能会报错
#下载etcd
wget https://github.com/coreos/etcd/releases/download/v3.0.12/etcd-v3.0.12-linux-amd64.tar.gz
#如果报错也可以用迅雷下载后传到宿主机中
我将其放在了根目录下
tar -zxvf etcd-v3.0.12-linux-amd64.tar.gz#创建etcd集群宿主机1
cd /etcd-v3.0.12-linux-amd64/
nohup ./etcd --name docker-node1 --initial-advertise-peer-urls \
http://192.168.8.150:2380 \
--listen-peer-urls http://192.168.8.150:2380 \
--advertise-client-urls http://192.168.8.150:2379 \
--listen-client-urls http://192.168.8.150:2379,http://127.0.0.1:2379 \
--initial-cluster-token etcd-cluster \
--initial-cluster docker-node1http://192.168.8.150:2380,docker-node2http://192.168.8.148:2380 \
--initial-cluster-state new#创建etcd集群宿主机2
cd /etcd-v3.0.12-linux-amd64/
nohup ./etcd --name docker-node2 --initial-advertise-peer-urls \
http://192.168.8.148:2380 \
--listen-peer-urls http://192.168.8.148:2380 \
--advertise-client-urls http://192.168.8.148:2379 \
--listen-client-urls http://192.168.8.148:2379,http://127.0.0.1:2379 \
--initial-cluster-token etcd-cluster \
--initial-cluster docker-node1http://192.168.8.150:2380,docker-node2http://192.168.8.148:2380 \
--initial-cluster-state new创建完之后再单开一个terminal
#验证
ps -ef | grep etcd
#root 2655 2428 9 03:37 pts/1 00:00:00 ./etcd --name docker-node2 --initial-advertise-peer-urls http://192.168.8.148:2380 --listen-peer-urls http://192.168.8.148:2380 --advertise-client-urls http://192.168.8.148:2379 --listen-client-urls http://192.168.8.148:2379,http://127.0.0.1:2379 --initial-cluster-token etcd-cluster --initial-cluster docker-node1http://192.168.8.150:2380,docker-node2http://192.168.8.148:2380 --initial-cluster-state new#检查健康状态
cd /etcd-v3.0.12-linux-amd64/
./etcdctl cluster-health
#member 55bbbb082228277b is healthy: got healthy result from http://192.168.8.150:2379
#member fd79a45b0c14607d is healthy: got healthy result from http://192.168.8.148:2379
#cluster is healthy#docker关联etcd
#宿主机1
systemctl stop docker.service
systemctl stop docker.socket
/usr/bin/dockerd -H tcp://0.0.0.0:2375 \
-H unix://var/run/docker.sock \
--cluster-storeetcd://192.168.8.150:2379 \
--cluster-advertise192.168.8.150:2375
#宿主机2
systemctl stop docker.service
systemctl stop docker.socket
/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock \
--cluster-storeetcd://192.168.8.148:2379 \
--cluster-advertise192.168.8.148:2375#集群主机中创建network
#在宿主机1创建与查看
docker network create -d overlay etcd_network
docker network ls
#NETWORK ID NAME DRIVER SCOPE
#80e52b011080 bridge bridge local
#47b97959e9a3 etcd_network overlay global
#736b5705ffbf host host local
#cc7dfdbc929a none null local
docker inspect etcd_network在宿主机2查看与宿主机1一致
docker network ls
#NETWORK ID NAME DRIVER SCOPE
#80e52b011080 bridge bridge local
#47b97959e9a3 etcd_network overlay global
#736b5705ffbf host host local
#cc7dfdbc929a none null local
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/84865.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!