微服务讲堂--【5】系统自举

2023-05-16

    这里的“系统自举”借用了操作系统的概念。在操作系统启动之前,计算机要先加载自举程序,再由自举程序加载操作系统的启动程序。整个详细过程不在这里描述,可以在网络查阅相关资料。

    为什么要在微服务系统中特别提及系统自举这个概念呢,因为这内容很重要,而且常常被忽略,以至于很多人对这个过程一无所知。这个部分过程之所以重要,因为他是整个微服务系统的起点。在微服务首次部署或者迁移、扩容的时候,都会面临一个问题,如何在一个空操作系统里,快速部署并启动一个微服务。

    当一套应用系统,不论他是否是微服务,要被部署到一个空白操作系统中,首先都要解决两个问题。一个是如何将这套系统的文件传输到目标操作系统中,另一个问题是,如何启动这套系统的主程序。在一个空白操作系统中,是没有现成的K8S,只有那些原生的后台服务。因此,即使微服务被封装在docker中,这个问题依然存在。

    有人可能会说,我可以在空白预先部署一个代理程序,由这个代理程序来负责部署和启动后续的应用系统。即使如此,那么这个代理程序的部署和启动同样也面临着自身的部署和启动问题。即,外部系统如何在一个空白操作系统中自举。

    在所有的自动运维工具,我对ansible特别推崇。并不是他的功能特别丰富和强大,而是他基于ssh部署各部分系统。ssh是linux操作系统自带的原生后台服务,在Linux启动之后,ssh就已经准备完成,等待响应请求,不需要额外的部署动作。同时,ssh也可以完成文件传输,部署到指定的目录中。ssh还能够接受对应指令,启动特定的可执行程序,包括脚本。ansible很聪明利用ssh这三个特性,完成系统自举,实现自动化部署。在windows系统中,也是有类似的功能的命令,如net。但由于安全问题,很多管理员默认将其禁用,这也是一个需要权衡的问题。

    在完成系统自举,将应用系统部署到空操作系统之后,是否还要继续沿用ssh来完成更多功能呢,个人认为大可不必。自举程序实现的是从0到1就可以了,可以确保自身足够精悍短小,还十分稳定。而更多丰富和强大的功能,应该由后续的应用系统自身来完成,实现从1到N的演变。即使是文件传输和指令控制,也可以,而且也建议在应用系统中完成。比如增量传输,这在大规模部署或者大型文件传输中,尤为关键,否则很容易造成网络风暴甚至系统雪崩,反而影响了正常业务进行。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微服务讲堂--【5】系统自举 的相关文章

  • 论文阅读 | Sharp-MAML: Sharpness-Aware Model-Agnostic Meta Learning, ICML2022

    1 motivation 模型不可知元学习 xff08 MAML xff09 是目前小样本元学习的主要方法之一 尽管MAML有效 xff0c 但由于固有的双层结构 xff0c 其优化可能具有挑战性 具体而言 xff0c 这种双层结构使得MA
  • 小样本元学习论文阅读 | Few-shot Learning with Noisy Labels, Facebook, CVPR2022

    目录 1 motivation 2 contribution 3 Static alternatives to the mean 1 空间中值原型 2 相似度加权原型 4 Learning a prototype aggregator 1
  • 解决Failed to download metadata for repo ‘AppStream’

    原贴 xff1a https www cnblogs com EthanWong p 15932675 html 在CentOS 8 上执行命令 sudo yum update 时报错 xff1a span class token punc
  • WebView自动H5缓存-清除缓存ios

    iOS的Webview加载HTML时会自动缓存JS CSS等文件 xff0c 当下次加载HTML时会根据请求的缓存策略是否使用缓存本地的JS和CSS xff0c 如果本地有缓存 xff0c 那么直接返回本地资源 判断是否过期 xff1b 如
  • 小样本学习论文阅读 | Confess: A framework for single source cross-domain few-shot learning, ICLR 2022 poster

    1 motivation 目前的方法在源域和目标域存在较大域间偏差时实用性较差 本文认为 xff1a 1 无监督学习可以缓解监督崩溃问题 xff0c 并且训练得到的模型可以更好地推广到目标域中 2 因为源数据集和目标数据集之间存在很大差异
  • 将VMDK格式的镜像转成qcow2

    将VMDK格式的镜像转成qcow2格式 1 我们要通过Linux虚拟机进行格式转化工作 在虚拟机中创建单文件可以提取出来VMDK格式 这是我自己的虚拟机创建出来的文件 2 我们找到我们创建好的虚拟机 通过我们远程连接工具进行上传到我们要转为
  • 如何做好一个项目经理

    第一部分 xff1a 软件项目经理的要求 首先是一个管理者 xff0c 其次熟悉某些工具 xff0c 某几种语言 xff0c 行业背景 xff0c 项目管理技能 软件项目经理面临的恶劣环境 xff0c 我们绝大部分软件企业运行在相对混乱的状
  • Cortex-M3利用SVC中断调用系统服务的例子

    SVC xff08 系统服务调用 xff0c 亦简称系统调用 xff09 和PendSV xff08 可悬起系统调用 xff09 xff0c 它们多用在上了操作系统的软件开发中 SVC用于产生系统函数的调用请求 例如 xff0c 操作系统通
  • Nginx + Tomcat + HTTPS极速配置

    由于最近在学习微信小程序开发 xff0c 所以在阿里云申请了一个免费的https证书 xff0c 这个证书申请起来十分简单 xff0c 大约十几分钟就好 所以不再赘述 更多信息可以访问我的个人网站 xff1a https www cjluz
  • Keil uVision5软件的操作与编写基础(入门)

    目录 x1f46c 一 如何新建一个空白文档 x1f46c 二 程序编写 x1f46c 三 编译程序 Keil uVision5是一款编写单片机程序的必备软件 其图标为 xff1a 一 如何新建一个空白文档 1 打开Keil uVision
  • 【工作笔记】Mysql写入报错:Incorrect datetime value: ‘1970-01-01 08:00:00‘

    在写入Mysql的timestamp格式列时 xff0c 将默认时间赋值为1970 01 01 08 00 00 xff1a new Timestamp 0L 此时报错 xff1a Incorrect datetime value 39 1
  • 【人脸识别】L2_Softmax Loss详解

    论文题目 xff1a L2 constrained Softmax Loss for Discriminative Face Verification 论文地址 xff1a https arxiv org pdf 1703 09507 pd
  • JS 常见的 6 种继承方式

    JS 常见的 6 种继承方式 第一种 xff1a 原型链继承 原型链继承是比较常见的继承方式之一 xff0c 其中涉及的构造函数 原型和实例 xff0c 三者之间存在着一定的关系 xff0c 即每一个构造函数都有一个原型对象 xff0c 原
  • MapReduce编程小案例.9th—join算法

    MapReduce编程小案例 9th join算法 数据 xff1a 有订单数据 xff1a order001 u001 order002 u001 order003 u005 order004 u002 order005 u003 ord
  • centos7 安装qt6,安装失败

    Error during installation process qt qt6 624 gcc 64 Could not find the required QmakeOutputInstallerKey qt qt6 624 gcc 6
  • ubuntu安装chrome浏览器

    1 xff09 使用自带的firefox打开 Google Chrome 网络浏览器 点击下载 xff0c 在linux下 xff0c 下载google chrome stable current amd64 deb 2 进入下载目录 su
  • maven xsd文件

    lt xml version 61 34 1 0 34 gt lt xs schema xmlns xs 61 34 http www w3 org 2001 XMLSchema 34 elementFormDefault 61 34 qu
  • 一个电子发烧友的程序员成长之路

    回想起高考已经是7年前的事情了 xff0c 一直想在毕业之际记忆记录一下7年的历程 xff0c 懒惰始终占据着我的整个身躯 看到这个征文活动 xff0c 让我有点想提笔记录的冲动了 1 邂逅 一直在想该用什么样的语言来将我对电子制作发烧程度
  • AI与医学辅助诊断

    人工智能一词越来越频繁的出现在日常生活中 一种事物的时髦 xff0c 必然有其背后的原因 而对于这样一个大的话题 xff0c 从整体上来叙述总显得有些不接地气 作为跟AI沾过一些边的博主将以自己接触的方面来发表一点看法 首先介绍一下 xff
  • 最优传输理论与计算 ——雷娜 顾险峰 【新书发布】

    缘起 1995年秋季 第二作者刚刚来到哈佛大学开始攻读计算机科学领域的博士学位 并在数学系学习丘成桐先生的微分拓扑课程 同时在麻省理工学院人工智能实验室学习Berthold Horn教授的机器人视觉课程 Horn教授提倡从物理的角度来理解视

随机推荐

  • 1.2.6 Linux distributions

    鸟哥的Linux私房菜 基础学习篇 xff08 第三版 xff09 第1章Linux是什么 xff0c 本章介绍为何Linux可以免除专利软件之争 xff0c 并且了解到Linux为何可以同时在个人计算机与大型主机上面大放光彩 本节为大家介
  • 全球40个免费电子图书馆网址~收藏

    中文 中图在线 xff08 提供 3600 种国外期刊的查阅服务 xff09 http cnplinker cnpeak com 国家哲学社会科学文献中心 xff08 提供 2039 种中文期刊 xff0c 7898 种外文期刊 xff09
  • 【docker】WSL+docker_desktop+GPU配置环境失败

    尝试windows下使用docker desktop安装深度学习的GPU环境 xff0c 结果很失败 xff0c GPU调用不了 我一共尝试两种方式调用GPU 第一种是新版本WSL2直接支持 xff0c 下载一个Nvidia官方的docke
  • public,private,protected 常见区别

    1 作用域public private protected 以及不写时的区别 答 xff1a 不写时默认为default 区别 作用域当前类 同一package子孙类其他packagepublic protected default pri
  • NETCONF协议netopeer软件安装与环境搭建

    NETCONF协议netopeer软件安装与环境搭建 目录 NETCONF协议netopeer软件安装与环境搭建 目录简介相关网站参考准备工作手动编译安装部份依赖包手动编译netopeer启动与验证 简介 最近工作涉及一些NETCONF协议
  • centos7 vnc黑屏解决办法

    手动安装的dbus与系统dbus冲突 xff0c 导致vnc启动黑屏 解决办法如下 xff1a 通过命令 find name 34 dbus daemon 34 查找安装的dbus 其中 usr bin dbus daemon 是系统自带的
  • OVS常用命令与使用总结

    OVS常用命令与使用总结 说明 在平时使用ovs中 xff0c 经常用到的ovs命令 xff0c 参数 xff0c 与举例总结 xff0c 持续更新中 进程启动 1 先准备ovs的工作目录 xff0c 数据库存储路径等 mkdir p et
  • 故障容忍分布式协调框架 Atomix

    Atomix 详细介绍 Atomix 是 JAVA8 的故障容忍分布式协调框架 Fault tolerant distributed coordination framework for Java 8 主要特性 xff1a list 可靠
  • 极几何,本质矩阵,基础矩阵,单应矩阵,相机投影矩阵

    什么是三角化 xff1f 三角化就是下图的红字部分 xff1a K和K 分别为两个相机的内参矩阵 什么是极几何 xff1f 极几何描述了同一场景或者物体在两个视点图像间的对应关系 下图中的O1和O2分别是两个相机的光心 xff0c 即摄像机
  • vncserver Cannot establish any listening sockets - Make sure an X server isn‘t already running(EE)

    说明vnc按顺序想要打开的可视化界面端口已被占用 xff0c 可以使用ps ef grep X命令查看一下进程里已经打开的图形化界面 xff08 有些是其他用户已打开的vnc xff0c 有些是系统默认已启用的图形界面 xff0c 不要随意
  • 如何处理linux Ubuntu网络不通的问题

    ubuntu 网络图标不见的问题解决方案 xff08 即无法联网解决方案 xff09 尝试以下操作 xff1a sudo service network manager stop sudo rm var lib NetworkManager
  • UCOSII学习---五、任务通信之信号量

    一 xff1a 信号量的理解 xff1a 信号量的本质是数据操作锁 xff0c 它本身不具有数据交换的功能 xff0c 而是通过控制其他的通信资源 xff08 文件 xff0c 外部设备 xff09 来实现进程间通信 xff0c 它本身只是
  • Python添加或去掉百分号

    数据 xff1a import pandas testing as tm data 61 tm makeDataFrame data 61 data iloc 5 示例数据 xff1a A B C D 6EBYVo9iQi span cla
  • MxNet(GPU版本)安装及相关配置(CUDA,CuDNN,Graphviz,d2l,虚拟环境配置)及最终建议

    深度学习框架MxNet配置 xff08 GPU版本 xff09 1 对应镜像 xff1a https mirrors aliyun com pypi simple mxnet 找到与自己电脑Python版本对应 xff08 命令行使用pyt
  • Kali Linux使用(含VMVare station player安装教程)

    VMware Workstation Player下载及安装配置 1 官方下载地址 xff1a VMvare Workstation Player 2 安装 xff1a 基本一路点 xff0c 需要注意的地方就是后面弄好了要重启一下 xff
  • 那些提升效率的tips(不定期更新中...)

    电脑插了网线可以上网却显示无internet 打开设备管理器 xff08 找不到在控制面板中搜索 设备管理器 xff09 找到网络适配器 选择网卡驱动程序 xff0c 先禁用设备再开启设备 xff08 重启 xff09 用MarkDownl
  • cmake的一个编译报错

    在一台新搭建的服务器上执行cmake的时候 xff0c 报了如下错误 xff1a cmake The C compiler identification is unknown The CXX compiler identification
  • 名词解释专用链接

    算法相关 xff1a 主元素 设T 1 n 是一个含有n个元素的数组 当 i T i 61 x gt n 2 xff0c 时称元素x是数组T的主元素 例如 xff0c T 61 1 1 1 2 5 5 1 1 1 1 xff0c T中有10
  • 微服务讲堂--【4】风洞系统

    一 系统特性 风洞是以人工的方式产生并且控制气流 xff0c 用来模拟飞行器周围气体的流动情况 xff0c 并可测量气流对飞行器的作用效果以及观察物理现象的实验设备 这个定义来自百度百科 xff0c 微服务和飞行器压根就搭不上边 xff0c
  • 微服务讲堂--【5】系统自举

    这里的 系统自举 借用了操作系统的概念 在操作系统启动之前 xff0c 计算机要先加载自举程序 xff0c 再由自举程序加载操作系统的启动程序 整个详细过程不在这里描述 xff0c 可以在网络查阅相关资料 为什么要在微服务系统中特别提及系统