当前位置: 首页 > news >正文

云技术基础学习(一)

内容预览 ≧∀≦ゞ

    • 声明
    • 导语
      • 云技术历史
    • 云服务概述
      • 云服务商与部署模式
        • 1. 公有云服务商
        • 2. 私有云部署
        • 3. 混合云模式
      • 云服务分类
        • 1. 基础设施即服务(IaaS)
        • 2. 平台即服务(PaaS)
        • 3. 软件即服务(SaaS)
    • 云架构
      • 云架构设计原则
      • 虚拟化与容器技术
        • 1. 虚拟化技术
        • 2. 容器技术
      • 容器与云技术的结合
      • 常见的容器技术
      • 容器化与微服务架构
    • 总结


声明

笔记内容参考了B站UP主 泷羽sec 的学习视频,如有侵权,将立即删除。
本笔记旨在促进网络安全学习,任何不当使用均与作者无关,请勿逾越法律红线,否则后果自负。
希望这些内容能对各位师傅有所帮助,欢迎您的点赞和评论!


导语

随着云计算技术的快速发展,越来越多的企业和组织将其核心业务和数据迁移到云平台。对于渗透测试人员和网络安全专家来说,理解云技术的底层架构、虚拟化和容器化等关键技术,不仅是提升攻击技能的基础,更是构建云环境安全防护体系的前提。云计算虽然为企业带来了灵活、高效的 IT 资源,但也带来了全新的安全挑战。从云服务的配置漏洞到多租户环境中的隔离问题,云环境中的攻击面与传统网络环境截然不同。因此,云安全作为一项新兴的安全领域,成为了网络安全工作者关注的重中之重。掌握云计算基础架构以及如何应对云环境中的各种安全威胁,将是每一位网络安全从业者必须面对的重要课题。

云技术历史

在云计算出现之前,构建 IT 系统通常需要购买硬件设备、租用数据中心机柜,并自行搭建基础设施。
随着处理器性能的提升,虚拟化技术的引入使得一台物理机器的资源能够分割成多个虚拟机,从而显著提高硬件资源的利用率。
紧接着,容器化技术的出现进一步优化了资源的使用效率,支持了更灵活、高效的应用部署方式,实现了计算、存储和网络的虚拟化交付。
如今,现代云基础设施不仅仅是单一技术的应用,而是虚拟化、容器化等多种技术的结合,形成了一个高效、弹性且可扩展的系统架构,满足了不断增长的业务需求和复杂的应用场景。

云服务概述

通常指的是云计算(Cloud Computing),这是一种通过互联网提供计算资源(包括服务器、存储、数据库、网络、软件等)的服务模式,它通过软件抽象化了计算、存储和网络资源的创建与管理,用户可以按需使用这些资源而无需关心底层硬件设施的细节。

云基础设施必须具备高度的稳定性、容错性和可扩展性,以满足不同规模和需求的企业与应用场景。

云服务商与部署模式

1. 公有云服务商

全球主要的公有云服务商包括:

  • AWS (Amazon Web Services):全球领先的云计算平台,提供广泛的基础设施、平台和软件服务。
  • Azure (Microsoft):微软的云计算平台,集成了众多企业级工具和服务,特别适合与微软产品生态系统结合使用。
  • GCP (Google Cloud Platform):Google 提供的云平台,强调大数据、机器学习和容器化服务的优势。

此外,国内的主要公有云服务商包括:

  • 华为云
  • 腾讯云
  • 阿里云
2. 私有云部署

企业可以选择在自有数据中心搭建私有云,完全控制云环境中的硬件、软件和数据,确保更高的安全性和合规性。私有云通常适用于对数据隐私和资源控制有较高要求的行业。

此外,使用 OpenStack 等开源工具,企业可以便捷地搭建和管理私有云平台,满足定制化的需求。

3. 混合云模式

混合云模式结合了公有云和私有云的优点,企业可以根据业务需求灵活地在两者之间进行资源调度。混合云提供了灵活的资源管理,同时确保了敏感数据和业务可以在私有云中运行,而其他非敏感工作负载则可以利用公有云的弹性扩展能力。

云服务分类

在互联网时代,很多企业和个人都使用云计算服务。云计算通过互联网提供计算能力、存储空间等资源,让我们可以随时随地访问和使用这些资源,而不需要购买和维护昂贵的硬件设备。云服务一般可以分为三种主要类型:IaaS、PaaS 和 SaaS。下面我们来一一解释它们。

1. 基础设施即服务(IaaS)

IaaS 是最基础的云服务类型,它提供了计算能力、存储空间和网络等资源。想象一下,你需要一台计算机来运行软件和存储数据,传统做法是购买并维护这台计算机,而使用 IaaS,你可以通过互联网租用这些资源。你可以选择需要的资源大小,按需付费,而且不需要担心设备故障或维护问题。

对于开发人员或企业来说,IaaS 让你能够在云端安装操作系统,运行应用程序,存储数据,甚至搭建自己的虚拟网络,完全掌控这些资源。而且,资源可以根据需求灵活增加或减少。

举例

  • AWS EC2:亚马逊提供的一项服务,让你可以在云端租用虚拟服务器。
  • Azure 虚拟机:微软的云服务平台,也提供类似的虚拟计算资源。
2. 平台即服务(PaaS)

PaaS 是在 IaaS 的基础上,给开发者提供了更多的帮助。除了计算资源、存储和网络外,PaaS 还提供了更高级的开发平台,比如操作系统、数据库、开发工具等。开发者可以直接在这些平台上开发、测试和部署应用,而不需要关心底层硬件和操作系统的管理。

你可以把 PaaS 想象成一个“开发工具包”,它为你提供了一切开发所需要的资源,你只需要专注于编写和调试你的应用程序,不用担心服务器、存储或数据库的管理。

举例

  • Heroku:一个流行的云平台,专门为开发者提供创建、运行应用程序的工具,支持多种编程语言。
  • Google App Engine:谷歌提供的服务,允许开发者构建和运行应用程序,而无需自己管理底层的硬件或系统。
3. 软件即服务(SaaS)

SaaS 是最简单、最接近最终用户的云服务类型。通过 SaaS,用户不需要安装任何软件,所有的功能都可以通过互联网直接访问。你只需要通过浏览器或客户端连接到互联网,直接使用软件。软件的维护、更新和安全性都由服务提供商负责,用户只需要专注于使用软件本身。

这就像你购买了一个服务,而不需要担心安装、升级或管理任何设备或软件。SaaS 适用于各种日常需求,比如办公软件、邮箱、客户管理系统等。

举例

  • Salesforce:一个广泛使用的客户关系管理(CRM)软件,帮助企业管理客户信息、销售机会等。
  • Office 365:微软的办公软件套件,包括 Word、Excel、PowerPoint 等,你可以通过互联网随时访问这些软件,不需要在电脑上安装。

➤ 这三种云服务的区别就像你在使用不同的工具来完成不同的任务:

  • IaaS 就像是你租了一块空地,你可以在上面搭建你自己的房子、安装设备,完全自由,但也需要自己管理。
  • PaaS 就像是你租了一套已经装修好的房子,里面有你开发应用所需要的工具,你可以直接开始工作,不用自己去买家具和设备。
  • SaaS 就像是你租用了一个已经完工的房子,里面已经有了所有的家具和设备,你只需要住进去,享受服务即可。

每种云服务都有它适合的使用场景,企业和个人可以根据需要选择最合适的服务,节省成本,提高效率。

云架构

云架构是现代云计算的核心组成部分,它包括计算、存储、网络等资源的管理和调度。一个合理的云架构能够确保系统的高效、稳定和安全地运行。云架构的基本组成部分主要包括:

  • 计算资源:虚拟机、容器、无服务器计算
  • 存储:对象存储、块存储、文件存储
  • 网络:虚拟网络、负载均衡、安全组等
  • 安全性:加密、身份认证、访问控制等

在设计云架构时,需遵循一些关键的设计原则,确保云环境的高可用性、弹性、可扩展性和容错性,同时关注成本效益。

云架构设计原则

  1. 高可用性:系统应该设计为可以抵抗故障和中断,确保业务连续性。
  2. 弹性:系统能够根据负载需求自动扩展或收缩资源。
  3. 可扩展性:支持随着业务需求的增长扩展计算、存储和网络资源。
  4. 容错性:系统能够在部分组件发生故障时继续正常运行。
  5. 成本效益:在确保性能和可靠性的前提下,通过合理规划资源使用,降低运营成本。

虚拟化与容器技术

虚拟化和容器化是构建现代云架构的两大关键技术,它们为资源的高效管理和应用的灵活部署提供了技术支持。

1. 虚拟化技术

虚拟化技术允许单一物理服务器分割成多个虚拟机(VM),每个虚拟机都可以运行独立的操作系统和应用程序。其主要优势包括:

  • 提高资源利用率:虚拟化使得一台物理服务器的资源得以多租户共享,从而最大化硬件资源的使用。
  • 灵活性和可扩展性:虚拟机可以根据需要随时增减,使资源管理更加灵活。
  • 隔离性:每个虚拟机独立运行,互不干扰,增加了系统的安全性和稳定性。
  • 简化管理:虚拟化使得硬件和操作系统管理更加简便,通过虚拟化平台可以快速迁移、备份和恢复虚拟机。
2. 容器技术

容器技术是云计算中的另一项革命性进展。与虚拟化相比,容器更加轻量级、资源利用更加高效。容器通过共享宿主机的操作系统内核来实现应用的隔离,使得应用在不同环境中保持一致性。容器的主要优势包括:

  • 轻量级:容器不需要完整的操作系统,因此启动更快,占用资源更少。
  • 快速启动:容器的启动速度比虚拟机更快,能够快速响应负载变化。
  • 高效的资源利用:多个容器可以共享宿主机的内核,因此可以在有限的硬件资源上运行更多实例。
  • 高度可移植性:容器封装了应用及其依赖,使得应用可以在任何支持容器的平台上运行,减少了环境不一致带来的问题。

容器技术和虚拟化技术互为补充,容器在提供高效资源管理的同时,也为开发和运维提供了更好的灵活性。

容器与云技术的结合

容器技术在云环境中的应用,特别是在微服务架构中,显得尤为重要。容器使得应用能够在云平台中快速部署和扩展,同时保持系统的高可用性和低延迟。云服务商提供的容器化平台(如 Kubernetes、Docker)使得企业能够高效管理大规模的容器集群。

常见的容器技术

  1. Docker:当前最流行的容器化平台,提供了便捷的容器化应用管理工具。Docker 使得开发者可以轻松创建、部署和管理容器化的应用。

  2. Kubernetes (K8s):容器编排工具,用于管理和自动化容器的部署、扩展和管理。Kubernetes 提供了负载均衡、自动化部署、弹性伸缩等功能,是现代云原生应用架构的重要组成部分。

  3. Podman:一个与 Docker 类似的容器管理工具,但它不依赖于守护进程,增强了安全性。

  4. OpenShift:基于 Kubernetes 的企业级容器平台,提供了增强的安全性、集成 CI/CD 流水线和应用管理功能。

容器化与微服务架构

容器化和微服务架构的结合,使得企业能够将传统的单体应用拆分为多个小而独立的服务,这些服务可以在容器中运行并通过 API 相互通信。微服务架构有以下优势:

  • 独立部署:每个微服务可以独立开发、测试和部署,降低了开发周期和运维成本。
  • 易于扩展:每个微服务都可以单独进行水平扩展,按需增加资源。
  • 容错性:服务之间的独立性增强了系统的容错能力,即使某个服务出现故障,其他服务仍能继续运行。

总结

云架构、虚拟化和容器化是现代云计算的核心组成部分。它们通过提供高效的资源管理和灵活的应用部署方式,支持了现代企业在云环境中快速发展和创新。随着云原生技术的不断演进,云架构将在未来继续发展,以适应不断变化的业务需求和技术挑战。理解和掌握这些技术,对于从事云安全、系统架构设计和 DevOps 的专业人士至关重要。

相关文章:

云技术基础学习(一)

内容预览 ≧∀≦ゞ 声明导语云技术历史 云服务概述云服务商与部署模式1. 公有云服务商2. 私有云部署3. 混合云模式 云服务分类1. 基础设施即服务(IaaS)2. 平台即服务(PaaS)3. 软件即服务(SaaS) 云架构云架构…...

【优选算法篇】微位至简,数之恢宏——解构 C++ 位运算中的理与美

文章目录 C 位运算详解:基础题解与思维分析前言第一章:位运算基础应用1.1 判断字符是否唯一(easy)解法(位图的思想)C 代码实现易错点提示时间复杂度和空间复杂度 1.2 丢失的数字(easy&#xff0…...

MFC工控项目实例二十九主对话框调用子对话框设定参数值

在主对话框调用子对话框设定参数值,使用theApp变量实现。 子对话框各参数变量 CString m_strTypeName; CString m_strBrand; CString m_strRemark; double m_edit_min; double m_edit_max; double m_edit_time2; double …...

Java | Leetcode Java题解之第546题移除盒子

题目: 题解: class Solution {int[][][] dp;public int removeBoxes(int[] boxes) {int length boxes.length;dp new int[length][length][length];return calculatePoints(boxes, 0, length - 1, 0);}public int calculatePoints(int[] boxes, int l…...

【前端】Svelte:响应性声明

Svelte 的响应性声明机制简化了动态更新 UI 的过程,让开发者不需要手动追踪数据变化。通过 $ 前缀与响应式声明语法,Svelte 能够自动追踪依赖关系,实现数据变化时的自动重新渲染。在本教程中,我们将详细探讨 Svelte 的响应性声明机…...

PostgreSQL 性能优化全方位指南:深度提升数据库效率

PostgreSQL 性能优化全方位指南:深度提升数据库效率 别忘了请点个赞收藏关注支持一下博主喵!!! 在现代互联网应用中,数据库性能优化是系统优化中至关重要的一环,尤其对于数据密集型和高并发的应用而言&am…...

Flutter鸿蒙next 使用 BLoC 模式进行状态管理详解

1. 引言 在 Flutter 中,随着应用规模的扩大,管理应用中的状态变得越来越复杂。为了处理这种复杂性,许多开发者选择使用不同的状态管理方案。其中,BLoC(Business Logic Component)模式作为一种流行的状态管…...

Gen-RecSys——一个通过生成和大规模语言模型发展起来的推荐系统

概述 生成模型的进步对推荐系统的发展产生了重大影响。传统的推荐系统是 “狭隘的专家”,只能捕捉特定领域内的用户偏好和项目特征,而现在生成模型增强了这些系统的功能,据报道,其性能优于传统方法。这些模型为推荐的概念和实施带…...

Android 重新定义一个广播修改系统时间,避免系统时间混乱

有时候,搞不懂为什么手机设备无法准确定义系统时间,出现混乱或显示与实际不符,需要重置或重新设定一次才行,也是真的够无语的!! vendor/mediatek/proprietary/packages/apps/MtkSettings/AndroidManifest.…...

第3章:角色扮演提示-Claude应用开发教程

更多教程,请访问claude应用开发教程 设置 运行以下设置单元以加载您的 API 密钥并建立 get_completion 辅助函数。 !pip install anthropic# Import pythons built-in regular expression library import re import anthropic# Retrieve the API_KEY & MODEL…...

【FAQ】HarmonyOS SDK 闭源开放能力 —Vision Kit

1.问题描述: 人脸活体检测页面会有声音提示,如何控制声音开关? 解决方案: 活体检测暂无声音控制开关,但可通过其他能力控制系统音量,从而控制音量。 活体检测页面固定音频流设置的是8(无障碍…...

【问题解决】Tomcat由低于8版本升级到高版本使用Tomcat自带连接池报错无法找到表空间的问题

问题复现 项目上历史项目为解决漏洞扫描从Tomcat 6.0升级到了9.0版本,服务启动的日志显示如下警告,数据源是通过JNDI方式在server.xml中配置的,控制台上狂刷无法找到表空间的错误(没截图) 报错: 06-Nov-…...

Git LFS

Git LFS(Git Large File Storage)是一个用于管理和版本控制大文件的工具,它扩展了 Git 的功能,帮助处理大文件或二进制文件的存储和管理问题。 为什么需要 Git LFS? Git 默认是针对文本文件进行优化的,尤…...

基于Redis缓存机制实现高并发接口调试

创建接口 这里使用的是阿里云提供的接口服务直接做的测试,接口地址 curl http://localhost:8080/initData?tokenAppWithRedis 这里主要通过参数cacheFirstfalse和true来区分是否走缓存,正常的业务机制可能是通过后台代码逻辑自行控制的,这…...

数字化转型实践:金蝶云星空与钉钉集成提升企业运营效率

数字化转型实践:金蝶云星空与钉钉集成提升企业运营效率 本文介绍了深圳一家电子设备制造企业在数字化转型过程中,如何通过金蝶云星空与钉钉的高效集成应对挑战、实施解决方案,并取得显著成果。集成项目在提高沟通效率、自动化审批流程和监控异…...

Flutter 鸿蒙next 中使用 MobX 进行状态管理

Flutter & 鸿蒙next 中使用 MobX 进行状态管理 在应用开发中,状态管理是一个至关重要的环节,特别是在复杂的Flutter或鸿蒙next项目中。状态的变化往往会影响UI的更新,因此,选择一种高效、灵活的状态管理工具显得尤为重要。Mo…...

1.62亿元!812个项目立项!上海市2024年度“科技创新行动计划”自然科学基金项目立项

本期精选SCI&EI ●IEEE 1区TOP 计算机类(含CCF); ●EI快刊:最快1周录用! 知网(CNKI)、谷歌学术期刊 ●7天录用-检索(100%录用),1周上线; 免费稿件评估 免费匹配期…...

Redis数据库测试和缓存穿透、雪崩、击穿

Redis数据库测试实验 实验要求 1.新建一张user表,在表内插入10000条数据。 2.①通过jdbc查询这10000条数据,记录查询时间。 ②通过redis查询这10000条数据,记录查询时间。 3.①再次查询这一万条数据,要求根据年龄进行排序&#…...

[vulnhub] DarkHole: 2

https://www.vulnhub.com/entry/darkhole-2,740/ 端口扫描主机发现 探测存活主机,185是靶机 # nmap -sP 192.168.75.0/24 Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-11-08 18:02 CST Nmap scan report for 192.168.75.1 Host is up (0.…...

《XGBoost算法的原理推导》12-2 t轮迭代中对样本i的预测值 公式解析

本文是将文章《XGBoost算法的原理推导》中的公式单独拿出来做一个详细的解析,便于初学者更好的理解。 好的,公式(12-2)表示的是 XGBoost 在第 t t t 轮迭代中对样本 i i i 的预测值。它说明了在第 t t t 轮迭代中,模型的预测是通过累加之前…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

数据链路层的主要功能是什么

数据链路层(OSI模型第2层)的核心功能是在相邻网络节点(如交换机、主机)间提供可靠的数据帧传输服务,主要职责包括: 🔑 核心功能详解: 帧封装与解封装 封装: 将网络层下发…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

Pinocchio 库详解及其在足式机器人上的应用

Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...

C++使用 new 来创建动态数组

问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...

CSS | transition 和 transform的用处和区别

省流总结: transform用于变换/变形,transition是动画控制器 transform 用来对元素进行变形,常见的操作如下,它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...

自然语言处理——文本分类

文本分类 传统机器学习方法文本表示向量空间模型 特征选择文档频率互信息信息增益(IG) 分类器设计贝叶斯理论:线性判别函数 文本分类性能评估P-R曲线ROC曲线 将文本文档或句子分类为预定义的类或类别, 有单标签多类别文本分类和多…...

[USACO23FEB] Bakery S

题目描述 Bessie 开了一家面包店! 在她的面包店里,Bessie 有一个烤箱,可以在 t C t_C tC​ 的时间内生产一块饼干或在 t M t_M tM​ 单位时间内生产一块松糕。 ( 1 ≤ t C , t M ≤ 10 9 ) (1 \le t_C,t_M \le 10^9) (1≤tC​,tM​≤109)。由于空间…...

C# winform教程(二)----checkbox

一、作用 提供一个用户选择或者不选的状态,这是一个可以多选的控件。 二、属性 其实功能大差不差,除了特殊的几个外,与button基本相同,所有说几个独有的 checkbox属性 名称内容含义appearance控件外观可以变成按钮形状checkali…...