yelang_001

treafik2+swarm搭建运维平台

思维导图

 

直接上搭建命令

环境依赖

用vmware搭建三台ubuntu主机,配置固定ip并安装好docker。

master 192.168.154.200

node1 192.168.154.201

node2 192.168.154.202

一、搭建swarm环境

1、初始化swarm集群
docker swarm init --advertise-addr 192.168.154.200
2、 两个node节点执行添加节点命令
docker swarm join --token SWMTKN-1-26u6knpsjtb5u1t77bry4yucl9w1gjkve73vpmmyyb4s4jykoq-eek4e8zcxhdw98m7rkfc2cv0m 192.168.154.200:2377

集群搭建好了  就是这样简单

验证一下
docker node ls

 

 

 

  

二、部署traefik2

1.创建2个不同的network,区别test、prod网络可以进行集群内网络隔离

docker network create --driver=overlay traefik_prod
docker network create --driver=overlay traefik_test

2.部署traefik同时监听上面两个网络(注意要部署到主节点上,官网的文档有问题 )
docker-compose-traefik.yml 



version: '3'

services: reverse-proxy: # The official v2 Traefik docker image image: traefik:v2.8 # Enables the web UI and tells Traefik to listen to docker command: - --api.insecure=true - --providers.docker.swarmMode=true ports: # The HTTP port - "80:80" # The Web UI (enabled by --api.insecure=true) - "8080:8080" volumes: - /var/run/docker.sock:/var/run/docker.sock deploy: placement: constraints: - node.role == manager labels: - "traefik.enable=true" - "traefik.http.routers.api.rule=Host(`traefik.yourdomain.com`)" - "traefik.http.routers.api.service=api@internal" # Let the dashboard access the traefik api networks: - traefik_prod - traefik_test networks: traefik_prod: external: true traefik_test: external: true


3.部署
docker stack deploy -c docker-compose-traefik.yml traefik

4.验证

 

 5.访问traefik管理页面

http://192.168.154.200:8080/dashboard/#/http/services

  

三、部署测试demo

1.部署2个nginx
compose.yml

version: '3'

services:
  container-prod:
    image: nginx
    networks:
      - traefik_prod
    deploy:
      replicas: 2
      labels:
        - traefik.enable=true
        - traefik.http.routers.container-prod.rule=Host(`nginx.com`)
        - traefik.http.services.container-prod-service.loadbalancer.server.port=80
networks:
  traefik_prod:
    external: true
2.部署
docker stack deploy -c compose.yml test
3.验证一下
docker stack ps test

 

 4.treafik管理页面看一下

 

 

 

 

 搞定了  写的可能有点仓促了 大体思路是这样 。

posted on 2022-08-12 17:47  yelang_001  阅读(265)  评论(0)    收藏  举报

导航