# 弹性云服务器稳定性最佳实践
为了能够更加稳定、安全、可靠、灵活、高效的使用弹性云服务器，建议您购买弹性云服务器后执行以下最佳实践。
华为云弹性云服务器提供稳定运行的系统，但仍不可避免会产生突发硬件故障或系统异常。为了保证业务获得更高的稳定性，为您提供基于业务部署、监控通知、数据备份、安全防护和场景演练等提升稳定性的措施供您参考。
#### 业务部署
为了使ECS上部署的业务能够更加稳定、可靠的运行，请参考如下部署建议。
- [业务多节点部署]
  无论在线下机房还是云上，业务单节点运行并不具备高可靠性，任何故障场景都可能导致业务中断，给您的业务带来巨大影响。因此，建议您将重要业务分布部署在不同节点上运行。
  图1多节点部署   
  ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002143286488.png "点击放大")
  如[图1]所示，多节点分布部署或者主备部署（以数据库为例），可以避免单ECS故障带来的业务中断风险。
  业务部署时，还需要避免"假集群"模式的业务架构，即虽然是集群形态，但是每个节点只承担固定的业务，不具备业务负荷分担能力，防止出现单节点故障后，特定业务全部中断的情况。
  更多内容，请参见[搭建Keepalived Nginx高可用Web集群](https://support.huaweicloud.com/bestpractice-ecs/ecs_bp_0081.html)。
- [流量负载均衡部署]
  对于采用集群部署的业务，建议您使用弹性负载均衡，通过流量分发扩展应用系统对外的服务能力，同时通过消除单点故障提升应用系统的可用性。
  图2流量负载均衡部署   
  ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002143485782.png "点击放大")
  您还可以使用弹性负载均衡的健康检查功能，使流量只分发到后端正常工作的服务器，从而提升应用系统的可用性。
  更多内容，请参见[实现单个Web应用的负载均衡](https://support.huaweicloud.com/qs-elb/zh-cn_topic_0052569751.html)。
- [多可用区多活部署]
  对于采用多节点部署或者主备部署的业务节点，建议您在创建ECS时通过添加云服务器组实现多可用区多活部署，避免单物理宿主机故障引发的多业务节点同时故障的风险。
  图3多可用区多活部署   
  ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002143507260.png "点击放大")
  如[图3]所示，采用多可用区多活方式部署，可以最大限度避免单可用区故障带来的业务中断风险
  更多内容，请参见[管理云服务器组](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0150.html)。
- [资源弹性伸缩部署]
  对于用户访问量波动较大、并对成本有一定诉求的业务架构，建议您根据业务量调整动态扩容或减容ECS节点。
  您可以通过弹性伸缩服务设置伸缩规则来自动增加或缩减业务资源。弹性伸缩通常需要您对整体业务负载有明确的监控和负载均衡的使用。
  更多内容，请参见[使用弹性伸缩动态扩展云服务器资源](https://support.huaweicloud.com/qs-as/zh-cn_topic_0042038053.html)。
#### 访问与连接
为了确保弹性云服务器创建成功且状态正常，建议您第一次通过VNC方式远程登录弹性云服务器，若登录成功则表明弹性云服务器资源状态正常。
详细操作，请参见：
- [Windows弹性云服务器管理控制台远程登录（VNC方式）](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0127.html)
- [Linux弹性云服务器远程登录（VNC方式）](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0136.html)
之后，您就可以根据本地环境以及弹性云服务器是否绑定弹性公网IP，选择合适的登录方式，详细内容请参见[如何登录弹性云服务器？](https://support.huaweicloud.com/ecs_faq/ecs_faq_0632.html)。
![](https://support.huaweicloud.com/bestpractice-ecs/public_sys-resources/note_3.0-zh-cn.png)
如果您在登录过程中遇到问题，推荐您使用[ECS远程登录诊断工具](https://console.huaweicloud.com/ticket/?locale=zh-cn#/ticketindex/diagnoseHistory)进行问题的自助排查和定位。
#### 系统更新和配置
- 更新镜像源（Linux） 为了及时获取最新的系统更新和软件安装依赖，建议您在使用弹性云服务器之前更新镜像源。详细操作，请参见[如何使用华为云开源镜像配置yum源(x86_64和鲲鹏)？](https://support.huaweicloud.com/ecs_faq/zh-cn_topic_0118948562.html)
  

- 更新Windows补丁和驱动（Windows） 为了提高弹性云服务器的问题修复能力和性能，建议您定时更新Windows的补丁和驱动程序。
  您可以通过设置Windows自动更新，及时发现最新的补丁和驱动版本，提醒您进行更新。
  
- 配置开机自启动和数据持久化存放 ECS在开机、关机、重启或系统异常导致的重启后，可能出现部署在ECS上的业务程序不自动启动、仅加载在ECS内存中的数据丢失，从而影响业务正常使用。
  因此，建议您在业务部署完成，进行正式业务流程前，进行如下部署：
  1. 在ECS操作系统中配置业务程序开机自启动。
  
  2. 为ECS中的数据配置持久化存放。
  
  3. 重启ECS，观察业务进程是否自启动并成功运行。
   
- 固化磁盘盘符 在Linux系统ECS中，操作系统内核会在启动过程中按照扫描到硬盘的顺序分配盘符。当磁盘发生插拔操作或者操作系统扫描顺序变化时，ECS的磁盘盘符可能会发生变化，例如，从/dev/sdb变为/dev/sdc。
  磁盘盘符的变化会影响依赖盘符工作的应用程序的正常使用，为解决这个问题，建议采用UUID（universally unique identifier）替代/dev/vdx，UUID是Linux系统为磁盘分区提供的唯一的标识字符串。
  详细操作，请参见[初始化Linux数据盘（容量小于等于2TiB）](https://support.huaweicloud.com/usermanual-evs/evs_01_0033.html)。
  
 
#### 监控通知
监控是保持弹性云服务器可靠性、可用性和性能的重要部分。通过监控，用户可以观察弹性云服务器资源。为使用户更好地掌握自己的弹性云服务器运行状态，云服务平台提供了云监控。您可以使用该服务监控您的弹性云服务器，执行自动实时监控、告警和通知操作，帮助您更好地了解弹性云服务器的各项性能指标。
- 开启一键告警功能： 通过在云监控服务控制台为弹性云服务器开启"一键告警"功能，可以在HA发生（弹性云服务器所在的物理机出现故障，系统自动迁移弹性云服务器至正常的物理机）时，及时获得通知。
  详细操作，请参见[一键告警](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0171694487.html)。
  
- 安装监控Agent插件，实现带内监控： 通过在ECS中安装Agent插件，可以为您提供服务器的系统级、主动式、细颗粒度监控服务：
  - 支持操作系统和进程的精准监控，例如内存使用率（Linux）等指标。
  
  - 支持对直通设备的特定监控能。 超高I/O型（I系列、Ir系列）、磁盘增强型（D系列）等本地盘实例，裸金属实例以及GPU加速型实例中存在大量直通设备，建议您为这些实例安装安装Agent插件，确保对特殊设备的完整监控。
    
  
  
  详细内容，请参见[监控弹性云服务器](https://support.huaweicloud.com/usermanual-ecs/ecs_03_1001.html)。
  
 
#### 数据存储及备份
数据是业务的核心关键，弹性云服务器的数据存储在云硬盘EVS或本地盘实例的本地盘中。
- 云硬盘EVS数据存储
  - 三副本机制：云硬盘EVS提供数据多副本存储，能够最大限度避免降低系统软硬件故障场景导致的数据丢失风险，具备很强的高可靠性。对于数据可靠性要求比较高的场景，建议您选择支持三副本技术的云硬盘。详细内容，请参见[云硬盘三副本技术](https://support.huaweicloud.com/productdesc-evs/evs_01_0056.html)。
  
  - 备份与快照：云硬盘EVS的三副本机制无法阻止操作系统内部操作、应用异常、黑客攻击等行为对数据的读写操作，因此建议您通过备份或快照的方式，定期对EVS上的关键核心数据进行备份，以便于在关键时刻及时恢复数据，最大限度降低数据丢失对业务的影响。 云备份的相关内容，请参见[快速创建云硬盘备份](https://support.huaweicloud.com/qs-cbr/cbr_02_0029.html)。
    云硬盘快照的相关内容，请参见[云硬盘快照功能概述](https://support.huaweicloud.com/usermanual-evs/evs_01_0098.html)。
    
  
  - 存储安全 为了实现数据的存储安全性，建议您将操作系统和应用数据分别存储在系统盘和数据盘，一方面保证数据的安全，避免因系统故障导致用户数据丢失；另一方面可根据业务需要扩容或新增磁盘扩展存储容量。
    - 扩容磁盘：支持扩容系统盘和数据盘，建议您参考[扩容"正在使用"状态的云硬盘容量](https://support.huaweicloud.com/usermanual-evs/evs_01_0007.html)扩容磁盘容量。
    
    - 新增磁盘：支持新增数据盘，建议您[新增磁盘](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0181.html)，并完成[挂载磁盘](https://support.huaweicloud.com/usermanual-ecs/zh-cn_topic_0096293655.html)和[初始化数据盘](https://support.huaweicloud.com/usermanual-evs/evs_01_0038.html)后，才可以正常使用。
     
  
  - 数据加密 为了进一步保护数据的安全性，建议您使用加密的系统盘和数据盘。详细内容，请参见[管理加密云硬盘](https://support.huaweicloud.com/usermanual-evs/evs_01_0009.html)。
    
   
- 本地盘中数据存储： 本地盘部署在ECS所在宿主机上，提供本地存储访问能力，具有高存储IOPS、低时延、高吞吐量和高性价比等优势。由于本地盘只挂载于单台宿主机，因此其数据可靠性依赖宿主机的可靠性。如果出现宿主机异常、本地盘故障或实例重部署等情况，则本地盘数据会丢失。因此，请勿在本地盘上存储需要长期保存的业务数据。
  
 
#### 安全防护
云服务器没有设置相关的安全防护，可能受到病毒入侵或外部攻击，导致数据泄露或丢失，影响业务的正常运行。华为云提供了丰富的安全特性来提升云服务器的安全性，主要分为云服务器"外部安全防护"和"内部安全防护"。
表1提升云服务器安全的方法 
| 类型    | 说明                                                                                                       | 防护方法                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|
| 外部安全防护 | 互联网上的安全攻击行为时刻威胁着公有云上的业务，常见的DDoS攻击、木马或病毒的入侵都是常见的外部安全问题。针对这类问题有多种常见的防护方案，例如开启主机安全防护您可以根据您的实际业务选择合适的防护方案。 | - [开启主机安全](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0609.html)  - [配置云堡垒机](https://support.huaweicloud.com/usermanual-ecs/ecs_03_1609.html)  - [开启防DDoS攻击](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0610.html#section5)                            |
| 内部安全防护 | 弱密码、开放错误的端口可能引起内部安全防护问题，不提升云服务器的内部安全防护，外部安全防护方案就无法有效的拦截和阻断各种外部攻击。                                | - [增加登录密码的强度](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0610.html#section7)  - [提升云服务器的端口安全](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0610.html#section8)  - [定期升级操作系统](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0610.html#section7)   |
   
#### 计划事件
当宿主机发生突发故障时，我们会优先通过HA重部署的方式快速恢复业务，并通知到用户（需要提前配置HA事件通知）。
在日常运维中，华为云会对ECS实例所在底层宿主机的软硬件故障进行预测和主动规避。非突发故障场景下，为避免因ECS实例的资源可用性或性能受损对您的业务造成的更大影响，系统会对受影响的实例生成事件并进行上报，尽可能通知您进行业务迁移并在合适的时间段内授权完成相关运维操作。
![](https://support.huaweicloud.com/bestpractice-ecs/public_sys-resources/caution_3.0-zh-cn.png)
计划事件期间，宿主机已经存在风险，转变为突发故障的概率很高，您需要尽快完成授权操作，避免产生更大的业务受损风险。
计划事件的详情内容，请参见[事件概述](https://support.huaweicloud.com/usermanual-ecs/ecs_03_2302.html)。
#### 操作维护管理
- 敏感操作保护 为了保证账号及操作的安全性，建议您开启敏感操作保护功能，在控制台执行关机、重启、删除等敏感操作时，进行身份验证。该功能对账号以及账号下的用户都生效。
  详细内容，请参见[敏感操作保护](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0608.html)。
  
- 关键操作管理 为了能够对弹性云服务器的操作进行查询、审计和回溯，建议您开启云审计服务记录与之相关的操作事件。
  更多内容，请参见[云审计服务](https://support.huaweicloud.com/cts/index.html)。
  
- 日志管理 为了提高弹性云服务器和应用程序的可用性和性能，建议您通过云日志服务收集日志数据，通过对海量日志数据的分析和处理，实现实时决策分析、设备运维管理、用户业务趋势分析等能力。
  详细内容，请参见[云日志服务](https://support.huaweicloud.com/productdesc-lts/lts-03201.html)。
  
 
#### 场景演练
稳定的基础设施和良好业务部署架构是业务高可靠性的基础，必要的场景演练是用户上云过程重要的一步，强烈建议您在正式业务引流前，根据业务特点进行必要的故障场景演练，以确保您的业务能够在相关业务场景出现时，能够最大限度诊断相关故障是否对您业务的影响程度，并做出必要的调整。
基于基础设施和操作系统基础资源类的故障场景，建议您针对云服务器宕机，网络丢包/中断，CPU/负载冲高，内存利用率过高等场景进行演练。华为云提供了COC混沌演练的产品为用户提供一站式的自动化演练能力，覆盖从风险识别、应急预案管理、故障注入到复盘改进的端到端演练流程。
具体内容，请参见[混沌演练](https://support.huaweicloud.com/usermanual-coc/coc_um_07_01_01.html)。
