企业运维训练营之数据库原理与实践— RDS基础概念介绍—RDS基础概念介绍(中)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 企业运维训练营之数据库原理与实践— RDS基础概念介绍—RDS基础概念介绍(中)

接上篇:https://developer.aliyun.com/article/1225652?spm=a2c6h.13148508.setting.14.187d4f0efY6Nsuimage.png

 

云RDS数据库存储经历了从本地SSD盘到SSD云盘到ESSD云盘的发展历程。 ESSD云盘又经历了PL1、PL2、PL3的迭代,性能越来越好。未来,我们也在计划实现PL-X系列,能够做到与本地盘的IO延迟基本持平。

 

今年下半年,我们已经在推动SSD云盘下线,建议用户将SSD云盘的实例主动升级到ESC云盘,因为SSD云盘不支持在线扩容。

 

本地SSD盘的磁盘与数据库引擎部署在同一节点的同一台主机上。在所有存储类型中,其IO延迟最低,性能最好。做变配存储资源不足时,需要进行跨机迁移,迁移时间与存储大小相关。存储使用量越大,跨机迁移时间越长。而如果本地有资源,则变配耗时相对较短。如果不知道此次变配是本机变配还是跨机变配,可以提供工单咨询确认。

 

SSD云盘和ESSD云盘均采用分布式存储架构的弹性块存储设备,实现了计算节点与存储分离的架构,但会导致IO延迟增加。而ESSD云盘PL-X能够支持RDS、MySQL、PG与MariaDB在线升级、秒级扩容,SQL Server可低至分钟级,对业务无感。

 

本地盘增加只读实例时,需要拷贝全量数据,再追加增量的Binlog,所需时间较久。而在ESSD云盘上,增加一个只读节点仅需半个小时以内,相对于本地盘的时间大幅节省。备份方面,云盘只能做快照备份,无法下载快照备份文件,但可以下载物理备份文件用于本地恢复。

 

image.png

 

数据库存储着一个公司的核心数据,因此数据库安全至关重要。维护数据库安全可以分为事前防御与事后审计。

 

事前防御方面,首先,我们提供了数据库账号密码的防护。RDS数据库上的账号分为高权账号与普通账号。高权账号只能通过控制台或API的方式创建,它并不是普通数据库上的最高权限账号,比如,它并不等同于MySQL上的root@localhost。云上数据库的高权账号可以断开其他任意非内置账号的数据库连接或可以创建其他普通账号并对其授权。

 

但是在业务管控上建议仅将高权账号授予某一个人或某一个组管理,不应让过多人使用高权账号。比如实际业务上不建议使用高权账号,而是应创建普通账号,合理授权,按照最小化授权的方式使用。

 

白名单安全组定义了哪些IP或安全组内的ECS可以访问RDS,即定义了访问源。注意,需要避免白名单与安全组开放过大,导致变相地将RDS暴露在过多的客户端面前,造成安全隐患。比如在生产上,不建议将白名单设置为0.0.0.0/0,会造成访问没有限制。

 

在一些场景中比如ECS被黑,可能通过抓包分析程序所用的连接数据库的账号,分析数据库相关的SQL,通过这些特征提取导致数据库账号被暴力破解,或通过SQL注入的方式危害数据库的安全。通过SSL加密连接,可以保证程序到RDS之间的链路安全。但是需要注意开通SSL加密会造成RDS CPU资源开销的增加,而且需要定期更新证书。

 

在存储加密上,对云盘的实例可以使用SSD云盘存储加密,本地盘的实例可以开启TDE实现表级别的加密。存储加密可以保证即使数据备份泄露,他人也无法解密,保护了数据安全。

 

阿里云账号分为主账号与子账号,在管理云上数据库资源或其他资源时,主账号拥有全部账号的权限。保护好主账号后,可以在子账号上利用RAM授权,使特定的人管理特定的资源。比如DBA团队可以创建子账号,授予其管理RDS的权限等。

 

事后审计方面,云RDS数据库提供了SQL洞察日志的审计、云监控告警、控制台操作审计与日志管理的功能。SQL洞察可以审计所有SQL操作记录,适用于需要追溯SQL执行情况的场景,执行成功和失败的SQL都会被记录。但是需要注意当RDS实例本身出现了OOM或踩到bug发生crash,导致MySQL进程或PG进程异常退出,此时SQL还未来得及写入审计日志,因此该类SQL很可能不会被记录。

 

通过云监控告警,可以在CPU打满或发生HA时收到相关告警信息,及时介入。控制台操作审计主要审计控制台上的操作记录,针对主账号和子账号在控制台的操作信息。开通子账号时,如果为其分配了AK,则需要合理管控子账号。有些客户可能会将AK用于自动化的管理工作,将相关的代码上传到比如Git hub上,可能会被别有用心的人扫描到代码里使用的AK,导致AK泄露之后出现比如实例被删的情况。

 

在日志管理方面,云RDS数据库提供了比如错误日志、慢日志、SQL洞察日志、主备切换日志等能够了解实例运行情况的日志,帮助管理数据库。

 

image.png

 

云RDS数据库整体架构主要分为两条线。

 

其一,应用程序通过域名进行访问。

 

其二,通过WEB控制台或API接口发送指令给RDS完成相关操作。请求发送给后端消息中心,再发送给对应模块,对应模块获取到相关信息之后返回给客户端调用方。比如要通过控制台或API查看慢日志,将API请求发送给消息中心之后,消息中心会从日志系统里捞取相关时间段的日志信息,返回给客户端。

 

HA探测系统会定期探测后端部署在节点上实例的可用性。发现不可用或网络不可达且连续多次探测均如此时,就会下发相应的任务完成HA切换。在MySQL库下面的HA HealthCheck表会定期(一般为15s)往表里写入一条数据,探测数据库是否可写,如果不可写,则进行切换。如果个某节点的物理主机宕机或提交了大事务导致HA探测的语句无法完成binlog落盘,也会导致HA切换。因此,一般在生产业务中要避免大事务的操作。

 

在线迁移系统会定期检测,比如有一主一备两个实例,当备节点不可用时,会发起在线迁移,始终保证系统有一主一备两个实例能够提供高可用的能力。变配也是通过在线迁移系统完成。

 

备份系统会按照每个实例设置的备份频率,定期备份实例的数据。无论是快照备份还是物理备份,一般首先会选择备节点做备份。如果备节点主从延迟很大,则会选择主节点完成备份。

 

进行RDS MySQL备份往往在业务低峰期 ,而此时可能会同时进行运维操作,例如执行DDL变更操作可能会导致备份失败。因此,如果发现备份失败,可以主动尝试发起临时备份任务,以保证当天的备份成功。后续如果需要做快速恢复时,可以寻找最近时间点的备份文件。

 

通过以上一整套系统,可以保证RDS数据库的稳定性与安全性。

 

image.png

 

云数据库RDS的概览页面如上图所示,包含了该账号下RDS实例个数、即将过期个数以及已过期个数、每个地域上有哪些实例。页面上方为消息通知,右侧展示了繁忙实例、空闲实例以及近期重大功能发布。

 

image.png

 

上图为实例列表页面。如果遇到问题,可以将实例ID复制粘贴,提交相关工单反馈进行问题排查。

 

点击实例名称可进入实例详情页面。

 

image.png

 

上图为实例详情页面。

接下篇:https://developer.aliyun.com/article/1225649?spm=a2c6h.13148508.setting.16.187d4f0efY6Nsu

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
7天前
|
运维 监控
构建高效运维体系:从理论到实践
在当今快速发展的信息化时代,高效的运维体系是保障企业信息系统稳定运行的关键。本文旨在探讨如何构建一个高效、可靠的运维体系,通过分析当前运维面临的挑战,提出相应的解决策略,并结合实际案例,展示这些策略的实施效果。文章首先介绍了高效运维的重要性,接着分析了运维过程中常见的问题,然后详细阐述了构建高效运维体系的策略和步骤,最后通过一个实际案例来验证这些策略的有效性。
|
7天前
|
机器学习/深度学习 数据采集 人工智能
智能运维:从自动化到AIOps的演进与实践####
本文探讨了智能运维(AIOps)的兴起背景、核心组件及其在现代IT运维中的应用。通过对比传统运维模式,阐述了AIOps如何利用机器学习、大数据分析等技术,实现故障预测、根因分析、自动化修复等功能,从而提升系统稳定性和运维效率。文章还深入分析了实施AIOps面临的挑战与解决方案,并展望了其未来发展趋势。 ####
|
10天前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
28 3
|
9天前
|
存储 监控 关系型数据库
MySQL自增ID耗尽解决方案:应对策略与实践技巧
在MySQL数据库中,自增ID(AUTO_INCREMENT)是一种特殊的属性,用于自动为新插入的行生成唯一的标识符。然而,当自增ID达到其最大值时,会发生什么?又该如何解决?本文将探讨MySQL自增ID耗尽的问题,并提供一些实用的解决方案。
16 1
|
15天前
|
人工智能 运维 监控
构建高效运维体系:理论与实践的深度融合####
本文旨在探讨高效IT运维体系的构建策略,通过理论框架与实际案例并重的方式,深入剖析了现代企业面临的运维挑战。文章开篇概述了当前运维领域的新趋势,包括自动化、智能化及DevOps文化的兴起,随后详细阐述了如何将这些先进理念融入日常运维管理中,形成一套既灵活又稳定的运维机制。特别地,文中强调了数据驱动决策的重要性,以及在快速迭代的技术环境中保持持续学习与适应的必要性。最终,通过对比分析几个典型企业的运维转型实例,提炼出可复制的成功模式,为读者提供具有实操性的指导建议。 ####
|
13天前
|
运维 负载均衡 Ubuntu
自动化运维的利器:Ansible入门与实践
【10月更文挑战第31天】在当今快速发展的信息技术时代,高效的运维管理成为企业稳定运行的关键。本文将引导读者了解自动化运维工具Ansible的基础概念、安装步骤、基本使用,以及如何通过实际案例掌握其核心功能,从而提升工作效率和系统稳定性。
|
15天前
|
运维 资源调度 监控
提升运维效率的关键技术与实践
在当今快速发展的信息技术时代,运维工作面临着前所未有的挑战和机遇。本文旨在探讨如何通过采用先进的技术和实施最佳实践来提高IT运维的效率和效果。我们将深入分析自动化工具、监控策略、灾难恢复计划以及持续集成/持续部署(CI/CD)等关键领域,展示它们如何协同工作以优化运维流程。此外,文章还将提供一些实际案例研究,帮助读者更好地理解这些概念的应用。无论是对于初创公司还是大型企业,掌握这些技术都将是提升竞争力的关键。
|
3月前
|
关系型数据库 MySQL 数据库
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
|
3月前
|
SQL 关系型数据库 数据库
数据库空间之谜:彻底解决RDS for SQL Server的空间难题
【8月更文挑战第16天】在管理阿里云RDS for SQL Server时,合理排查与解决空间问题是确保数据库性能稳定的关键。常见问题包括数据文件增长、日志文件膨胀及索引碎片累积。利用SQL Server的动态管理视图(DMV)可有效监测文件使用情况、日志空间及索引碎片化程度。例如,使用`sp_spaceused`检查文件使用量,`sys.dm_db_log_space_usage`监控日志空间,`sys.dm_db_index_physical_stats`识别索引碎片。同时,合理的备份策略和文件组设置也有助于优化空间使用,确保数据库高效运行。
81 2
|
3月前
|
关系型数据库 数据库 数据安全/隐私保护
"告别繁琐!Python大神揭秘:如何一键定制阿里云RDS备份策略,让数据安全与效率并肩飞,轻松玩转云端数据库!"
【8月更文挑战第14天】在云计算时代,数据库安全至关重要。阿里云RDS提供自动备份,但标准策略难以适应所有场景。传统手动备份灵活性差、管理成本高且恢复效率低。本文对比手动备份,介绍使用Python自定义阿里云RDS备份策略的方法,实现动态调整备份频率、集中管理和智能决策,提升备份效率与数据安全性。示例代码演示如何创建自动备份任务。通过自动化与智能化备份管理,支持企业数字化转型。
94 2

推荐镜像

更多