虛擬機與容器的差別
App
Bins/Libs Bins/Libs
Guest OS
App
VM
App
Bins/LibsBins/Libs
Guest OS
App
VM
Hypervisor
Host OS
Server
Container Engine
App
Bins/Libs
Host OS
Server
App
Bins/Libs
App
Bins/Libs
LXC LXC LXC
虛擬機 容器
使用:chroot/cgroup/namespaces/
SELinux/AppArmor/netfilter 來達成
隔離效果
範例: Wordpress-
將Wordpress服務擴充為3個
docker-machine sshmanager1 “docker service scale [服務名稱]=[擴充到N個節點數]”
• 服務的名稱可以使用docker service ls來觀察
• 除了可以使用docker service scale來擴展服務之外,還可以使用docker service update
docker-machine ssh manager1 “docker service ls”
Swarm模式的服務探索
Docker
Engine
Swarm Node
DNS Server
DNSResolver DNS Resolver
DNS requests
Docker
Engine
Swarm Node
DNS Server
DNS Resolver DNS Resolver
DNS requests
以Gossip協定
同步資訊
• Swarm模式下的每個節點,其Docker Engine都會
有DNS Server,而每個節點會在網路模組的
Control Plane上以Gossip協定彼此交換訊息
• Swarm模式中的服務都會被指派一個DNS入口
(Entry)