云服务器内容精选

  • 验证CloudPond和用户本地系统之间的网络连通性 以windows弹性云服务器为例进行说明: 在CloudPond边缘可用区新建一台弹性 云服务器ECS 03(加入VPC01,选择子网网段10.0.3.0/24)。 参数“可用区”选择“边缘可用区”,其余操作和在华为云区域通用可用区的方法完全一致。 方法请参见自定义购买弹性云服务器。 将E CS 03所在的安全组放通“入方向”的“ICMP”规则,出方向默认全部放通。详见安全组配置规则。 服务器列表页面查询到ECS03,从“IP地址”列获取并记录其私有IP地址(如10.0.3.110)。 登录本地系统服务器Server01,执行到弹性云服务器ECS03的ping命令,验证Server01和ECS03的网络连通性。 ping 10.0.3.110 检查ping命令返回结果,可以ping通表示网络可连通。如果ping不通请排查原因并联系华为云运维团队处理。
  • 操作场景 根据实际业务的需要,用户可以通过CloudPond内部的本地网关打通小站和本地系统之间的网络,达到内部网络互访的效果。 您首先需要为本地网关路由表关联VPC,然后为其添加到本地网络的路由信息。配置完成后,通过测试边缘可用区的弹性云服务器和用户本地系统中的服务器之间的网络是否连通,来验证CloudPond和用户本地系统之间的网络连通性。 请参考概述了解CloudPond网络连接的总体数据规划,此外,您可以参考组网方案和要求全面详细了解CloudPond的网络连接要求。
  • 验证通用可用区和用户本地系统之间的网络连通性 当配置了通用可用区和用户本地系统之间的路由信息时,即在表1中的“目的地址”参数填写为虚拟私有云的大网段,或者又单独新增了对应子网网段的路由信息,您可以在本地系统通过VPC内网访问通用可用区的云服务。 以windows弹性云服务器为例进行说明: 在CloudPond通用可用区新建一台弹性云服务器ECS01(加入VPC01,选择子网网段10.0.0.0/16)。 参数“可用区”选择“通用可用区”。 方法请参见自定义购买弹性云服务器。 将ECS01所在的安全组放通“入方向”的“ICMP”规则,出方向默认全部放通。详见安全组配置规则。 在弹性云服务器列表页面查询到ECS01,从“IP地址”列获取并记录其私有IP地址(如10.0.1.110)。 登录本地系统服务器Server01,执行到弹性云服务器ECS01的ping命令,验证Server01和ECS01的网络连通性。 ping 10.0.1.110 检查ping命令返回结果,可以ping通表示网络可连通。如果ping不通请排查原因并联系华为云运维团队处理。
  • 资源和成本规划 该解决方案主要部署如下资源,每月花费如表1所示,具体请参见华为云官网价格详情,实际收费以账单为准: 表1 资源和成本规划 产品 配置示例 成本预估/月 虚拟专用网络 按需计费:VPN网关带宽费用20.075元/小时+VPN连接费用0.36元/小时,更多计费详情请参见价格详情。 区域:中国-香港 计费模式:按需计费 计费方式:按带宽计费 带宽大小:100 Mbit/s 14713.2元 云连接 按月计费:86000元/月,更多计费详情请参见价格详情。 计费模式:包年/包月 计费方式:按带宽计费 互通类型:跨大区互通 互通大区:中国大陆 - 亚太 带宽:100 Mbit/s 86000元 合计 — 100713.2元 父主题: 通过VPN和云连接构建跨境网络连接
  • 公网连接Redis 3.0 在进行公网访问时,请先仔细阅读公网连接章节,检查实例是否满足公网访问的要求。 连接时提示:Error: Connection reset by peer或者出现:远程主机强迫关闭一个现有的连接。 原因1:安全组没有配置正确。 解决方法:需要允许Redis实例被访问,具体配置操作和公网连接操作,请按照公网连接章节中的操作进行。 原因2:查看Redis所在vpc子网是否被ACL关联,同时这个ACL出方向被限制了。若是,放开限制。 原因3:开启了SSL加密传输,连接时没有安装配置Stunnel,直接使用了界面提示的IP地址进行连接。 解决方法:开启SSL加密时,必须安装配置Stunnel客户端,具体操作,请按照公网连接Redis实例(开启SSL加密)执行。其中,请注意,在连接Redis实例命令中,IP地址需要配置为Stunnel客户端地址和端口,不要使用控制台展示的Redis实例公网连接地址和端口。 已经开启了公网访问的Redis实例,公网访问被关闭了,无法使用公网访问。 原因:该Redis实例绑定的弹性公网IP被解绑,导致Redis实例公网被关闭。 解决方法:在控制台重新开启实例的公网访问,绑定弹性公网IP,并重新连接。
  • 客户端连接问题 在使用Redis-cli连接Cluster集群时,连接失败。 解决方法:请检查连接命令是否加上-c,在连接Cluster集群节点时务必使用正确连接命令。 Cluster集群连接命令: ./redis-cli -h {dcs_instance_address} -p 6379 -a {password} -c 单机、主备、Proxy集群连接命令: ./redis-cli -h {dcs_instance_address} -p 6379 -a {password} 具体连接操作,请参考Redis-cli连接。 出现Read timed out或Could not get a resource from the pool。 解决方法: 排查是否使用了keys命令,keys命令会消耗大量资源,造成Redis阻塞。建议使用scan命令替代,且避免频繁执行。 排查实例是否是Redis 3.0,Redis 3.0底层用的是sata盘,当Redis数据持久化即AOF时,会触发偶现的磁盘性能问题,导致连接异常,可更换Redis实例为4.0及以上版本,其底层是ssd盘,磁盘性能更高,或若不需要持久化可关闭AOF。 出现unexpected end of stream错误,导致业务异常。 解决方法: Jedis连接池调优,建议参考Jedis参数配置建议进行配置连接池参数。 排查是否大key较多,建议根据优化大key排查优化。 连接断开。 解决方法: 调整应用超时时间。 优化业务,避免出现慢查询。 建议使用scan命令替代keys命令。 Jedis连接池问题,请参考使用Jedis连接池报错如何处理?。
  • 性能问题导致连接超时 使用了keys等消耗资源的命令,导致CPU使用率超高;或者实例没有设置过期时间、没有清除已过期的Key,导致存储的数据过多,一直在内存中,内存使用率过高等,这些都容易出现访问缓慢、连接不上等情况。 建议客户改成scan命令或者禁用keys命令。 查看监控指标,并配置对应的告警。监控项和配置告警步骤,可查看必须配置的监控告警。 例如,可以通过监控指标“内存利用率”和“已用内存”查看实例内存使用情况、“活跃的客户端数量”查看实例连接数是否达到上限等。 检查实例是否存在大Key和热Key。 DCS控制台提供了大Key和热Key的分析功能,具体使用,请参考分析Redis实例的大Key和热Key。
  • 带宽超限导致连接问题 当实例已使用带宽达到实例规格最大带宽,可能会导致部分Redis连接超时现象。 您可以查看监控指标“流控次数”,统计周期内被流控的次数,确认带宽是否已经达到上限。 然后,检查实例是否有大Key和热Key,如果存在大Key或者单个Key负载过大,容易造成对于单个Key的操作占用带宽资源过高。大Key和热Key操作,请参考分析实例大Key和热Key。 Redis 4.0及之后版本的实例,支持通过控制台对Redis实例进行带宽扩容,可用于解决带宽超限的问题。
  • Redis和ECS之间的连接问题 客户端所在的ECS必须和Redis实例在同一个VPC内,并且需要确保ECS和Redis之间可以正常连接。 如果是Redis 3.0或Redis 6.0企业版实例,Redis和ECS的安全组没有配置正确,连接失败。 解决方法:配置ECS和Redis实例所在安全组规则,允许Redis实例被访问。具体配置,可以参考配置安全组。 如果是Redis 4.0及以上基础版实例,开启了白名单功能,连接失败。 如果实例开启了白名单,在使用客户端连接时,需要确保客户端IP是否在白名单内,如果不在白名单,会出现连接失败。具体配置操作,可以参考配置白名单。客户端IP如果有变化,需要将变化后的IP加入白名单。 Redis实例和ECS不在同一个Region。 解决方法:不支持跨Region访问,可以在ECS所在的Region创建Redis实例,创建时注意选择与ECS相同VPC,创建之后,使用数据迁移进行迁移,将原有Redis实例数据迁移到新实例中。 Redis实例和ECS不在同一个VPC。 不同的VPC,网络是不相通的,不在同一VPC下的ECS是无法访问Redis实例。可以通过创建VPC对等连接,将两个VPC的网络打通,实现跨VPC访问Redis实例。 关于创建和使用VPC对等连接,请参考VPC对等连接说明。
  • DCS实例支持公网访问吗? Redis 3.0实例 目前只有Redis 3.0版本密码模式的实例支持公网访问,且可选择是否通过SSL方式来访问DCS缓存实例。建议使用前先下载CA证书,并使用CA证书来验证DCS缓存实例的证书,以确保缓存数据的安全。具体可参考公网连接Redis实例。 Redis 4.0及以上版本实例 Redis 4.0及以上版本的实例,暂不支持直接绑定公网,开启密码访问模式的单机、主备、读写分离、Proxy集群实例支持通过ELB实现公网访问,开启公网访问的操作,请参考开启Redis公网访问并获取公网访问地址。 Cluster集群实例不支持公网访问。 Memcached实例 暂不支持公网访问,您必须通过同一虚拟私有云下的弹性云服务器来访问缓存实例,以确保缓存数据的安全。如果您在应用开发调试阶段,可以通过ssh代理方式,实现本地环境访问实例。具体操作参考使用SSH隧道代理机制实现公网访问DCS实例。 父主题: 客户端和网络连接
  • 前提条件 准备弹性负载均衡ELB,创建ELB的操作,请参考创建独享型负载均衡器。创建的ELB必须符合以下条件。如果已有符合条件的ELB,无需重复创建。 ELB的实例类型必须选择“独享型”,且必须开启“IP类型后端(跨VPC后端)”。 ELB的规格中必须包含“网络型(TCP/UDP)”。 ELB必须选择与Redis实例相同的VPC。 ELB必须绑定弹性公网IP(EIP)。 ELB必须有可用的端口。 单个ELB挂载多个实例时,Redis的性能会受限于ELB的规格。 为保护Redis实例的网络安全性,Redis实例必须配置访问密码,免密访问的实例不支持开启公网访问。如需修改免密访问的实例为密码访问,请参考重置缓存实例密码。
  • 开启公网访问并获取公网访问地址 登录分布式缓存服务管理控制台。 在管理控制台左上角单击,选择实例所在的区域。 单击左侧菜单栏的“缓存管理”,进入缓存管理页面。 单击需要开启公网访问的实例名称,进入该实例的基本信息页面。 单击“公网访问”后的“开启”。 在开启公网访问弹窗中勾选需要绑定的ELB,单击“确定”。 如果没有可选的ELB,单击页面提示的“弹性负载均衡”跳转链接,可前往ELB控制台页面进行创建。如果已经创建了ELB,未在ELB选择列表中,请参考前提条件中的说明排查ELB是否符合绑定条件。 Redis实例绑定ELB期间,请勿删除绑定的ELB和监听器,并保证ELB可用,否则会影响Redis的正常公网连接。 如果需要删除ELB实例,请先在Redis实例详情页面解除绑定(关闭公网连接),再在ELB控制台删除ELB实例。 图1 绑定ELB 开启公网公网状态显示“成功”后,表示开启公网访问成功。 单击左侧菜单栏的“概览”,返回实例基本信息页面查看公网访问信息。如需关闭公网访问,单击“关闭”。 下图中的“EIP”地址为Redis实例的公网访问地址,“监听器”后的端口号为公网访问的端口。 图2 公网访问连接地址 主备实例开启公网访问后,会生成两个监听器。一个主节点监听器(以listener-master开头)和一个备节点监听器(以listener-slave开头),分别用于监听实例的主节点和备节点。公网连接主备实例时请使用主监听器后的端口用于连接主备实例的主节点。仅当需要配置主备实例读写分离时,需要同时使用主、备监听器端口,分别连接主、备节点。 图3 主备实例公网连接地址 连接信息中的“连接地址”及“IP地址”为相同VPC内客户端访问Redis时的“ 域名 地址:端口”和“IP地址:端口”。
  • 配置ELB内网IP到Redis实例IP白名单(可选) 如果Redis开启了IP白名单,需要将ELB内网IP地址添加到Redis实例的IP白名单中,以确保ELB可以访问Redis实例: 单击“公网访问”中ELB后的链接,跳转到负载均衡器页面。 复制页面中的ELB“ID”。 单击页面中“IPv4私有地址”后的地址,跳转到对应子网页面。 选择“IP地址管理”页签,在第二个搜索框中筛选资源ID(已复制的ELB ID),获取ELB内网IP地址。 将ELB的全部内网IP地址添加到Redis的IP白名单中,添加方式请参考配置Redis访问白名单。
  • 连接RocketMQ网络要求 客户端可以通过公网连接RocketMQ实例,也可以通过内网连接RocketMQ实例。使用内网连接时,注意以下几点: 如果客户端和RocketMQ实例部署在同一个VPC内,网络默认互通。 如果客户端和RocketMQ实例部署在不同VPC中,由于VPC之间逻辑隔离,客户端和RocketMQ实例不能直接通信,需要打通VPC之间的网络。 客户端连接RocketMQ实例的方式如表1所示。 表1 连接方式说明 连接方式 实现方式 参考文档 公网连接 在RocketMQ控制台开启公网访问,配置弹性公网IP,客户端通过弹性公网IP访问RocketMQ实例。 配置RocketMQ实例的公网访问 内网连接 客户端和RocketMQ实例部署在同一个VPC中,此时网络默认互通。 - 客户端和RocketMQ实例部署在同一个Region的不同VPC中,利用VPC对等连接将两个VPC间的网络打通,实现跨VPC访问。 对等连接 客户端连接RocketMQ实例前,需要放通如下安全组,否则会连接失败。 创建安全组后,系统默认添加入方向“允许安全组内的弹性云服务器彼此通信”规则和出方向“放通全部流量”规则,此时使用内网通过同一个VPC访问RocketMQ实例,无需添加表2和表3的规则。 表2 安全组规则(RocketMQ实例4.8.0版本) 方向 协议 端口 源地址 说明 入方向 TCP 8100 RocketMQ客户端所在的IP地址或地址段。 使用TCP协议,通过内网访问元数据节点的端口。 入方向 TCP 8200 使用TCP协议,通过公网访问元数据节点的端口。 入方向 TCP 10100-10199 使用TCP协议,通过内网访问业务节点的端口。 入方向 TCP 10101-10199 使用TCP协议,通过公网访问业务节点的端口。 表3 安全组规则(RocketMQ实例5.x版本) 方向 协议 端口 源地址 说明 入方向 TCP 8100 RocketMQ客户端所在的IP地址或地址段。 使用TCP协议,通过内网访问实例的端口。 入方向 TCP 8200 使用TCP协议,通过公网访问实例的端口。 入方向 TCP 8080 使用gRPC协议,通过内网访问实例的端口。 入方向 TCP 8081 使用gRPC协议,通过公网访问实例的端口。 入方向 TCP 10100 使用TCP协议,通过内网访问业务节点的端口。 入方向 TCP 10101 使用TCP协议,通过公网访问业务节点的端口。 父主题: 配置RocketMQ网络连接
  • 步骤五:验证接口连通性 参考使用客户端连接Kafka(关闭SASL)或者使用客户端连接Kafka(开启SASL),测试是否可以生产和消费消息。 测试接口连通性时,注意以下几点: 连接Kafka实例的地址为“advertised.listeners IP:9011”,以图8为例,连接Kafka实例的地址为“192.168.0.71:9011,192.168.0.11:9011,192.168.0.21:9011”。 在Kafka实例安全组的入方向规则中放通9011端口,以及198.19.128.0/17网段的地址。 如果Kafka实例的子网配置了网络ACL功能,需要在网络ACL的入方向规则中放通198.19.128.0/17网段的地址,以及 VPC终端节点 涉及的子网。 198.19.128.0/17是为VPC终端节点分配的网段,使用VPC终端节点需要放通此网段。