docker swarm集群部署

文章目录

  • 前言
  • 一、安装docker
    • 1.1 解压
    • 1.2 配置docker 存储目录和dns
    • 1.3 添加docker.service文件
    • 1.4 docker 启动验证
  • 二、docker swarm 集群配置
    • 2.1 关闭selinux
    • 2.2 设置主机名称并加入/etc/hosts
    • 2.3 修改各个服务器名称(uname -a 进行验证)
    • 2.4 初始化swarm
    • 2.5 删除node节点
  • 三、安装 portainer(自选)
    • 3.1 主节点机器,上传portainer.tar
    • 3.2 启动portainer


前言

docker swarm 集群部署及portainer安装。本文相关文件下载 Go!

一、安装docker

1.1 解压

tar -zxvf docker-19.03.6.tgz

cp docker/* /usr/bin/

1.2 配置docker 存储目录和dns

/data/server/docker 为实际目录,操作前创建该目录,确保目录挂载到数据盘。 请不要使用系统盘的目录

mkdir -p /data/server/docker

vi /etc/docker/daemon.json

{

"data-root" : "/data/server/docker"

}

1.3 添加docker.service文件

vi /etc/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd  --bip=172.20.1.0/16
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target

1.4 docker 启动验证

重新加载配置systemctl daemon-reload
启动Dockerservice docker start
查看docker启动状态systemctl status docker
查看启动容器docker ps
设置开机自启动systemctl enable docker.service
查看docker开机启动状态 enabled:开启, disabled:关闭systemctl is-enabled docker.service

二、docker swarm 集群配置

2.1 关闭selinux

vi /etc/selinux/config

将 SELINUX=enforcing 改为 SELINUX=disabled #永久关闭,需要重启系统后生效

setenforce 0 #临时生效

2.2 设置主机名称并加入/etc/hosts

代码如下(示例):

例如:

192.168.33.11 master

192.168.33.12 node01

192.168.33.13 node02

2.3 修改各个服务器名称(uname -a 进行验证)

hostnamectl set-hostname docker_master

hostnamectl set-hostname docker_node01

hostnamectl set-hostname docker_node02

2.4 初始化swarm

  1. 修改时间 date -s "2023-11-09 19:04:00"
  2. 把一台机器master充当管理节点,第二台node01 、第三台node02作为工作节点。
    在master节点执行:docker swarm init --advertise-addr {ip}
    {ip } 为实际master的 eth 网卡 对应的ip地址,命令执行后,会有如下信息
docker swarm join --token SWMTKN-1-05nc145s79y1l2zx1q4qtcfb0xtfzltzjb3gz757vwgi5o9y14-cgzm7zpcti9u9y3a53s8haq55 {ip}:{port}
  1. 这个回显的命令就是工作节点需要执行的命令,直接分别在node节点执行即可
    以上命令可以在master节点中执行 docker swarm join-token worker 进行获取

2.5 删除node节点

node节点执行 docker swarm leave
manager节点执行 docker swarm leave --force

三、安装 portainer(自选)

3.1 主节点机器,上传portainer.tar

docker load --input portainer.tar

创建portainer的数据存储路径 如 /data/server/portainer

3.2 启动portainer

docker run -d -p 39000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /data/server/portainer:/data -d portainer/portainer

替换路径后执行以上命令,访问ip:39000即可访问portainer页面,初次进入只需要设置用户名密码即可,直接点击local标签然后connect即可,其余无需操作

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/169449.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java-类和类的关系

代码 总结: 【1】面向对象的思维:找参与者,找女孩类,找男孩类 【2】体会了什么叫方法的形参,什么叫方法的实参: 具体传入的内容 实参: 【3】类和类可以产生关系: (1…

Django(九、choices参数的使用、多对多表的三种创建方式、Ajax技术)

文章目录 一、choices参数choices参数的用法choices 参数用法总结 二、MVC与MTV模式1.MVC2.MTV 三、多对多的三种创建方式1.全自动创建2.纯手动创建半自动创建 四、Django与Ajax1.什么是Ajax常见的场景Ajax案例 一、choices参数 在没有用到choices参数之前,我们在D…

如何科学的进行Android包体积优化

这篇文章会分享小厂如何做包体积优化相关主题,涉及内容包括:1) Android包体积优化的一种可能是比较标准的推进做法,2) 大致流程的心路历程和思考方式,3) 如何去总结和分享你们进行过的包体积优化项目。本文不仅仅是一篇分享&#…

PCIe协议加持,SD卡9.1规范达到媲美SSD的速度4GB/s

近日,SD协会(SDA)宣布了最新的SD Express存储卡的进化,将microSD Express存储卡的速度提高了一倍,达到2GB/s,并引入了4个新的SD Express速度等级,以确保新的SD 9.1规范中最低的顺序性能水平。这…

【自动驾驶解决方案】C++取整与保留小数位

一、C基础 1.1double型保留小数为&#xff0c;并以字符输出 #include <iostream> #include <sstream> #include <iomanip> // 包含std::fixedint main() {//浮点数double number 3.1415926;//转换工具类streamstd::stringstream stream;stream << s…

U-boot(三):start.S

本文主要探讨x210的uboot的start.S文件,也是uboot启动的第一阶段。 头文件 config.h config.h x210_sd.h,由mkconfig脚本生成,包含了开发板的配置宏 rootkaxi-virtual-machine:~/qt_x210v3s_160307/uboot/include# cat config.h /* Automatically generate…

LangChain 组件

输入输出模块 该模块负责与LLM做交互&#xff0c;通过该接口向模型输入 Prompt 并提取模型输出信息。主要包括&#xff1a;提示词、语言模型&#xff0c;输出解析器。 数据连接 已训练好的大语言模型&#xff0c;在训练时使用了大量的训练数据&#xff0c;但这些训练数据中可能…

Windows 下 Sublime Text 2.0.2 下载及配置

1 下载地址&#xff1a; https://www.sublimetext.com/2 Sublime Text 2.0.2 (此版本选择了 portable version)&#xff0c;直接解压就可以使用。 https://download.sublimetext.com/Sublime Text 2.0.2.zip 2 配置Python相关环境 (前提 Pyhon 已加入环境变量) 2.1 新建 py …

为什么大家都不用postman而选择 Apifox呢?

丢掉 Postman&#xff0c;Apifox 更香 作为开发者&#xff0c;丢掉 Postman 和 Jmeter吧&#xff0c;这款国产 API 工具更香&#xff0c;更安全&#xff01;一键即可导入 Postman 数据&#xff01; 一、Apifox 是什么&#xff1f; 1、Apifox 定位 Apifox Postman Swagger …

安全项目简介

安全项目 基线检查 密码 复杂度有效期 用户访问和身份验证 禁用administrator禁用guest认证失败锁定 安全防护软件操作系统安全配置 关闭自动播放 文件和目录权限端口限制安全审计… 等保测评 是否举办了安全意识培训是否有应急响应预案有无第一负责人 工作内容 测评准备…

如何判断sql注入流量特征

如何判断sql注入流量特征 以dvwa的sql注入为例 首先构造一个完整的sql注入请求包 GET /dvwa_2.0.1/vulnerabilities/sqli/?id1&SubmitSubmit HTTP/1.1 Host: 10.9.47.41 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/119.…

Jenkins自动化部署(虚拟机部署)

文章目录 一、持续集成和持续交付二、自动化部署流程三、虚拟机安装四、安装Jenkins环境4.1.安装java环境4.2. 安装Jenkins4.3.Jenkins配置 五、nginx安装和配置5.1. 安装nginx5.2.通过Linux命令创建文件夹和文件&#xff1a;5.3. 配置nginx 六、将代码上传到Git仓库七、Jenkin…

趣学python编程(六、关于蓝桥杯比赛)

蓝桥杯全国软件和信息技术专业人才大赛简称“蓝桥杯”&#xff0c;是由工业和信息化部人才交流中心举办的国内最大的信息技术竞赛。为促进中小学科技创新&#xff0c;提升中小学生逻辑思维&#xff0c;发现和培养面向未来的科技精英人才。 蓝桥杯介绍 蓝桥杯全国软件和信息技术…

【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 本章将介绍视觉SLAM的基本问题之一&#xff1a;如何描述刚体在三维空间中的运动&#xff1f; 旋转矩阵 点、向量和坐标系 三维空间由3个轴组成&…

C++数据结构:并查集

目录 一. 并查集的概念 二. 并查集的模拟实现 2.1 并查集类的声明 2.2 并查集的实现 三. 路径压缩 四. 总结 一. 并查集的概念 在生活中&#xff0c;我们经常需要对某一些事物进行归类处理&#xff0c;即&#xff1a;将N个不同的元素划分为几个互不相交的集合。在初始状态…

如何解决网站被攻击的问题:企业网络攻防的关键路径

在当今数字化时代&#xff0c;企业面临着不断升级的网络威胁&#xff0c;网站遭受攻击的风险也与日俱增。解决网站被攻击的问题对企业发展至关重要&#xff0c;不仅关系到企业的信息安全&#xff0c;也直接影响到企业的声誉和利益。从企业发展的角度出发&#xff0c;我们将探讨…

安装oracle19c卡在安装界面

我在个人window10电脑上安装 Oracle 19c 时遇到问题。解压后的数据库文件放在没有中文的文件目录下面&#xff0c;用管理员用户启动 CMD 窗口进行安装&#xff0c;但随后卡在菜单上。 取消安装之后去任务管理器中的服务里停掉OracleRemExecServiceV2服务。 用管理员运行CMD…

在VSCode创建vue项目,出现“因为在此系统上禁止运行脚本”问题

问题&#xff1a;vue : 无法加载文件 C:\Users\***\***\Roaming\npm\vue.ps1&#xff0c;因为在此系统上禁止运行脚本。有关详细信息&#xff0c;请参阅 ht tps:/go.microsoft.com/fwlink/?LinkID135170 中的 about_Execution_Policies。 所在位置 行:1 字符: 1 解决&#xff…

【23真题】超难985!做完感觉没学过!

本套试卷难度分析&#xff1a;22年西北工业大学827考研真题&#xff0c;我也发布过&#xff0c;若有需要&#xff0c;戳这里自取&#xff01;本套试题内容有难度&#xff0c;题目考察全为大题&#xff0c;题目不多&#xff01;但是题目都很新颖&#xff0c;状态方程的题目考察较…

企业实现员工聊天和转账行为的实时监管

如何解决企业营销团队的管理问题&#xff1f; 在当今竞争激烈的市场环境中&#xff0c;企业营销团队的管理显得尤为重要。营销团队是企业发展的重要支柱&#xff0c;然而&#xff0c;一些常见的问题如员工飞单、私单、辱骂删除客户、离职带走公司客户以及工作不认真、工作量无…