阿里云简介

阿里云

云服务器ECS

介绍

  • 云服务器(Elastic Compute Service,简称ECS)是阿里云提供的性能卓越、稳定可靠、弹性扩展的IaaS(Infrastructure as a Service)级别云计算服务

优势

  • 无需自建机房,无需采购以及配置硬件设施
  • 分钟级交付,快速部署,缩短应用上线周期
  • 快速接入部署在全球范围内的数据中心和BGP机房
  • 成本透明,按需使用,支持根据业务波动随时扩展和释放资源
  • 提供GPU和FPGA等异构计算服务器、弹性裸金属服务器以及通用的x86架构服务器
  • 支持通过内网访问其他阿里云服务,形成丰富的行业解决方案,降低公网流量成本
  • 提供虚拟防火墙、角色权限控制、内网隔离、防病毒攻击及流量监控等多重安全方案
  • 提供性能监控框架和主动运维体系
  • 提供行业通用标准API,提高易用性和适用性

产品架构

  • 实例

    • 等同于一台虚拟服务器,内含CPU、内存、操作系统、网络配置、磁盘等基础的计算组件
    • 实例的计算性能、内存性能和适用业务场景由实例规格决定,其具体性能指标包括实例vCPU核数、内存大小、网络性能等
  • 镜像

    • 提供实例的操作系统、初始化应用数据及预装的软件。操作系统支持多种Linux发行版和多种Windows Server版本
  • 块存储

    • 块设备类型产品,具备高性能和低时延的特性。提供基于分布式存储架构的云盘、共享块存储以及基于物理机本地存储的本地盘
  • 快照

    • 某一时间点一块云盘或共享块存储的数据状态文件。常用于数据备份、数据恢复和制作自定义镜像等
  • 安全组

    • 由同一地域内具有相同保护需求并相互信任的实例组成,是一种虚拟防火墙,用于设置实例的网络访问控制
  • 网络

    • 专有网络(Virtual Private Cloud)

      • 逻辑上彻底隔离的云上私有网络。您可以自行分配私网IP地址范围、配置路由表和网关等
    • 经典网络

      • 所有经典网络类型实例都建立在一个共用的基础网络上。由阿里云统一规划和管理网络配置

购买

  • 登录阿里云

    • www.aliyun.com
  • 选择合适的配置

    • 弹性计算 -> 云服务器ECS -> 立即购买 -> 选择合适的配置 -> 下一步
  • 配置网络

  • 系统配置

  • 确认订单

控制台

  • 首页右上角‘控制台’->左边菜单->云服务器RCS->实例与镜像->实例

安全组

  • 为了服务器安全, 我们可以给实例绑定安全组, 通常情况下创建的ECS实例默认绑定了系统默认安全组

  • 系统默认安全组

    • 入方向

      • 仅ICMP协议、SSH 22端口、RDP 3389端口的放行规则
    • 出方向

      • 允许所有访问
  • 自定义安全组

    • 初始

      • 出方向: 允许所有访问
      • 入方向: 拒绝所有访问
    • 自定义加入放行规则

远程连接

  • 使用xshell等远程连接工具, 通过公网IP来连接

部署服务

  • 与虚拟机操作 一致

绑定域名

  • 购买域名

    • 控制台->产品与服务->搜索’域名‘->域名与网站(万网)->域名注册
  • 域名解析

    • 控制台->域名服务->域名列表->解析->添加记录->填写(记录值:IP地址)->确认

云数据库RDS

介绍

  • 关系型数据库(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务
  • 基于阿里云分布式文件系统和SSD盘高性能存储,RDS支持多种数据库引擎,并且提供了容灾、备份、恢复、监控、迁移等方面的全套解决方案
  • RDS支持实例管理(创建、变更等)、备份恢复、日志审计、监控报警等

相关概念

  • 实例

    • 实例是虚拟化的数据库服务器。您可以在一个实例中创建和管理多个数据库
  • 地域

    • 地域是指物理的数据中心。一般情况下,RDS实例应该和ECS实例位于同一地域(内网访问)
  • 可用区

    • 可用区是指在某个地域内拥有独立电力和网络的物理区域。同一地域的不同可用区之间没有实质性区别
  • 数据库引擎

    • RDS支持多种数据库引擎,如MySQL、SQL Server、PostgreSQL、PPAS(Postgre Plus Advanced Server,高度兼容Oracle数据库)和MariaDB
  • 网络类型

    • 经典网络

    • 专有网络VPC(Virtual Private Cloud)

      • 阿里云上一种隔离的网络环境,安全性比经典网络更高
  • 产品系列

    • 分为基础版、高可用版和三节点企业版
  • 规格族

    • 分为通用型、独享型、独占物理机型。关于各个规格族的介绍,参见实例规格族
  • 存储类型

    • 分为SSD本地盘、SSD云盘和ESSD云盘。具体请参见存储类型

相关服务

  • ECS

    • ECS是云服务器,通过内网访问同一地域的RDS时,可实现RDS的最佳性能。ECS搭配RDS是典型的业务访问架构
  • Redis

    • Redis提供持久化的内存数据库服务。当业务访问量较大时,ECS 、RDS和Redis的组合可以支持更多的读请求,同时减少响应时间
  • MongoDB

    • 提供稳定可靠、弹性伸缩、完全兼容MongoDB协议的数据库服务。数据结构多样时,可以选择将结构化数据存储在RDS,将非结构化数据存储在MongoDB,满足业务的多样化存储需求
  • MaxCompute

    • 大数据计算服务MaxCompute(原名ODPS)是一种快速、完全托管的TB/PB级数据仓库解决方案,提供了完善的数据导入方案以及多种经典的分布式计算模型,能够快速地解决海量数据计算问题。通过数据集成服务,可将RDS数据导入MaxCompute,实现大规模的数据计算
  • DTS

    • 您可以使用数据传输服务DTS将本地数据库迁移到云上的RDS,以及实现RDS的异地容灾
  • OSS

    • 对象存储服务OSS是阿里云提供的海量、安全、低成本、高可靠的云存储服务

RDS MySQL数据库

  • 创建实例

    • 控制台->云服务器RDS版->创建实例->设置参数->确认购买

    • 参数

      • 计费方式、地域、类型、系列、存储类型、可用区、实例规格、存储空间
  • 设置白名单

    • 数据安全性->白名单设置->添加需要连接数据库的ECS-IP

    • 注意事项

      • 可以修改或清空默认的IP白名单,但是不能将其删除
      • 每个IP白名单分组最多添加1000个IP或IP段。当IP较多时,建议合并为IP段填入,例如192.168.1.0/24
      • 白名单可以让RDS实例得到高级别的访问安全保护,建议您定期维护白名单。设置白名单不会影响RDS实例的正常运行
      • 如果非同一地区的实例访问数据库需要申请外网地址
  • 创建帐号

    • 账号类型

      • 高权限账号

        • 只能创建一个,可以管理所有普通账号和数据库
      • 普通账号

        • 可以通过控制台、API或者SQL语句创建和管理
    • Super权限

      • 为了减少误操作对业务的影响,RDS MySQL不提供Super权限
      • 可以kill任何查询的连接
      • 可以使用修改全局变量的SET语句(可以随意改所有参数)
      • 可以使用CHANGE MASTER、PURGE MASTER LOGS命令
      • 可以对主机内文件进行操作
    • 创建帐号

      • 账号管理->数据库账号->账号类型->密码->创建
  • 创建数据库

    • 数据库管理->创建数据库->数据库名称->支持字符集->授权账号->创建
  • 连接MySQL数据库

    • 远程登录

    • 数据库地址

      • 数据库连接->内网地址

RDS MySQL的使用限制

  • 实例参数

    • 大部分实例参数可以使用控制台或API进行修改,同时出于安全和稳定性考虑,部分参数不支持修改,具体请参见使用控制台设置参数
  • 数据库root权限

    • 不提供root或者sa权限
  • 数据库备份

    • 可使用命令行或图形界面进行逻辑备份。仅限通过控制台或API进行物理备份
  • 数据库还原

    • 可使用命令行或图形界面进行逻辑数据还原。仅限通过控制台或API进行物理还原
  • MySQL存储引擎

    • 目前仅支持InnoDB引擎。出于性能和安全性考虑,建议尽量采用InnoDB存储引擎。不支持MyISAM引擎或Memory引擎
    • 由于MyISAM引擎的自身缺陷,存在数据丢失的风险。实例的MyISAM引擎表或Memory引擎表会自动转换为InnoDB引擎表
  • 数据库复制

    • RDS MySQL提供主备复制架构(除基础版),其中的备(slave)实例不对用户开放,用户应用不能直接访问
  • 实例重启

    • 必须通过控制台或API重启实例
  • 网络设置

    • 若5.5或5.6实例位于经典网络且开启了数据库代理,禁止在SNAT模式下开启net.ipv4.tcp_timestamps
  • 空间存储

    • 若存储空间使用率过高,为防止用户误操作导致数据丢失,将会锁定实例,具体原因及解决办法请参见文档MySQL 实例空间使用率过高的原因和解决方法
  • 监控报警

    • MySQL 5.7高可用云盘实例暂不支持报警功能

项目 ECS+RDS部署wordpress

  • 将wordpress包上传到ECS服务器上(略)

  • 在ECS上安装软件

    • yum install -y httpd php php-mysql
  • 解压授权

    • tar xf wordpress-4.5.3-zh_CN.tar.gz -C /var/www/html/
    • chown apache.apache /var/www/html/ -R
  • 在浏览器中安装wordpress

负载均衡SLB

介绍

  • 负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务。负载均衡可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性
  • 负载均衡通过设置虚拟服务地址,将添加的同一地域的多台ECS实例虚拟成一个高性能、高可用的后端服务池,并根据转发规则,将来自客户端的请求分发给后端服务器池中的ECS实例
  • 负载均衡默认检查云服务器池中的ECS实例的健康状态,自动隔离异常状态的ECS实例,消除了单台ECS实例的单点故障,提高了应用的整体服务能力。此外,负载均衡还具备抗DDoS攻击的能力,增强了应用服务的防护能力

组成部分

  • 负载均衡实例(Server Load Balancer instances)

    • 一个负载均衡实例是一个运行的负载均衡服务,用来接收流量并将其分配给后端服务器。要使用负载均衡服务,您必须创建一个负载均衡实例,并至少添加一个监听和两台ECS实例
  • 监听(Listeners)

    • 监听用来检查客户端请求并将请求转发给后端服务器。监听也会对后端服务器进行健康检查
  • 后端服务器(Backend Servers)

    • 一组接收前端请求的ECS实例。您可以单独添加ECS实例到后端服务器池,也可以通过虚拟服务器组或主备服务器组来批量添加和管理

优势

  • 高可用

    • 采用全冗余设计,无单点,支持同城容灾。搭配DNS可实现跨地域容灾,可用性高达99.95%
  • 根据应用负载进行弹性扩容,在流量波动情况下不中断对外服务

  • 可扩展

    • 您可以根据业务的需要,随时增加或减少后端服务器的数量,扩展应用的服务能力
  • 低成本

    • 与传统硬件负载均衡系统高投入相比,成本可下降60%
  • 安全

    • 结合云盾,可提供5Gbps的防DDoS攻击能力
  • 高并发

    • 集群支持亿级并发连接,单实例提供千万级并发能力

项目

  • 通过阿里云SLB实现多台ECS负载均衡

  • 创建两台阿里云ECS实例

  • 配置安全组, 打开80端口

  • 连接ECS, 部署应用

    • 在两台ECS上各创建一个静态网页
  • 测试应用

    • 在浏览器上分别访问两台ECS的公网IP地址, 验证是否能够正常访问
  • 创建负载均衡SLB实例

    • 控制台->负载均衡->创建负载均衡->配置实例->立即购买
  • 配置负载均衡实例

    • 进入 管理控制台后点击"实例管理"进入实例列表

    • 添加监听规则

      • 监听配置向导->监听端口->调度算法(默认加权轮询)->下一步
    • 配置后端服务器组

      • 选择虚拟服务器组->新建->自定义名称->添加ECS->填写后端服务器端口->配置健康检测->提交
  • 验证负载均衡效果

    • 返回实例列表, 当健康检查状态为正常时就可以访问测试了
    • 使用任意一台服务器, 使用curl命令