IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Docker第二篇:集群 -> 正文阅读

[系统运维]Docker第二篇:集群

数据管理

docker容器运行,产生一些数据、文件等等持久化的东西,不应该放在容器内部。应当以挂载的形式存在主机文件系统中。
在这里插入图片描述
1、镜像与容器读写层,通过联合文件系统,组成系统文件
2、容器服务运行中,一定会产生数据
3、容器只是运行态的服务器,是瞬时的,不承载数据的持久化功能

实例1:挂载mysql配置文件
(1)在宿主机相关目录下新建mysql配置文件
在这里插入图片描述
(2)创建默认的mysql服务(默认的mysql服务区分大小写)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(3)挂载本地配置文件,不区分大小写
实例2:挂载容器数据卷

docker的文件系统

volume文件挂载的探究

volume-from引用数据卷

Docker-Compose使用

在这里插入图片描述
批量执行工程服务

docker-compose安装

curl 方式安装
sudo curl -L https://github.com/docker/compose/releases/download/1.17.1/docker-compose-uname -s-uname -m >
/usr/local/bin/docker-compose
增加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
安装完查看版本
在这里插入图片描述

docker-compose命令

docker-compose 的命令与 docker 命令极为相似,用法上没有区别,下面列出它特有的
几种命令:
up 创建并启动容器:docker-compose up -d --scale 服务名=数字
---------- d 表示后台运行,scale 是表示对应的服务同时启动几个容器
down 停止并删除容器: docker-compose down
---------- 会停掉容器,并删除掉容器。如果不希望删除容器,使用 stop

docker-compose实战

手动创建单体springboot镜像并运行

1、将 springboot 打好的 jar 包上传
2、在同级目录下,创建 Dockerfile 文件,内容如下:
在这里插入图片描述
3、dockerfile 打包业务镜像

在这里插入图片描述
在这里插入图片描述
4、启动镜像,即得到业务运行
在这里插入图片描述
5、浏览器打开页面校验:
在这里插入图片描述

集群化部署spring项目

version: '3'  ##表示使用第三代语法
services: ##表示compose需要启动的服务
  nginx:
   container_name: my-nginx  ##容器名称
   image: nginx:1.9.7  ## 容器镜像
   links:  ##要引用的服务
      -  tomcat:tom
   restart: always  ##如果服务启动不成功一直尝试
   ports:  ##对外开放的端口
       - 80:81
       - 443:443
   volumes: ##加载本地目录到容器目标路径
       - /docker/nginx:/etc/nginx/conf.d
   depends_on: ##依赖服务,先启动depend——on服务
       - tomcat

  mysql:
   container_name: my-mysql
   image: mysql:5.7
   environment: ##容器环境变量
     MYSQL_ROOT_PASSWORD: root1234
   ports:
       - "3306:3306"
   restart: always

  tomcat:
     image: dockermvc:tan
     restart: always
     depends_on:
         - mysql
~                  

编写一个项目整体服务,一个网关 nginx + tomcat 外加 mysql 的集群,如上图
其中 nginx 服务,将配置文件挂载在主机当前项目目录的路径下:/docker/nginx
在这里插入图片描述
命令:docker-compose up -d

在这里插入图片描述
docker-compose up -d --scale tomcat=2
在这里插入图片描述
docker-compose down:关闭一组容器服务
在这里插入图片描述

Swarm集群管理

swarm概念

在这里插入图片描述
我们使用docker容器化部署服务,都是局限在一台宿主机上操作。但是在实际中,我们部署的服务都是集群模式的,分布式部署的,没有以一台强大的物理机,能支撑整个分布式集群,而且这样也无法防范物理机的单点故障问题。
Swarm是Docker官方提供的一款集群管理工具,其主要作用是把若干台Docker主机抽象为一个整体,并且通过一个入口同一管理这个Docker主机上的各种Docker资源。
swarm service 相比单容器的一个最大优势就是,你能够修改一个服务的配置:包括网络、
数据卷,不需要手工重启服务。Docker 将会更新配置,把过期配置的 task 停掉,重新创建
一个新配置的容器。

  1. swarm:是一组 docker 引擎的集群
  2. node:是单个 docker 引擎的实例,可以在一个物理机上也可以在多个
  3. manager node:部署应用的时候会有一个 manager node 节点
  4. Worker nodes:对应的就是 Worker nodes
  5. service:然后 service 是一堆被 workder 执行的任务
  6. task:一个 task 就是一个 docker 的容器,是 Swarm 的工作单元

创建、使用

规划俩台网路互通的机器
swarm1 114.55.242.212 阿里云服务器
swarm2 121.4.182.15 腾讯云服务器
1、修改 docker 监听端口( P TCP 端口 2375 5 )
vi /lib/systemd/system/docker.service
在这里插入图片描述
重启 docker 服务:
systemctl daemon-reload
systemctl restart docker
2、创建管理节点
在这里插入图片描述
docker swarm join --token SWMTKN-1-41v0dwkwt3tgp19hmturaqs4tn1lar7kiid6y2jku8lhczmb10-0p59gqr8xt1kbulun9s4tpado 114.55.242.212:2377
3、添加工作节点到集群
在这里插入图片描述
主节点查看集群
在这里插入图片描述
节点退出,看结果
在这里插入图片描述
在这里插入图片描述
创建服务
创建一个 nginx 集群,3 台机器
docker service create --name nginx --replicas 3 -p 80:80 nginx:1.7.9
删除docker service rm nginx
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-08-07 12:29:14  更:2021-08-07 12:30:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 10:02:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码