IT云运维技术分享

2023-11-08

1 运维体系

1.1 市场对运维的需求

时代发展到今天,社会的生活方式与生产方式的全面的数字化,无论是传统企业还是互联网企业,都在全面上云,这也意味着企业的关键业务乃至“身家性命”都已经全部放在 IT 系统之上,因此企业需要系统足够稳定可靠。而变化迅速的市场和激烈的竞争环境、以及监管等因素,也需要更敏捷的研发效率和应用架构来支持业务创新。所以不管是从业务需求场景还是技术趋势来说,运维体系的要求整体来讲都是要更可靠、更敏捷、 更智能。

image-20230620112811029

1.2 运维核心竞争力

  • 云计算的优势:可靠、弹性
  • 运维的本质工作:业务稳定性、IT成本合理性

上云之后省钱省力更安全可靠,是否意味着包括运维人员会被替代?云端不需要运维?

在云时代,对运维的正确理解应该是:云不但没有消灭运维,反而是助推了运维的发展。云端基础设施的存在,可以让运维从偏硬件服务器、偏物理机房的日常繁琐工作中解脱出来,更多地基于云在软件的层面,进行部署、监控、调整。我们应从以下几个方面,提升运维的核心竞争力

观念:云提高了运维效率,改变了运维形态,不再是传统意义上的监、管、控的

运维能力:运维人员不是被替代,而是需要进一步转型提升才能够满足IT云运维的需求

工作重点:云独有的特性,带来了更多的运维工作,将更多的精力放在业务的稳定性建设上,结合公司实际情况,制定体系标准和运维流程,从闭环的角度来看待业务的全生命周期管理。

1.3 运维体系建设

从应用生命周期视角切入,了解运维体系的建设,通过划分阶段,提炼属性,理清关系,实现运维场景。

image-20230620113226053

围绕着人类的生命周期,有一系列保障体系,如教育体系、职业体系、医疗体系、养老体系等。目的就是针对人生的不同阶段,提供不同形式的保障和支持,发挥价值。

回到我们运维对象的生命周期上来,我们也可以对应用的生命周期阶段进行分解,大致分为五个部分,应用的创建阶段、研发阶段、上线阶段、运行阶段和销毁阶段。

  • 创建阶段:标准化体系,先标准,再固化,然后自动化。开展运维工作的过程中,持续不断地用这个思路去标准化新出现的对象。对于同一类的应用,只需要做一次标准化即可,后续完全可以形成模板固化到工具平台上。

  • 研发阶段:主要是业务逻辑实现和验证的阶段,涉及到代码的提交合并、编译打包以及在不同环境下的发布部署过程,以及测试,这就是我们常说的持续集成,与线上发布形成持续交付这样一个闭环。持续交付体系是拉通运维和业务开发的关键纽带,是提升整个研发团队效率的关键部分

  • 运行阶段:应用生命周期中最重要、最核心的阶段。针对业务场景及异常变化,建立一系列的保障体系

  • 运营、销毁:围绕着某个应用所产生出来的基础设施、基础服务以及关联关系都要一并清理

2 云上运维

2.1 云上资源

以后,我们的代码,和我们构建的应用,将越来越多地运行在云上,我们的架构模式和思维方式,将更多地与云契合共生,因此,我们必须学习了解云。云计算发展到今天,已经不是我们想象中的只能提供 IaaS 服务的云平台了,目前各大公有云上的 PaaS 产品体系也已经非常完善。在资源配置、技术选型和架构设计等环节制定更好的方案。

image-20230620113542187

2.2 云端主要运维工作

  • 云端架构

云的本质是租用,根据业务需求,在成本投入与可用性之间获得一个最佳的平衡,才是你应该追求的目标。

image-20230620113628182

  • 监控

image-20230620113651742

  • 迁移:在公有云蓬勃发展之前就已经建设了自有的技术体系和架构,所以在选择上云的过程中,就需要有个过渡过程,这个过程就是混合云需求存在的应用场景

image-20230620113700604

  • 管理

image-20230620113709479

3 云原生运维

3.1 云原生概念

云原生是一种以微服务架构、容器化、自动化管理和持续交付为核心的软件开发和部署方法。

  • 相比传统架构:云原生架构在编程模型、交付方式、运维体系都产生了巨大的改变。云原生架构通过从业务代码中剥离了大量非功能性特性(如弹性、韧性、可观测性等)到 IaaS 和 PaaS 中,让业务更敏捷稳定的同时成本更低。

  • 与云计算的关系:是因云而生的软件、硬件和架构,云计算的再升级,能帮助企业最大化获得云价值云

  • 与容器的关系:轻量的容器与富有弹性的云计算天然契合,可以说云是容器应用的最佳载体,容器应用也非常适合在云上运行和扩展。

  • 技术中立:云原生具有技术/厂商中立的特点,是避免厂商绑定的“神器”。

不同的时代、不同的话题背景和场合下,云原生其实会指代或延伸出不同的含义。常见的一种狭义的云原生定义,特指的是容器化、容器编排和微服务架构。各类厂商在宣传 Kubernetes 服务和产品时所说的“云原生”从更广义的视角来看,只要是适合在云上运行,具备和符合云上架构特点的应用,都可以说是属于“云原生”范畴。

3.2 容器技术

容器技术是一种虚拟化技术,用于在计算机系统中隔离和运行应用程序和服务。容器和虚拟机具有相似的资源隔离和分配方式,容器虚拟化了操作系统而不是硬件,更加便携和高效。

image-20230620114013089

  • 镜像

以镜像制作为例,展示容器技术如何将应用程序及其依赖项打包到独立的运行环境中,实现快速部署、可移植性和弹性扩展。

FROM node:14                       # 指定基础镜像
ARG WORK_PATH="/hexo"     # 构建参数

  # 替换为阿里源并安装必要工具
RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list  \
      && apt update -y && apt-get install -y curl vim telnet

  # 解决vim中文乱码
RUN echo "syntax on \nset termencoding=utf-8 \nset encoding=utf8 \n    setfileencodings=utf8,ucs-bom,gbk,cp936,gb2312,gb18030" >> ~/.vimrc 

RUN npm install hexo-cli -g      # 安装hexo框架

WORKDIR $WORK_PATH      #设置工作目录

ENTRYPOINT ["docker-entrypoint.sh"]

3.3 编排及架构

每个架构模式都有其适合的场景,企业所处阶段的不同、人力资源的多寡、开发人员的技能高 低等,都会影响架构的选择。没有最好的架构,只有最适合的架构。并且架构需要持续演进, 才能够支持业务发展。

image-20230620114125588

3.4 持续交付

软件交付的困难在于环境之间的差异,以及软件交付和运维人员的技能差异。为屏蔽不同环境之间的差异对交付人员造成的困扰,公司采用jira做研发流程管理,通过集成gitlab与jenkins等相关工具,实现高度自动化软件交付。将需求上线流程和流水线进行整合,基于容器进行标准化的软件交付,上线的每一阶段都经过可靠性验证,支持随时自主上线。

image-20230620114205552

4 学习路径

云计算和 AI 时代,不仅是机遇也是挑战,我们必须不断地学习和提升自己的技能,保持对技术发展趋势的敏锐性;还要有产品意识,能够将你所做的事情整理汇总起来,然后做一下流程上的串联,再把流程中每个环节步骤的功能进行详细描述,同时在梳理的过程中,将一些不合理、不规范的地方进行标准化约定,根据需求,把承载了标准化和规范体系的工具平台真正落地应用起来。
以下是对于运维“新手”的学习路径建议:

  • 笔记:markdown笔记软件,csdn博客
  • 系统管理:linux+shell
  • 云计算特性:云服务器、存储、负载均衡、CDN、域名、安全组等
  • 容器化和编排:docker、k8s
  • CI/CD:jenkins、gitlab-ci、ansible、项目管理系统
  • 监控和故障排除:prometheus,grafana,日志分析、性能调优
  • 进阶:学会写代码,培养产品意识,提升技术运营意识

5 案例分享

CSDN云原生改造的实现路径:https://blog.csdn.net/foreverccc/article/details/128577339

image-20230620114424245

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

IT云运维技术分享 的相关文章

随机推荐

  • Qt TCP & UDP 使用总结

    使用Qt Network模块开发了一个UDP和TCP测试工具 client和server都写在一起 运行时先选择模式 其中TCP部分主要使用QTcpServer和QTcpSocket两个类 采用异步方式 开始是参考霍亚飞的 Qt Creat
  • 一篇搞懂 Java线程池

    一篇搞懂 Java线程池 前言 线程池参数 线程池的主要处理流程 线程池测试 线程池任务队列 线程池拒绝策略 Java提供的默认线程池 定长线程池 FixedThreadPool 定时线程池 ScheduledThreadPool 可缓存线
  • Selenium WebDriver详解,什么是Selenium WebDriver?

    随着许多测试团队从手动测试转向自动化测试 找到适合他们的框架可能会让人不知所措 大多数转向自动化的团队都听说过Selenium WebDriver 并且知道它是一种用于 Web 自动化的免费开源工具 但是随着开源测试框架的激增 许多人怀疑这
  • JVM学习笔记(快速版)

    JVM 1 常见面试问题 1 谈谈堆JVM的理解 2 java8中JVM的新内容 3 什么是OOM 什么是StackOverFlowError 怎么分析 4 JVM的调优常见参数 5 内存快照如何抓取 6 如何分析Dump文件 2 JVM的
  • 我的周刊(第001期)

    我的信息周刊 记录这周我看到的有价值的信息 主要针对计算机领域 内容主题极大程度被我个人喜好主导 这个项目核心目的在于记录让自己有印象的信息做一个留存以及共享 项目 image to latex 1 可以将数学公式截图然后自动解析成LaTe
  • S5P4418裸机之SDIO程序

    简介 SDIO Secure Digital Input and Output 即安全数字输入输出接口 它是在SD卡接口 的基础上发展而来 通常的存储设备 如TF卡 以及EMMC等存储芯片都是通过SDIO总线来通信的 一 s5p4418的S
  • conda init

    在输入conda activate 的时候出现报错 解决 需要使用 conda init 进行初始化 的错误通常是由于你的系统环境缺少 conda 的初始化脚本所致 当你尝试在终端中执行 conda activate 命令时 会出现此错误提
  • 1.1 new关键字及内存泄漏

    new关键字是C 用来动态分配内存的主要方式 代码演示 new可以直接分配单个变量的内存 也可以分配数组 在分配单个对象的内存时 当对象是普通变量时 可以分配对应的内存 include
  • 雪球网

    aa 600774 600715 002962 002706 600874 002730 300328 600727 834779 300188 300225 603967 002637 000715 837679 300310 30048
  • linux 目录文件对比,Linux下快速比较两个目录的不同

    曾多次想要在Linux下比较目录a和目录b中文件列表的差别 然后对目录a比目录b中多出的文件 少掉的文件分别做处理 但是 在网上搜索了多次也都没找到能直接处理好的工具 所以想了很多不少方法 自我感觉都不错 而且网上似乎没有这方面的文章 所以
  • Python数据分析实战(3)Python实现数据可视化

    文章目录 一 数据可视化介绍 二 matplotlib和pandas画图 1 matplotlib简介和简单使用 2 matplotlib常见作图类型 3 使用pandas画图 4 pandas中绘图与matplotlib结合使用 三 订单
  • 出现次数最多的数CSP201312-1(简单c语言解法)

    问题描述 给定n个正整数 找出它们中出现次数最多的数 如果这样的数有多个 请输出其中最小的一个 输入格式 输入的第一行只有一个正整数n 1 n 1000 表示数字的个数 输入的第二行有n个整数s1 s2 sn 1 si 10000 1 i
  • Linux中ssh基于密匙的安全验证过程是怎样的?

    在Linux中 ssh是非常重要的存在 但很多人对 ssh 这个概念很模糊 听起来也很晦涩难懂 那么Linux ssh是什么 有什么用 这篇文章为你解答一下 SSH是一种协议 SSH是较可靠 专为远程登录会话和其他网络服务提供安全性的协议
  • BufferedImage 基本操作

    1 创建一个图片 并且写入文件 BufferedImage grayImage new BufferedImage 512 512 BufferedImage TYPE INT ARGB ImageIO write grayImage jp
  • 利用函数求数组[5,2,99,101,67,77]中的最大值

  • 后台开发工具篇之xampp

    一 解决问题 在进行后台开发时 我们很多时候都需要先在本地编写与调试代码 这就需要我们首先在本地搭建服务器开发环境 但是 搭建过的朋友应该知道 环境的搭建可不是三两步就可以搞定的 举例来说 如果我们要在本地Windows环境中搭建PHP服务
  • 图像预处理——CV

    目录 1 图像预处理 1 1 图像显示与存储原理 1 2 图像增强的目标 1 3 点运算 基于直方图的对比度增强 1 4 形态学处理 1 5 空间域处理 卷积 1 6 卷积的应用 平滑 边缘检测 锐化等 1 7 频率域处理 傅里叶变换 小波
  • 薪资12k,在银行外包做软件测试是一种什么体验...

    背景 本人普通二本本科毕业 4 年 目前是在广州工作 是一家大型的人力外包公司外包到银行的开发人员 这可能也是长期在各大招聘软件上最积极的招聘岗位 从入职到现在已经有四个月了 也大概了解了外包的主要工作情况 也有了一些心得体会 借此机会也简
  • 【解决】NullReferenceException: Object reference not set to an instance of an object

    游戏引擎 Unity 版本 2019 4 6f1 2017版本以上均可 编译平台 Visual Studio 2019 一 问题描述 描述 原 文 报错 NullReferenceException Object reference not
  • IT云运维技术分享

    1 运维体系 1 1 市场对运维的需求 时代发展到今天 社会的生活方式与生产方式的全面的数字化 无论是传统企业还是互联网企业 都在全面上云 这也意味着企业的关键业务乃至 身家性命 都已经全部放在 IT 系统之上 因此企业需要系统足够稳定可靠