全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

基于云服务器的高可用网络搭建教程

最近更新时间:2026-07-24 11:19:57

本实践主要介绍如何使用金山云的KEC、VPC、KRDS、SLB、EIP、NAT 网关等产品,搭建跨可用区的高可用网络架构。

背景信息

网络拓扑

本实践中的网络架构采用经典三层设计,通过公网负载均衡统一接收互联网流量,后端云服务器跨可用区部署以实现机房级容灾,云数据库采用双机高可用版自动主备切换,NAT 网关为后端实例提供统一、安全的出网能力。、

网络拓扑结构如下:

私网 SLB 为内网专用负载均衡组件,无公网地址暴露。主要承接 Web 层到 App 业务层(主机)的内网流量分发,通过健康检查自动剔除故障节点,支撑业务层水平扩容与高可用,同时解耦前后端服务、简化扩缩容运维,在本架构中为可选组件,无独立 App 层时可省略。

涉及产品清单

层级

产品

作用

网络接入

公网 SLB

统一入口,隐藏后端IP

网络隔离

VPC + 子网

私网子网(放KEC、KRDS)

网络出口

NAT 网关

后端KEC通过NAT访问公网,不暴露实例公网IP

计算层

KEC 云服务器

跨2个可用区部署,抗单机房故障;可横向扩展

数据层

KRDS MySQL(双机高可用版)

主从Active/Standby,自动故障切换,跨可用区高可用

环境和网络规划

资源

CIDR

地域

可用区

用途

VPC(dain_vpc)

192.168.0.0/16

华北1(北京)

-

整体网络空间

公网共享型SLB

-

-

部署公网SLB

私网子网A(dn_subnet3)

192.168.68.0/24

A

部署KEC、KRDS主库

数据库/负载均衡终端子网(dn_subnetZH)

192.168.69.0/24

A

-

私网子网B(dtest_subnet)

192.168.70.0/24

B

部署KEC、KRDS备库

数据库终端子网(dn_subnetZH)

192.168.69.0/24

B

-

约束限制

操作步骤

步骤一:创建 VPC 和子网

  1. 登录网络控制台,在左侧导航选择 虚拟私有网络(VPC)

  2. 进入 VPC 列表页,点击 新建VPC

  3. 在弹出的提示窗口中,根据环境与网络规划,参考如下示例,配置各项参数。

    配置项

    示例及说明

    名称

    dain_vpc

    IPv4网段

    192.168.0.0/16

    IPv6网段

    勾选无IPv6网段

    子网1

    对应网络规划中的私网子网A。

    • 名称:本示例为dn_subnet3

    • 类型:云服务器子网。

    • 可用区:本示例为可用区A

    • IPv4网段:本示例为192.168.68.0/24

    子网2

    对应网络规划中的私网子网B。

    • 名称:本示例为dn_subnet

    • 类型:选择云服务器子网

    • 可用区:本示例为可用区B

    • IPv4网段:本示例为192.168.70.0/24

    子网3

    对应网络规划中的数据库终端子网。

    • 名称:本示例为dn_subnetZH

    • 类型:选择终端子网

    • IPv4网段:本示例为192.168.69.0/24

  4. 点击确定,完成虚拟网络VPC和子网的创建。

步骤二:创建云服务器

根据前文操作,创建华北1(北京)可用区 A 和可用区 B 的云服务器.

  1. 登录KEC控制台,在左侧导航栏,选择实例,点击+新建。

  2. 网络配置选择步骤一提前创建好的VPC网络,其他参数参考KEC用户指南进行设置即可。

  3. 依次创建2台云服务器,如下。

步骤三:创建 NAT 网关

  1. 返回网络控制台,在左侧导航选择NAT网关 > NAT1.0

  2. 在页面顶部,选择步骤一创建的 VPC,点击 新建NAT

  3. 新建NAT页面,IP地址数量选择1虚拟私有网络dain_vpc,其他参数自定义。

  4. 点击立即购买,完成NAT的创建。

  5. 点击新建的NAT,进入其详情页面,选择 SNAT页签,绑定前文创建的云服务器

  6. 选择创建的主机所在的子网,并绑定创建的主机。

  7. 部署验证Nginx:通过 VNC 分别登录两台 KEC,执行以下命令:

    # CentOS 系统
    sudo yum install -y nginx
    sudo systemctl start nginx
    sudo systemctl enable nginx
    
    # 创建区分页面,便于验证负载均衡轮询效果
    echo "<h1>Server: $(hostname)</h1>" | sudo tee /usr/share/nginx/html/index.html
    
    # 确认Nginx监听0.0.0.0:80
    sudo netstat -tlnp | grep 80

步骤四:创建云数据库 MySQL

  1. 登录云数据库 MySQL控制台,点击 新建实例

  2. 在实例创建页面,参考如下示例,配置各项参数。

    • 地域:本示例为华北1(北京)

    • 实例类型:选择高可用版

    • 主可用区:本示例可用区 A

    • 备可用区:本示例可用区 B

    • 网络配置:选择步骤一创建的 VPC 和终端子网

    • 其他配置按个人需求选择。

  3. 点击立即购买,完成MySQL实例的创建。

步骤五:创建公网负载均衡

  1. 返回网络控制台,在左侧导航选择负载均衡 > 共享型,点击新建

  2. 共享负载均衡创建页面,参考以下示例,配置各项参数。

    • 地域:本示例为华北1(北京)

    • 虚拟私有网络:选择步骤一创建的 VPC

    • 网络类型:选择公网

    • 其他配置按个人需求选择。

  3. 点击立即购买,完成SLB的创建。

  4. 在左侧导航栏,选择共享型>服务器组

  5. 在服务器组(共享型)列表页面,点击新建,参考以下示例完成参数配置。

    在后端服务器列表中,两台 KEC 的健康状态应显示为健康(约等待几十秒健康检查生效)。

  6. 返回共享型实例列表页,点击新建的负载均衡名称/ID,进入其详情页面。

  7. 选择监听器页签,点击 新建,参考以下示例,配置各项参数。

  8. 点击确定,完成监听器的创建。

  9. 点击监听器名称/ID,进入详情页,选择服务器信息页签,等待端口健康状态。

    同时也受VPC安全组影响,需要放开80端口。

后续操作:验证高可用性

公网访问验证

  1. 在浏览器地址栏输入 SLB 的 EIP 地址(如 http://123.x.x.x)。

  2. 多次刷新页面,观察页面显示的 Server: xxx 是否变化。

  3. 预期结果:页面在两台主机之间轮询切换,证明负载均衡生效。

高可用验证

  1. 通过 VNC 登录 daitest1 主机

  2. 执行停止 Nginx 服务:

    sudo systemctl stop nginx
  3. 再次刷新浏览器页面。

  4. 预期结果:页面仍然正常显示,但只显示 daitest2 的主机名;SLB 自动将故障节点剔除。

  5. 执行命令恢复服务,约十几秒后 SLB 自动将其加回:

    sudo systemctl start nginx

NAT 出网验证

  1. 通过 VNC 登录任意一台私网 KEC

  2. 执行以下命令:

    curl -I https://www.ksyun.com
  3. 预期结果:返回 HTTP 200 响应头,证明 NAT 网关出网正常。

数据库连通性验证

  1. 通过 VNC 登录任意一台 KEC

  2. 安装 MySQL 客户端:

    sudo yum install -y mysql
  3. 连接 KRDS:

    mysql -h <KRDS内网地址> -P 3306 -u admin -p
  4. 输入密码后进入 MySQL 命令行,执行:

    SHOW STATUS LIKE 'Threads_connected';
  5. 预期结果:成功连接,证明 KEC 与 KRDS 内网互通正常。

附录:安全组规则

方向

协议

端口

来源

说明

入站

TCP

22

(本地网络+内网网段)

SSH管理

入站

TCP

80

(本地网络+内网网段)

HTTP业务

入站

TCP

443

(本地网络+内网网段)

HTTPS业务

出站

ip

-

0.0.0.0/0

默认允许

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈