当前位置:首页 » 币种行情 » eth的swarm缺点

eth的swarm缺点

发布时间: 2022-09-29 06:09:14

① Docker swarm中的LB和服务发现详解

Docker 提供了 overlay driver,使用户可以创建基于 VxLAN 的 overlay 网络。VxLAN 可将二层数据封装到 UDP 进行传输,VxLAN 提供与 VLAN 相同的以太网二层服务,但是拥有更强的扩展性和灵活性。linux下是使用了net namespace来隔离docker创建的overlay网络。

Docker 网络模型如下:

一个Sandbox包含了一个容器网络栈的配置。其中包括了对容器的网卡,路由表以及对DNS设置的管理。通常,一个Sandbox的实现可以是一个Linux Network Namespace,一个FreeBSD Jail或者其他类似的东西。一个Sandbox可以包含多个处于不同Network的Endpoint。

Endpoint将一个Sandbox加入一个Network。Endpoint的实现可以是一个veth对,一个Open vSwitch internal port或者其他类似的东西。一个Endpoint只能属于一个Network和一个Sandbox。

Network是一个能够互相通信的Endpoint的集合。Network的实现可以是一个Linux网桥,一个VLAN等等。

上图展示了task1.client请求两个不同资源dns返回的不同结果

环境:
swarm-a(manager node):10.10.8.92

swarm-b(work node):10.10.8.93

swarm-c(work node):10.10.8.94

在docker swarm集群创建的开始,docker 会给每台host创建除了docker0以外的两个网络,分是bridge类型(docker_gwbridge网桥)和overlay类型(ingress)的网络,以及一个过度的命名空间ingress_sbox,我们可以使用如下命令自建overlay网络,结果如下:

docker network create --driver overlay mynet (后续会有用到)

注意1:要是想看到容器创建的两个Net Namespace需要执行
ln -s /var/run/docker/netns /var/run/netns

1)、部署一个service使用默认的ingress网络:

docker service create --name web_ingress_lb --replicas=2 --publish 8090:80 httpd

2)、Ingress Load Balancing实现方式:

这样一来即使容器的副本没有落到host上我们仍可以通过这种转发方式来访问到服务。这应该就是routing mesh吧!

1)、部署一个service使用我们自己创建的mynet网络:

docker service create --name web_mynet --replicas=2 --network=mynet --publish 8080:80 httpd
部署的两个容器分别处在a和c节点上:

结合例子如下:

2)、查看web_mynet.1容器和mynet网络命名空间的网卡情况:

3)、查看web_mynet.1容器和ingressingress_sbox网络命名空间的网卡对应情况:

可以看mynet网络下vlan-id 为4097,ingress网络空间同样操作可以得到vlan-id为4096

swarm-c节点上的情况也是差不多就不操作了,好了我们来画下网络连接的大致图:

可以看到这里ingress_sbox和创建容器的ns共用一个ingress网络空间。

4)、 Internal Load Balancing实现方式:

有两种实现方式dns rr和vip形式,在dns rr 的情况下可能会存在一定是的问题,当容器重启后dns的解析会存在一定时间的延迟。vip则是由vip+内核ipvs来实现。docker swarm默认使用的是vip,这里就以vip的形式来解析。(想要了解dns rr的可以看文章后面的参考链接都是大牛写的)

VIP形式下的流量路径:

操作流程如下:
通过busybox服务做dns解析,可以发现该服务后端挂载的容器和该服务对应的
VIP地址。web_mynet服务对应的VIP为10.0.0.6。

在Internal Load Balancing也就是文中我们自建的mynet overlay网络中,我们会看到创
建的service会同时应用到两个网络环境里面去,为何要这样呢?

原因是swarm自带ingress不具备有服务发现的功能,而容器的生命周期又是不固定的,
service每次的消亡和启用都会改变容器内部的ip地址以及vip地址,那么集群中服务之间
的通信势必会造成问题,这里有人会说,要使多个service之间能够互相通信可以将所有
的service都publish出去,然后通过routing mesh 访问,这样是没错也能行得通,但是存
在一个缺点,那就是不安全,我们仅仅只需要的是将最终提供服务的端口publish即可。
那么不publish所有的service需要做到以下几点:

这里我理解的是ingress是单单提供LB实现routing mesh而mynet是服务发现和LB的结合

所以上文中Internal Load Balancing中的数据流应该分成两种情景如下:

1、当一个外部请求到主机端口8080之后, 数据包的流向如下所示:
主机端口8080 => Ingress-sbox-VIP:8080 => 容器Ingress-sbox => IPVS分发到containers。

2、处于 同mynet网络的service内部通信时:
处于 同mynet网络的test service(busybox容器)发起访问web_mynet域名的请求=>请求转发到docker engine内置的DNS解析web_mynet的vip=>web_mynet(容器)在其ns中将
VIP数据包打上标签,并通过ipvs来负载到后端对应的容器=>数据包通过vip地址路由到
mynet的ns,由mynet中的fdb来做转发走tunnel出去。

https://zhuanlan.hu.com/p/25954203

https://www.jianshu.com/p/4433f4c70cf0

https://docs.docker.com/network/overlay/

http://julyerr.club/2018/03/20/docker-swarm/

② sana币上线几家交易平台

SANA目前仅在Uniswap上可以交易,XT交易所虽有上线,但由于SANA当前存在的稀缺性,XT交易所的买卖盘均没有什么深度。
一、SANA上线至今涨了近8倍
SANA是基于swarm的对等加密存储区域节点网络。与Swarm一样,Sana的愿景是通过对等存储和通信扩展区块链,实现云计算的去中心化,为计算机操作系统和应用提供部署和运行环境。不同的是,SANA依托ETHxDAi网络建设,其核心TEE加密技术实现私有计算和加密存储,不仅具备Swarm网络的所有特性和功能,还引入双层挖掘激励,实现供给动态平衡的新经济。从近期的表现来看,一些集中的交易所应该已经在积极对接,这将进一步扩大SANA的受众,方便有需要的矿工或用户购买。毕竟SANA代币80%都是通过采矿生产的,其合理的经济模式势必会吸引更多的人加入SANA。得益于各种因素,SANA未来有巨大的增长空间。
二、SAN是什么货币?
SAN币的全称是santiment,SAN是区块链的一个数据交换平台和加密行业,而SAN币就是加密货币。SAN数据平台展现了密码货币市场的真实状态,提供了内容流和一个透明的数据库,是cofound指导的第一个项目,属于初创企业的分布式平台。通过创建透明的项目数据库,santiment为投资者提供了一种识别和避免不可靠的众包项目的方法。这种解决方案将客观的数据反馈与专家选择的内容相结合,为用户提供了交易的优势,降低了其他人的投资风险。
0私募、0预挖造成的低流通是SANA前期涨价的重要因素。毕竟目前除了矿工每天挖的少量代币外,只有前期测试网掉的代币在市场上流通,只占总量的2%左右。而且,目前挖矿时,单个节点需要质押5万枚代币才能产出硬币,大大降低了SANA的实际发行量。据悉,在“首采效应”的加持下,SANA目前的开采周期为两天。在BZZ经济模式崩溃的现状下,BZZ矿工转型挖潜SANA是大势所趋。

③ sana币上线几家交易平台

SANA目前仅在Uniswap上可以交易,XT交易所虽有上线,但由于SANA当前存在的稀缺性,XT交易所的买卖盘均没有什么深度。
一、SANA上线至今涨了近8倍
SANA是基于swarm的对等加密存储区域节点网络。与Swarm一样,Sana的愿景是通过对等存储和通信扩展区块链,实现云计算的去中心化,为计算机操作系统和应用提供部署和运行环境。不同的是,SANA依托ETHxDAi网络建设,其核心TEE加密技术实现私有计算和加密存储,不仅具备Swarm网络的所有特性和功能,还引入双层挖掘激励,实现供给动态平衡的新经济。从近期的表现来看,一些集中的交易所应该已经在积极对接,这将进一步扩大SANA的受众,方便有需要的矿工或用户购买。毕竟SANA代币80%都是通过采矿生产的,其合理的经济模式势必会吸引更多的人加入SANA。得益于各种因素,SANA未来有巨大的增长空间。
二、SAN是什么货币?
SAN币的全称是santiment,SAN是区块链的一个数据交换平台和加密行业,而SAN币就是加密货币。SAN数据平台展现了密码货币市场的真实状态,提供了内容流和一个透明的数据库,是cofound指导的第一个项目,属于初创企业的分布式平台。通过创建透明的项目数据库,santiment为投资者提供了一种识别和避免不可靠的众包项目的方法。这种解决方案将客观的数据反馈与专家选择的内容相结合,为用户提供了交易的优势,降低了其他人的投资风险。
0私募、0预挖造成的低流通是SANA前期涨价的重要因素。毕竟目前除了矿工每天挖的少量代币外,只有前期测试网掉的代币在市场上流通,只占总量的2%左右。而且,目前挖矿时,单个节点需要质押5万枚代币才能产出硬币,大大降低了SANA的实际发行量。据悉,在“首采效应”的加持下,SANA目前的开采周期为两天。在BZZ经济模式崩溃的现状下,BZZ矿工转型挖潜SANA是大势所趋。

④ Swarm繁星科技:云节点搭建逻辑

由bee获取ETH,再由ETH兑换gBZZ,由gBZZ兑换QBZZ,再由QBZZ兑换BZZ。

⑤ 如何创建docker network

使用docker network create命令来创建,只能创建docker内建的网络模式
使用docker plugin,创建自定义网络

使用docker命令创建网络

Docker中内置的网络模式包括如下几种:

bridge 我们基于该网络模式创建了mynet网络
host 本地网络模式
macvlan 这个模式貌似是最新加的
null 无网络
overlay 用于swarm集群中容器的跨主机网络访问

docker create network命令包含以下参数:
Flag shorthand -h has been deprecated, please use --help

Usage: docker network create [OPTIONS] NETWORK

Create a network

Options:
--attachable Enable manual container attachment
--aux-address map Auxiliary IPv4 or IPv6 addresses used by Network driver (default map[])
-d, --driver string Driver to manage the Network (default "bridge")
--gateway stringSlice IPv4 or IPv6 Gateway for the master subnet
--help Print usage
--internal Restrict external access to the network
--ip-range stringSlice Allocate container ip from a sub-range
--ipam-driver string IP Address Management Driver (default "default")
--ipam-opt map Set IPAM driver specific options (default map[])
--ipv6 Enable IPv6 networking
--label list Set metadata on a network (default [])
-o, --opt map Set driver specific options (default map[])
--subnet stringSlice Subnet in CIDR format that represents a network segment

创建overlay模式的全局网络,我们可以看到新创建的mynet1的scope是swarm,即集群范围可见的。

172.18.0.1:root@sz-pg-oam-docker-test-001:/root]# docker network create -d overlay mynet1
x81fu4ohqot2ufbpoa2u8vyx3
172.18.0.1:root@sz-pg-oam-docker-test-001:/root]# docker network ls
NETWORK ID NAME DRIVER SCOPE
ad3023f6d324 bridge bridge local
346c0fe30055 crane_default bridge local
4da289d8e48a docker_gwbridge bridge local
3d636dff00da host host local
tx49ev228p5l ingress overlay swarm
x81fu4ohqot2 mynet1 overlay swarm
cc14ee093707 none null local
172.18.0.1:root@sz-pg-oam-docker-test-001:/root]# docker network inspect mynet1
[
{
"Name": "mynet1",
"Id": "x81fu4ohqot2ufbpoa2u8vyx3",
"Created": "0001-01-01T00:00:00Z",
"Scope": "swarm",
"Driver": "overlay",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": []
},
"Internal": false,
"Attachable": false,
"Containers": null,
"Options": {
"com.docker.network.driver.overlay.vxlanid_list": "4097"
},
"Labels": null
}
]

注意,overlay模式的网络只能在swarm的manager节点上创建,如果在work节点上创建overlay网络会报错:

172.18.0.1:root@sz-pg-oam-docker-test-002:/root]# docker network create -d overlay mynet1
Error response from daemon: Cannot create a multi-host network from a worker node. Please create the network from a manager node.

如果不使用-d指定driver将默认创建本地bridge网络。

自定义网络

创建自定义网络需要设置网络的driver和ipam。

热点内容
ltcwalletapp 发布:2024-07-04 11:40:42 浏览:706
区块链和大数据对立吗 发布:2024-07-04 11:31:31 浏览:829
显卡怎么不挖矿 发布:2024-07-04 11:29:48 浏览:305
比特币合约4点暂停 发布:2024-07-04 11:24:22 浏览:244
道奇trx霸王龙内饰 发布:2024-07-04 11:23:20 浏览:769
矿机声音大怎么办 发布:2024-07-04 11:15:33 浏览:122
数字货币前十大交易所 发布:2024-07-04 09:46:14 浏览:757
买卖USDT犯法 发布:2024-07-04 09:39:28 浏览:206
rust里面矿机怎么启动 发布:2024-07-04 09:32:14 浏览:348
挖矿用什么矿机 发布:2024-07-04 09:22:10 浏览:463