【云原生基础】了解云原生,什么是云原生?
📑前言
本文主要讲了云原生的基本概念和原则的文章,如果有什么需要改进的地方还请大佬指出⛺️
🎬作者简介:大家好,我是青衿🥇
☁️博客首页:CSDN主页放风讲故事
🌄每日一句:努力一点,优秀一点

目录
文章目录
- 📑前言
- **目录**
- 什么是云原生
- 云原生的优势有哪些?
- 什么是云计算架构
- 什么是云计算架构分层
- 什么是Kubernetes
- 为什么你需要 Kubernetes ?
- 什么是Paas
- Paas 和 Docker的区别
- 云原生安全的未来
- 📑文章末尾
什么是云原生
云原生(Cloud-Native)是一种软件开发和部署方法论,旨在利用云计算、容器化、微服务架构和持续交付等现代技术和最佳实践,以构建、部署和运行可伸缩、高可用、弹性和易于管理的应用程序。云原生应用程序旨在充分发挥云计算的潜力,以更好地满足快速发展的数字业务需求。
以下是云原生的关键特点和概念:
-
容器化:云原生应用程序通常使用容器技术(如Docker)进行封装,使应用程序及其依赖项可以在不同环境中一致运行。容器化提供了隔离、可重复部署和快速部署的好处。
-
微服务架构:云原生应用程序使用微服务架构,将应用程序拆分为小的、独立的服务,每个服务负责特定功能。这种方式提高了可伸缩性和灵活性,并使不同服务可以独立开发、部署和维护。
-
自动化和自动扩展:云原生应用程序通常具备自动化运维特性,包括自动部署、监控、故障恢复和自动扩展。这样可以确保应用程序在高负载时具有高可用性。
-
持续交付:云原生应用程序使用持续集成和持续交付(CI/CD)管道来自动构建、测试和部署新代码。这使得快速交付新功能和修复变得更加容易。
云原生的优势有哪些?
1.高可用性
云原生可以实现应用程序的高可用性和容错性,以保证应用程序的稳定性和可靠性。
2.可扩展性
云原生可以根据应用程序的需求动态地扩展计算资源,提高资源的灵活性和可用性。
3.灵活性
云原生可以根据应用程序的需求选择不同的云服务和云平台,提高资源的灵活性和可用性。
4.效率
云原生可以通过自动化管理和持续交付的方法提高效率,从而节省时间和成本。
5.安全性
云原生可以提供多层次的安全保障,保护企业的数据和隐私。
什么是云计算架构
云计算架构通常包括以下主要组件和层次:
-
物理层:这一层包括数据中心、服务器、网络设备等硬件基础设施,它们提供了计算、存储和网络资源。物理层通常由云服务提供商管理和维护。
-
虚拟化层:虚拟化技术允许将物理资源划分成虚拟资源,以便多个租户或应用程序共享硬件资源。这包括虚拟机(VM)、容器、虚拟网络和虚拟存储。
-
资源管理和自动化:这一层包括资源分配、负载均衡、自动伸缩、故障恢复和自动化操作。资源管理和自动化层确保资源有效利用和高可用性。
-
云服务层:云服务层包括各种云服务,如基础设施即服务(IaaS)、平台即服务(PaaS)和软件即服务(SaaS)。这些服务为应用程序提供所需的计算、存储、数据库、开发工具、分析等功能。
-
应用程序层:这是云计算的最顶层,包括用户应用程序、Web应用程序、移动应用程序等。这些应用程序在云服务层上构建,可以是企业应用、社交媒体、电子商务等各种类型。
-
网络和安全:云计算架构需要有效的网络连接,以便数据流动和访问云服务。安全也是至关重要的,包括身份认证、访问控制、加密、威胁检测和合规性管理。
-
监控和管理:监控和管理层提供了对云环境的实时监控、性能管理、故障检测和问题解决的工具。这有助于维护和优化云服务。
什么是云计算架构分层

一般来说,大家比较公认的云架构是划分为基础设施层、平台层和软件服务层三个层次的。对应名称为IaaS,PaaS和SaaS。IaaS。
IaaS主要包括计算机服务器、通信设备、存储设备等,能够按需向用户提供的计算能力、存储能力或网络能力等IT基础设施类服务,也就是能在基础设施层面提供的服务。IaaS能够得到成熟应用的核心在于虚拟化技术,通过虚拟化技术可以将形形色色计算设备统一虚拟化为虚拟资源池中的计算资源,将存储设备统一虚拟化为虚拟资源池中的存储资源,将网络设备统一虚拟化为虚拟资源池中的网络资源。当用户订购这些资源时,数据中心管理者直接将订购的份额打包提供给用户,从而实现了IaaS。
PaaS, Platform as a Service,中文名为平台即服务。如果以传统计算机架构中“硬件+操作系统/开发工具+应用软件”的观点来看待,那么云计算的平台层应该提供类似操作系统和开发工具的功能。实际上也的确如此,PaaS定位于通过互联网为用户提供一整套开发、运行和运营应用软件的支撑平台。就像在个人计算机软件开发模式下,程序员可能会在一台装有Windows或Linux操作系统的计算机上使用开发工具开发并部署应用软件一样。微软公司的Windows Azure和谷歌公司的GAE,可以算是PaaS平台中最为知名的两个产品了。
SaaS,Software as a Service,软件即服务。简单地说,就是一种通过互联网提供软件服务的软件应用模式。在这种模式下,用户不需要再花费大量投资用于硬件、软件和开发团队的建设,只需要支付一定的租赁费用,就可以通过互联网享受到相应的服务,而且整个系统的维护也由厂商负责。
什么是Kubernetes
Kubernetes,简称 k8s(k,8 个字符,s——明白了?)或者 “kube”,是一个开源的 Linux 容器自动化运维平台,它消除了容器化应用程序在部署、伸缩时涉及到的许多手动操作。换句话说,你可以将多台主机组合成集群来运行 Linux 容器,而 Kubernetes 可以帮助你简单高效地管理那些集群。构成这些集群的主机还可以跨越公有云、私有云以及混合云。
Kubernetes 最开始是由 Google 的工程师设计开发的。Google 作为 Linux 容器技术的早期贡献者之一,曾公开演讲介绍 Google 如何将一切都运行于容器之中(这是 Google 的云服务背后的技术)。Google 一周内的容器部署超过 20 亿次,全部的工作都由内部平台 Borg 支撑。Borg 是 Kubernetes 的前身,几年来开发 Borg 的经验教训也成了影响 Kubernetes 中许多技术的主要因素。
为什么你需要 Kubernetes ?
真实的生产环境应用会包含多个容器,而这些容器还很可能会跨越多个服务器主机部署。Kubernetes 提供了为那些工作负载大规模部署容器的编排与管理能力。Kubernetes 编排让你能够构建多容器的应用服务,在集群上调度或伸缩这些容器,以及管理它们随时间变化的健康状态。
Kubernetes 也需要与网络、存储、安全、监控等其它服务集成才能提供综合性的容器基础设施。

什么是Paas
平台即服务(PaaS)是一种云计算模型之一,其中第三方提供商通过互联网向用户提供硬件和软件工具(通常是应用程序开发所需的工具)。 PaaS提供商在其自己的基础架构上托管硬件和软件。 因此,PaaS使开发人员免于必须安装内部硬件和软件来开发或运行新应用程序的麻烦。
以下是PaaS的主要特点和优势:
-
应用程序开发和部署:PaaS平台提供了一个开发环境,其中包括编程语言、开发工具、库和框架。开发人员可以使用这些工具来编写、测试和部署应用程序。
-
自动化和管理:PaaS提供自动化的管理功能,包括应用程序托管、数据库管理、负载均衡和自动伸缩。这些功能减轻了开发人员对基础设施管理的负担。
-
多租户支持:PaaS平台支持多租户模型,允许多个用户或团队共享相同的开发和运行环境,同时进行隔离和安全性控制。
-
弹性和可伸缩性:PaaS平台通常具有弹性和可伸缩性功能,可以根据应用程序的负载需求自动扩展或缩减资源。
-
集成和生态系统:PaaS平台通常包括集成的开发工具、第三方服务和API,以支持应用程序开发和连接到其他云服务。
-
付费模型:PaaS通常采用按使用量付费的模型,这意味着开发人员只支付他们实际使用的资源,而不需要预先购买和维护硬件设备。
-
快速开发和迭代:PaaS可以加速应用程序的开发周期,支持快速迭代和持续交付,有助于开发人员更快地推出新功能和修复bug。
总的来说,PaaS是一个强大的云计算服务模型,适用于开发人员和团队,帮助他们更快速、更高效地构建和部署应用程序,同时减轻了底层基础设施管理的负担。这使得PaaS成为云计算领域的重要组成部分,用于支持现代应用程序的开发和交付。
Paas 和 Docker的区别
PaaS(Platform as a Service)和Docker是两种不同的云计算和容器化技术,它们有一些相似之处,但也有重要的区别:
-
抽象级别:
- PaaS:PaaS提供了一个高度抽象的应用程序开发和部署平台,开发人员可以在平台上构建、测试和部署应用程序,而不必关心底层的操作系统和基础设施。
- Docker:Docker提供了容器化技术,允许开发人员将应用程序及其依赖项打包到容器中,并在不同环境中一致运行。Docker提供了更低层次的抽象,允许更多的控制和配置。
-
环境和依赖项:
- PaaS:PaaS通常提供了一整套开发环境、运行时和支持库,开发人员使用这些环境构建应用程序。依赖项通常由PaaS提供商管理。
- Docker:Docker容器允许开发人员打包应用程序及其依赖项,使应用程序在不同环境中具有一致性,无论是开发、测试还是生产环境。
-
灵活性:
- PaaS:PaaS平台通常提供了一种特定编程语言、框架或技术的开发环境,因此对于某些特定的需求可能不够灵活。
- Docker:Docker容器提供了更大的灵活性,可以容纳几乎任何编程语言、应用程序和服务,而不受限制于特定的编程模型。
-
资源控制:
- PaaS:PaaS通常提供了资源自动伸缩和管理,但在底层资源控制方面可能有限。
- Docker:Docker容器允许更精细的资源控制和配置,可以更好地满足应用程序的性能需求。
-
移植性:
- PaaS:PaaS平台通常依赖于特定的提供商和云环境,可能在不同的PaaS提供商之间不够可移植。
- Docker:Docker容器是可移植的,可以在不同的云提供商和环境中运行。
综上所述,PaaS是一个高度抽象的应用程序开发和部署平台,适用于开发人员,但可能对于需要更多灵活性和控制的情况不够理想。Docker提供了更低层次的容器化技术,允许更多的控制和可移植性,适用于需要更多自定义配置的场景。在实际应用中,PaaS和Docker可以相互结合使用,以满足不同的需求。

云原生安全的未来
云原生安全将继续演化,以满足不断变化的威胁和技术发展。未来的趋势可能包括:
-
AI和机器学习
将AI和机器学习应用于安全监控,以识别潜在的威胁和异常活动。 -
云原生安全工具
新的云原生安全工具和平台将不断涌现,以应对新的威胁和需求。 -
合规性和隐私
随着法规和隐私要求的不断增加,合规性和隐私保护将成为云原生安全的重要组成部分。 -
安全文化
企业将建立安全文化,使每个员工都成为安全的一部分,而不仅仅是IT部门的责任。
📑文章末尾

相关文章:
【云原生基础】了解云原生,什么是云原生?
📑前言 本文主要讲了云原生的基本概念和原则的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是青衿🥇 ☁️博客首页:CSDN主页放风讲故事 🌄每日一句&#x…...
Android.bp探究
有时不知道Android.bp要咋写,特意看了下源码: ./build/soong/androidmk/androidmk/android.go 简单的Android.bp的模板是下面这个样子: [module type] {name: "[name value]",[property1 name]:"[property1 val…...
【LeetCode】415 字符串相加
415. 字符串相加 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和并同样以字符串形式返回。 你不能使用任何內建的用于处理大整数的库(比如 BigInteger), 也不能直接将输入的字符串转换为整数形式。 示例 1:…...
【RP-RV1126】配置一套简单的板级配置
文章目录 官方配置新建一套新配置新建板级pro-liefyuan-rv1126.mk配置文件新建一个Buildroot的defconfigs文件 吐槽:RP-RV1126 的SDK奇怪的地方make ARCHarm xxx_defconfig 生成的.config文件位置不一样savedefconfig命令直接替换原配置文件坑爹的地方 Buildroot上增…...
解决uniapp的video标签和transition属性使用时出现错位的问题
template:三个视频都每个占满屏幕,点击按钮滚动最外层bgBox元素, style: 想要加上动画过渡效果: 这是显示第一个视频: 点按钮向上滑动滚动到第二个视频时: 视频错位了 ,因为视频消失又出现的时候…...
电脑校园杂志电脑校园杂志社电脑校园编辑部2023年第9期目录
智慧校园 基于vue.js的“微校园”APP设计 吴秋伟 周慧 董锐 李仙云 余维 邓巧平 彭微1-3 探析AIGC对网络安全的革新:挑战与机遇共存 康良成 张朋4-6 文本信息自动摘要技术综述 滕宇飞7-9《电脑校园》投稿:cn7kantougao163.com 区块链应用于图书馆服务的策…...
NSSCTF做题第十页(1)
[GXYCTF 2019]禁止套娃 看源代码也没什么东西,扫一下看看 发现了git泄露 话不多说直接开整 下载下来了 flag.php 还是代码审计 <?php include "flag.php"; echo "flag在哪里呢?<br>"; if(isset($_GET[exp])){ if (!preg_…...
文件详细操作过程(C语言)
🌞🌞🌞千淘万漉虽辛苦🌞🌞🌞 🌞🌞🌞吹尽狂沙始到金🌞🌞🌞 🌇C语言文件操作 🍊文件的定义🍋什么是文…...
python使用ffmpeg来制作音频格式转换工具(优化版)
简介:一个使用python加上ffmpeg模块来进行音频格式转换的工具。 日志: 20231030:第一版,设置了简单的UI布局和配色,实现音频转为Mp3、AAC、wav、flac四种格式。可解析音频并显示信息,可设置转换后的保存路径 UI界面: 编程平台:visual studio code 编程语言:python 3…...
Debug技巧-不启用前端访问后端
在日常开发中,我们经常会遇到各种问题需要调试,前后端都启动需要耗费一定的时间和内存,方便起见,可以直接用抓包数据访问后端,这里我们需要用到Postman或者ApiFox 抓包数据 在系统前台触发后端请求,在控制…...
由CAB/PAB展开的一些思考
又到了一月保底一篇订阅号文章的时候,上周受到Oracle邀请,参加了在上海Oracle办公室举行的CAB(The 13th Oracle China Customer Advisory Board Metting)/ PAB(The 3th Oracle China Partner Advisory Board Metting&…...
系列十五、idea全局配置
一、全局Maven配置 IDEA启动页面>Customize>All settings>Build,Execution,Deployment>Build Tools>Maven 二、全局编码配置 IDEA启动页面>Customize>All settings>Editor>File Encodings 三、全局激活DevTools配置 IDEA启动页面>Customize>A…...
高德Go生态建设与研发实践
序 高德在构建Go生态演化过程中,已经实现了QPS从0到峰值千万的飞跃,本篇文章主要介绍在此过程中积累的一些技术决策及性能优化和重构经验。阅读本文读者会有以下3点收获: 1.高德Go生态发展历程及现状分析 2.高德云原生Serverless落地情况&…...
SpringCloud中Turbine 1.X版本BUG
错误出现在spring-cloud-turbine-stream 包中,因为这个包会启动一个netty-port容器,并将它的server.port 设置为-1 ,从而关闭了Servlet容器,这是官方包的一个Bug,不过Spring Boot 2.0已修复,要么升级包要么…...
SCSS的用法有哪些?分别举例
SCSS的用法主要有: 1: 变量:在SCSS中,我们可以通过 $ 符号来定义变量。比如,我们可以定义一个颜色变量 $color: red;,然后在我们需要使用这个颜色的时候,直接使用 $color 就可以了。 2&#x…...
Spring controller层请求数据和响应数据的简单方法
记录一些很基本的使用方法。 一、GET请求传参方法: 1.方法一:把参数传到?之后 使用注解RequestParam // 假如传值了current和limit /students?current1&limit20 RequestMapping(value "/students", method RequestMetho…...
中国商界杂志中国商界杂志社中国商界编辑部2023年第10期目录查询
要闻 我国旅游市场步入理性繁荣阶段 赵熠如; 10-11 产业 老国货品牌再迎高光时刻 能否留住流量 涂瀚文; 12-13《中国商界》投稿:cnqikantg126.com 金融集聚有力 促进长三角城市高质量发展 刘盛坤; 14-17 辽宁农贸市场亟待优化升级路径在哪儿&#x…...
记录 vue + vuetify + electron 安装过程
NodeJs 版本: 20 内容来自: Electron Vue.js Vuetify 构建跨平台应用_思月行云的博客-CSDN博客文章浏览阅读61次。Go coding!https://blog.csdn.net/kenkao/article/details/132600542 npm config set registry https://registry.npm.taobao.org np…...
短视频账号矩阵系统saas源码搭建/技术
一、短视频矩阵系统建模----技术api接口--获取用户授权 技术文档分享: 本系统采用MySQL数据库进行存储,数据库设计如下: 1.用户表(user): - 用户ID(user_id) - 用户名(…...
词向量模型Word2Vec
Word2Vec CBOW连续词袋模型例子CBOW模型的embeddings层CBOW模型的线性层 总结 skip-gram跳字模型例子Skip-Gram模型的结构 CBOW和skip-gram的目标都是迭代出词向量字典(嵌入矩阵)——embeddings CBOW连续词袋模型 根据上下文词汇预测目标词汇 例子 使…...
云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?
大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
rknn优化教程(二)
文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK,开始写第二篇的内容了。这篇博客主要能写一下: 如何给一些三方库按照xmake方式进行封装,供调用如何按…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
Spring是如何解决Bean的循环依赖:三级缓存机制
1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间互相持有对方引用,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...
SQL Server 触发器调用存储过程实现发送 HTTP 请求
文章目录 需求分析解决第 1 步:前置条件,启用 OLE 自动化方式 1:使用 SQL 实现启用 OLE 自动化方式 2:Sql Server 2005启动OLE自动化方式 3:Sql Server 2008启动OLE自动化第 2 步:创建存储过程第 3 步:创建触发器扩展 - 如何调试?第 1 步:登录 SQL Server 2008第 2 步…...
