爆款云主机低至25.83元/年
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 云聚517 · 好价翼起拼 NEW 爆款云主机低至25.83元/年,参与拼团享更多优惠,拼成得额外优惠券
  • 安全隔离版OpenClaw NEW OpenClaw云服务器专属“龙虾“套餐低至1.5折起
  • 聚力AI赋能 天翼云大模型专项 大模型特惠专区·Token Plan 轻享包低至9.9元起
  • 青云志云端助力计划 NEW 一站式科研助手,海外资源安全访问平台,助力青年翼展宏图,平步青云
  • 企业出海解决方案 NEW 助力您的业务扬帆出海,通达全球!
  • 天翼云信创专区 NEW “一云多芯、一云多态”,国产化软件全面适配,国产操作系统及硬件芯片支持丰富
  • 中小企业服务商合作专区 国家云助力中小企业腾飞,高额上云补贴重磅上线
  • 云上钜惠 爆款云主机全场特惠,2核4G只要1.8折起!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

息壤智算

领先开放的智算服务平台,提供算力、平台、数据、模型、应用“五位一体”智算服务体系,构建全流程的AI基础设施能力
AI Store
  • 算力市场
  • 模型市场
  • 应用市场
公共算力服务
  • 裸金属
  • 定制裸金属
训推服务
  • 模型开发
  • 训练任务
  • 服务部署
星辰TokenHub
  • 模型广场
  • 体验中心
  • 服务接入
应用托管
  • 应用实例
科研助手
  • 科研智能体
  • 科研服务
  • 开发机
  • 并行计算
大模型
  • DeepSeek-V4-Flash
  • GLM-5.1
  • Qwen3.5-122B-A10B
  • DeepSeek-V3.2(旗舰版)
  • GLM-5(正式版)
智算一体机
  • 智算一体机
智能体引擎
  • 智能体引擎
可信数据空间
  • 可信数据空间
模型适配专家服务
  • 模型适配专家服务
算力服务商
  • 入驻算力服务商

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场进入AI Store创新解决方案公有云生态专区智云上海应用生态专区
建站工具
  • 新域名服务
  • SSL证书
  • 翼建站
企业办公
  • 安全邮箱
  • WPS 365 天翼云版
  • 天翼企业云盘(标准服务版)
灾备迁移
  • 云管家2.0
  • 翼备份(SaaS版)

定价

协助您快速了解云产品计费模式、价格详情,轻松预估上云成本
价格计算器
  • 动态测算产品价格
定价策略
  • 快速了解计费模式

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼信创云专区
  • 信创云专区
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
培训与认证
  • 天翼云学堂
  • 天翼云认证
开源社区
  • 魔乐社区
  • OpenTeleDB

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 服务保障
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家
我要反馈
  • 建议与反馈
  • 用户体验官
信息公告
  • 客户公告

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2026智能云生态大会
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 息壤智算
  • 产品
  • 解决方案
  • 应用商城
  • 定价
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      企业主机安全_相关内容
      • 分布式容器云平台
        分布式容器云平台 CCE One 是面向多云、多集群等场景推出的企业级容器云平台,实现对集群、应用、数据、服务与策略的统一管控。
        来自:
        帮助文档
        分布式容器云平台
      • 产品价格
        标准版单机实例 CPU(核) 内存(GB) 标准资费(元/小时) 标准资费(元/月) :::: 2 4 1.22 613.89 2 8 3.72 1733.61 2 16 3.94 1837.63 4 8 2.45 1222.22 4 16 7.43 3467 4 32 7.68 3630 8 16 5.09 2433.33 8 32 14.88 6934 8 64 15.43 7260 16 32 9.26 4332.32 16 64 29.97 13869 16 128 30.85 14520 24 192 46.28 21780 企业版主备实例 CPU(核) 内存(GB) 标准资费(元/小时) 标准资费(元/月) :::: 2 8 10.64 5016 2 16 11.28 5316.96 4 8 20.7 9938 4 16 21.28 10032 4 32 21.73 10325 8 32 42.57 20063 8 64 43.56 20650 16 64 85.54 40127 16 128 87.12 41300 24 192 130.68 61950 32 128 171.88 80253 32 256 174.22 82600 60 256 322 150370 60 512 326.36 154742.5 64 256 322 150370 64 512 346.44 165200 说明 2017 企业版提供实例为集群版,价格资费参照主备实例。
        来自:
        帮助文档
        关系数据库SQL Server版
        计费说明
        产品价格
      • 备份HBase业务数据
        本章主要介绍翼MapReduce的备份HBase业务数据功能。 操作场景 为了确保HBase日常数据安全,或者系统管理员需要对HBase进行重大操作(如升级或迁移等),需要对HBase业务数据进行备份,从而保证系统在出现异常或未达到预期结果时可以及时进行数据恢复,将对业务的影响降到最低。 系统管理员可以通过FusionInsight Manager创建备份HBase任务并备份数据。支持创建任务自动或手动备份数据。 HBase备份业务数据时,可能存在以下场景: 用户创建HBase表时,“KEEPDELETEDCELLS”属性默认值为“false”,备份该HBase表时会将已经删除的数据备份,可能导致恢复后出现垃圾数据。请根据业务需要,在创建HBase表时手动修改参数值为“true”。 用户在HBase表写入数据时手动指定了时间戳,且时间早于上一次该HBase表的备份时间,则在增量备份任务中可能无法备份新数据。 HBase备份功能不支持对HBase的global或者命名空间的读取、写入、执行、创建和管理权限的访问控制列表(ACL)进行备份,恢复HBase数据后需要管理员在FusionInsight Manager上重新设置角色的权限。 已创建的HBase备份任务,如果本次备份任务在备集群的备份数据丢失,当下次执行增量备份时备份任务将失败,需要重新创建HBase的备份任务。若下次执行全量则备份正常。 前提条件 如果数据要备份至远端HDFS中,需要准备一个用于备份数据的备集群,认证模式需要与主集群相同。其他备份方式不需要准备备集群。 如果主集群部署为安全模式,且主备集群不是由同一个FusionInsight Manager管理,则必须配置系统互信,请参见配置跨Manager集群互信。如果主集群部署为普通模式,则不需要配置互信。 主备集群必须已配置跨集群拷贝,请参见启用集群间拷贝功能。 主备集群上的时间必须一致,而且主备集群上的NTP服务必须使用同一个时间源。 根据业务需要,规划备份任务的类型、周期、备份对象、备份目录和备份任务需要使用的Yarn队列等策略规格。 检查备集群HDFS是否有充足的空间,备份文件保存的目录建议使用用户自定义的目录。 使用HDFS客户端,以hdfs用户执行hdfs lsSnapshottableDir检查当前集群中已创建HDFS快照的目录清单,确保待备份的数据文件所在HDFS路径的父目录或子目录不存在HDFS快照,否则无法创建备份任务。 如果数据要备份至NAS中,需要提前部署好NAS服务端。 HBase的“fs.defaultFS”配置参数需要与Yarn,HDFS的配置保持一致。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        备份恢复管理
        备份数据
        备份HBase业务数据
      • 云硬盘计费说明
        本文介绍云硬盘计费的相关规则。 计费模式 天翼云云硬盘为客户提供按需计费和包年包月计费两种模式。云硬盘按需计费和包年包月计费价格请参考计费模式。 计费时长 开始计费:云硬盘购买成功后就开始计费,无论是否挂载至主机。 停止计费:包年包月计费模式的云硬盘退订成功后就停止计费。按需计费模式的云硬盘删除成功后就停止计费。 变更配置计费说明 变更项 包年包月计费 按需计费 转换计费模式 支持转换为按需计费。 支持转换为包年包月计费。 云硬盘扩容 支持扩容,扩容需要补差价,不支持缩容。 差价计费规则 :规格单价 扩容容量 剩余购买周期 扩容容量:单位GB,为云硬盘的扩容容量。 剩余购买周期:从扩容成功时刻开始,到云硬盘到期时间结束。具体请参见包周期产品升降规则及费用说明。 支持扩容,不支持缩容。 扩容成功时间点所在的计费周期(即一小时)内,将会产生多条计费信息 。 每条计费信息的开始时间和结束时间对应扩容前后云硬盘容量在该小时内的生效时间。 修改云硬盘类型 只支持云硬盘升配,不支持降配。需要补差价。 差价计费规则 :规格差价 云硬盘容量 剩余购买周期 规格差价:升配后的规格单价升配前的规格单价。 剩余购买周期:从规格变更成功时刻开始,到云硬盘到期时间结束。 HDD云硬盘和SSD云硬盘只支持云硬盘升配,不支持降配;按需计费XSSD云硬盘既支持升配,也支持降配。 修改规格成功时间点所在的计费周期(即一小时)内,将会产生多条计费信息 。 每条计费信息的开始时间和结束时间对应修改规格前后不同云硬盘规格在该小时内的生效时间。
        来自:
        帮助文档
        云硬盘 EVS
        计费说明
        云硬盘计费说明
      • 产品基本概念
        本章节介绍了云硬盘备份产品的基本概念,包括备份,策略,增强备份,即时恢复等。 备份策略 备份策略指的是对备份对象执行备份操作时,预先设置的策略,策略包括备份策略的名称、备份任务的调度计划和备份数据的保留策略。其中调度计划包括备份执行的频率,备份执行的时间点,备份数据的保留策略包括备份数据的保存时间或保存数量。通过将云硬盘绑定到备份策略,可以为云硬盘执行自动备份。 备份 备份即一个备份对象执行一次备份任务产生的备份数据,包括备份对象恢复所需要的全部数据。备份可以通过一次性备份和周期性备份两种方式产生。 云硬盘备份提供两种配置方式,一次性备份和周期性备份。一次性备份是指用户手动创建的一次性备份任务。周期性备份是指用户通过创建备份策略并绑定云主机的方式创建的周期性备份任务。 一次性备份的备份名称支持用户自定义,也可以采用系统自动生成的名称。一次性备份产生的备份名称为“backupxxxx”。 周期性备份的备份名称由系统自动生成。周期性备份产生的备份名称为“autobkxxxx”。 即时恢复 即时恢复特性支持备份快速恢复磁盘数据和备份快速创建新磁盘,恢复磁盘数据和备份创建新磁盘的时间相较于特性启用之前将大大缩短。 云硬盘产生的历史备份(特性上线前产生的备份)不支持即时恢复。如需使用即时恢复特性,需要手工执行一次全量备份,同时在创建备份时勾选“全量备份”参数,该全量备份及其后续的增量备份方可支持即时恢复。具体操作请参见“创建云硬盘备份”。在即时恢复特性上线前未进行过备份的云硬盘,在特性上线后在创建备份时无需勾选“全量备份”参数,产生的备份即支持即时恢复特性。 产生过历史备份或特性上线前未进行过备份的云硬盘,在特性上线后创建成功的自动备份,不支持即时恢复特性。如需使用即时恢复特性,仍需手工执行一次全量备份。
        来自:
        帮助文档
        云硬盘备份 VBS
        产品简介
        云硬盘备份的相关概念
        产品基本概念
      • 实例存储类型
        本文介绍了RDSPostgreSQL的实例存储类型详细说明。 数据库是应用系统最为重要基础组件,需频繁进行磁盘读写操作,对存储IO性能要求较高,天翼云提供多种类型的存储IO以满足不同性能要求,您可根据需要选择所需的存储类型。RDSPostgreSQL暂时不支持创建实例后变更存储类型。 存储类型说明 RDSPostgreSQL普通IO、高IO、通用型SSD、超高IO、极速型SSD、XSSD系列(XSSD0、XSSD1、XSSD2)六种存储类型,均为云盘存储,支持弹性扩容,可以满足不同的业务场景,具体如下: 普通IO:适用于数据量不大、查询和更新频率不高的个人测试、学习等场景。 高IO:适用于主流的高性能、高可靠应用场景,例如大型开发测试、Web服务器日志以及企业应用。典型的企业应用有SAP、Microsoft Exchange和Microsoft SharePoint等。 通用型SSD:适用于高吞吐量,低时延的企业级办公场景。 超高IO:适用于超高IOPS、超大带宽需求的读写密集型应用场景,例如要求高性能计算的关系型数据库。 极速型SSD:适用于需要极低的延迟和高的I/O性能的应用场景,大型OLTP(Online Transaction Processing)数据库等。 XSSD系列(XSSD0、XSSD1、XSSD2):天翼云X系列云硬盘基于NVMe和RDMA技术,为您提供超高IOPS、超高吞吐量和超低时延的极致云硬盘。关于XSSD系列的性能介绍可参考X系列云硬盘。 注意 XSSD系列仅8代机支持选择该磁盘类型,同时仅部分资源池支持XSSD系列磁盘,后续会逐步加载其他资源池,请以实际订购界面展示为准。 云硬盘规格详情,请您参考云硬盘产品介绍产品规格磁盘类型及性能介绍。
        来自:
        帮助文档
        关系数据库PostgreSQL版
        产品介绍
        实例说明
        实例存储类型
      • 产品定义
        本文为您介绍对等连接产品的定义。 对等连接(Peer to Peer Connection,CTPPC)是指两个同一区域内的VPC之间的网络连接。用户可以使用私有IP地址在两个VPC之间进行内网通信,就像两个VPC在同一个网络中一样。用户可以在自己帐号的VPC之间创建对等连接,也可以在自己账号的VPC与同一区域内其他帐号的VPC之间创建对等连接。 对等连接创建流程 无论是在同一帐户下还是不同帐户下,只要VPC位于同一个资源池,对等连接就能够为VPC之间的通信提供一种私有、安全且高效的解决方案,来实现资源的共享和数据的流动,满足了不同场景下的通信需求。 同一账户下VPC对等连接的创建流程: 1. 创建对等连接:选择本端VPC和对端VPC。 2. 添加对等连接路由:在本端VPC的路由表中添加指向对端VPC的路由规则,同时在对端VPC的路由表中添加指向本端VPC的路由规则。 3. 验证网络互通情况:确认对等连接已生效后,验证网络互通性。 不同帐户下VPC对等连接的创建流程: 1. 创建对等连接:选择本端VPC和对端VPC。 2. 判断是否接受连接:选择“否”则创建对等连接失败;选择“是”则进入下一步。 3. 添加对等连接路由:在本端VPC的路由表中添加指向对端VPC的路由规则,同时在对端VPC的路由表中添加指向本端VPC的路由规则。 4. 验证网络互通情况:确认对等连接已生效后,验证网络互通性。
        来自:
        帮助文档
        虚拟私有云 VPC
        对等连接
        产品定义
      • Hermes云电脑指南
        本节介绍Hermes云电脑的使用方式。 产品核心优势 Hermes云电脑内置Hermes环境,开箱即用。Hermes具备模块化架构和丰富的工具生态,让开发者能够快速构建复杂的AI应用。同时也是拥有内置学习循环的智能体,它从经验中创建技能,在使用过程中持续改进,形成持久化知识。支持微信、飞书、QQ等IM工具接入使用。 体验指引 1. 支持天翼AI云电脑移动端、PC客户端进行切换Hermes镜像; 2. 切换方式:登录云电脑>工具栏>设置>系统重装>更换系统,选择Hermes镜像。 注意 不支持跨系统切换,如Windows不支持切换至Ubuntu。 使用指引(以Ubuntu云电脑为例) 1. 开机后系统会自动启动Hermes后台服务,在云智助手中生成ApiKey并自动将模型信息注入到Hermes中,用户无需再配置模型即可直接使用。 2. 双击【Hermes】图标,首次打开会有安全提示弹窗,系统自动打开默认浏览器并跳转到聊天页面,可以发送指令和查看对话历史。 3. 双击【Hermes助手】图标,可以进入大模型配置界面,这里可以检测模型的连通性,有自行购买的第三方模型(例如息壤)可以配置以切换当前使用的大模型(填写API Key,Base URL和模型等信息)。 4. 在IM设置界面,可以配置微信,飞书和QQ三种IM通道,需要扫描界面上的二维码或者填写所需的信息,保存后静待片刻即可生效。
        来自:
        帮助文档
        天翼云电脑(政企版)
        最佳实践
        Hermes云电脑指南
      • 同资源池不同VPC,通过对等连接接入天翼云
        本页为您介绍从天翼云数据库迁移/同步数据到天翼云数据库,同资源池不同VPC情况下,通过对等连接接入的方法。 在同资源池,不同VPC之间,网络默认不通,需要通过VPC打通的方式来实现网络互通。目前支持通过VPC对等连接的方式实现VPC间子网级的互通,注意需要保证源数据实例所在子网与目标数据库实例所在子网的网段不冲突。 以下分别介绍网络通信方式,DTS实例的配置流程和不同VPC间通过对等连接进行互通的配置流程。 网络通信方式 网络通信方式,见下图: DTS实例的配置流程 DTS实例订购成功后,选择对应实例ID的操作“实例配置”,进入【配置源库及目标库信息】页面,“打通网络配置”将会自动识别,源端将显示“当前数据库不在同一个虚拟私有云(VPC),需要配置对等连接打通⽹络”,点击“创建虚拟私有云(VPC)对等连接”将跳转到VPC控制台,可按VPC相关流程处理“创建对等连接”,具体页面如下: 不同VPC间通过对等连接互通的配置流程 创建VPC对等连接。 具体可参考天翼云对等连接相关文档进行配置。 源数据库实例与目标数据库实例的网络ACL和安全组配置。 具体可参考同VPC通过VPC网络接入天翼云文档进行配置。 数据库添加白名单。 源数据库需要添加DTS实例的私网IP访问数据库的权限。不同类型的数据库添加白名单的方法可能不一样,具体可参考各数据库官方文档进行操作。
        来自:
        帮助文档
        数据传输服务DTS
        快速入门
        天翼云数据库到天翼云
        同资源池不同VPC,通过对等连接接入天翼云
      • 查看云审计日志
        本页面主要介绍天翼云数据传输服务DTS对接的云审计服务使用和查看方法。 操作场景 数据传输服务DTS现已对接天翼云云审计服务,云审计服务提供对各种云资源操作的记录和查询功能,用于支撑合规审计、安全分析、操作追踪和问题定位等场景,同时提供事件跟踪功能,将操作日志转储至对象存储实现永久保存。 云审计可提供的功能服务具体如下: 记录审计日志:支持用户通过管理控制台或API接口发起的操作,以及各服务内部自触发的操作。 审计日志查询:支持在管理控制台对7天内操作记录按照事件类型、事件来源、资源类型、筛选类型、操作用户和事件级别等多个维度进行组合查询。 使用限制 云审计服务本身免费,包括时间记录以及7天内的存储和检索。 用户通过云审计能查询到多久前的操作事件:7天。 用户操作后多久可以通过云审计查询到数据:5分钟。 其它限制请参考使用限制云审计。 关键操作列表 操作事件 字段 创建实例 dtsCreateInstance 删除实例 dtsDeleteInstance 任务启动 dtsStartJob 任务暂停 dtsStopJob 操作步骤 1. 开通云审计服务。 参见开通云审计服务云审计。 2. 查看云审计事件。 参见查看审计事件云审计。 3. 在事件列表页,根据需要选择时间段、设置筛选条件,如:读写类型、事件级别、操作用户、事件来源、资源类型、资源名称、事件名称等。点击查询即可。 4. 在审计事件查询结果列表右侧操作列点击详情,可以看到更详细的事件信息。 更多云审计相关使用说明和常见问题请参考用户指南、常见问题。
        来自:
        帮助文档
        数据传输服务DTS
        用户指南
        日志管理
        查看云审计日志
      • 与RabbitMQ、RocketMQ的差异
        功能项 RocketMQ Kafka RabbitMQ 优先级队列 不支持 不支持 支持。建议优先级大小设置在010之间。 延迟队列 支持 不支持 不支持 死信队列 支持 不支持 支持 消息重试 支持 不支持 不支持 消费模式 支持客户端主动拉取和服务端推送两种方式 客户端主动拉取 支持客户端主动拉取以及服务端推送两种模式 广播消费 支持 支持 支持 消息回溯 支持 支持。Kafka支持按照offset和timestamp两种维度进行消息回溯。 不支持。RabbitMQ中消息一旦被确认消费就会被标记删除。 消息堆积 支持 支持。考虑吞吐因素,Kafka的堆积效率比RabbitMQ总体上要高。 支持 持久化 支持 支持 支持 消息追踪 支持 不支持 支持。RabbitMQ中可以采用Firehose或者rabbitmqtracing插件实现,但开启rabbitmqtracing插件会影响性能,建议只在定位问题过程中开启。 消息过滤 支持 支持 不支持,但可以自行封装。 多租户 支持 不支持 支持 多协议支持 兼容RocketMQ协议 只支持Kafka自定义协议。 RabbitMQ基于AMQP协议实现,同时支持MQTT、STOMP等协议。 跨语言支持 支持多语言的客户端 采用Scala和Java编写,支持多种语言的客户端。 采用Erlang编写,支持多种语言的客户端。 流量控制 待规划 支持client和user级别,通过主动设置可将流控作用于生产者或消费者。 RabbitMQ的流控基于CreditBased算法,是内部被动触发的保护机制,作用于生产者层面。 消息顺序性 单队列(queue)内有序 支持单分区(partition)级别的顺序性。 不支持。需要单线程发送、单线程消费并且不采用延迟队列、优先级队列等一些高级功能整体配合,才能实现消息有序。 安全机制 支持SSL认证 支持SSL、SASL身份认证和读写权限控制。 与Kafka相似 事务性消息 支持 支持 支持
        来自:
        帮助文档
        分布式消息服务Kafka
        产品简介
        与RabbitMQ、RocketMQ的差异
      • 数据投递至Kafka
        Prometheus监控服务支持将Prometheus实例的监控数据导出,以进行自定义业务处理。您可以根据业务需求,选择相应的投递目标。本文介绍如何创建Kafka数据投递任务。 前提条件 已接入Prometheus实例。 已部署目标的分布式消息服务Kafka实例,并创建Topic等资源。 开通事件总线EventBridge服务。 注意 1. 数据投递功能依赖事件总线EventBridge,事件总线EventBridge目前公测中,费用详情请参考计费说明。 2. 仅支持从创建任务开始后的实时数据导出,不支持历史数据的投递。 操作步骤 1. 登录应用性能监控控制台。在左侧菜单栏点击Prometheus监控 数据投递菜单。 2. 进入数据投递页面后,点击左上角【创建任务】按钮。 3. 在对话框中输入任务名称和任务描述后,单击确定。将自动跳转至任务编辑页面。 4. 在任务编辑页面,配置数据源和投递目标: 1. 点击【+ 添加数据源】按钮,配置以下参数,然后单击确定。 配置项 说明 示例 Prometheus实例 Prometheus数据源所在实例。 ccexxxxxx 数据过滤 设置需要过滤的指标标签,黑名单机制代表符合条件的指标将不会被投递。白名单机制代表符合条件的指标才会被投递。 支持正则表达式。多个条件需要换行,条件之间为且的关系。 plaintext name~xxxxx regionIdhuadong1 idixxxxxx 数据打标 设置需要新增的标签,设置后将在投递的指标数据增加对应的label。多个标签需要换行。 plaintext testkey1aaaaa testkey2bbbbb 2. 点击【添加目标】按钮,选择目标类型为分布式消息服务Kafka,并选择目标kafka实例与Topic,点击确定,即可完成任务的创建。 注意 在使用kafka数据投递前,需要先在对应kafka实例安全组中允许VPC内访问Kafka实例服务端口,具体操作请查看操作指引。 5. 投递任务启动后,数据经过2~5分钟的延迟即可到达投递目标。
        来自:
        帮助文档
        应用性能监控 APM
        用户指南
        Prometheus监控
        控制台操作指南
        数据投递
        数据投递至Kafka
      • 云服务操作日志
        本文主要介绍云服务操作日志以及审计日志如何接入 云日志服务支持存储各云服务产品上报至云审计的操作日志,可用于长时间存储操作事件日志,可用于支撑安全分析、合规审计、资源跟踪和问题定位等常见应用场景。 前置条件 1. 已开通云审计服务,详情请见云审计产品介绍。 2. 已开通对象存储服务,详情请见对象存储产品介绍。 注意 1. 当前仅支持华北2资源池进行配置。 2. 接入操作事件日志,将产生相关存储费用与流量费用,详情请查看云日志服务计费说明。 3. 云审计提供的事件文件转储功能需要使用对象存储服务,会产生对象存储服务费用,相关费用信息请参考对象存储服务文档。 操作方式 1. 开通云审计后,登录云审计控制台。 2. 在云审计控制台左侧菜单栏点击"事件跟踪",点击"创建跟踪任务"。 3. 根据指引配置,勾选“启用状态”,配置“ZOS存储桶”以及“目录前缀”,完成事件跟踪任务的创建,详情请参考云审计帮助文档。 4. 进入云日志服务控制台,在左侧菜单栏点击“日志接入”,在接入中心的“云服务操作日志”中选择对应的云服务产品。 5. 选择需要存储日志数据的日志项目与日志单元。点击下一步进入日志配置页面。 6. 在日志配置页面中,选择上述第三步已配置的ZOS存储桶以及目录前缀,点击“下一步”,即可完成配置
        来自:
        帮助文档
        云日志服务
        用户指南
        日志接入
        云服务日志接入
        云服务操作日志
      • 设置自动备份策略
        本文介绍自动备份策略规则及如何设置备份策略及备份清理策略。 自动备份策略规则 开通SQL Server实例后,系统会设置默认自动备份策略。您可根据业务需要设置自动备份策略,系统会按照您设置的自动备份策略对数据库实例进行备份。出于安全考虑,不可以关闭自动备份。 默认自动备份策略为:备份周期为星期一至星期日(即每天),备份保留天数为7天,默认不开启增量备份。如果实例开通时间点在当前时段的前45分钟内,则备份时间为当前时间段,否则为当前时段的下一个时段,比如开通时间为14:30:00,则备份时段为14:0015:00,如果开通时间为15:46:00,则备份时段为16:0017:00。您可以设置自动备份策略。 备份周期默认为每天,可选范围包括星期一至星期日。至少选择一周中的2天。 保留天数为数据备份和日志的保留时长,默认为7天,范围为1~730天,请根据需要设置。保留天数过大,将占用较大备份空间。减少保留天数,会针对已有的备份文件生效,但手动备份不会自动删除。 备份时间段默认为24小时中,间隔一小时中的一个时间段 ,例如01:00~02:00,12:00~13:00等。备份时间段并不是指整个备份任务完成的时间,指的是备份的开始时间,备份时长和实例的数据量有关。由于开启备份会损耗数据库读写性能,建议根据业务情况,选择业务低峰时段作为备份时间段。自动备份只会在备份时间段内执行。 增量备份默认不开启,您可以根据需要选择是否打开增量备份开关。开启增量备份后,一个备份周期内将按照首次全量,其余增量的循环进行备份。 日志备份策略不支持修改。日志备份频率默认为每30分钟备份一次,日志备份保留天数同数据备份保留天数。
        来自:
        帮助文档
        关系数据库SQL Server版
        用户指南
        备份与恢复
        备份
        设置自动备份策略
      • 云审计
        本文介绍关系数据库SQL Server版在天翼云云审计中支持的相关功能。 操作场景 本服务现已对接天翼云云审计服务,云审计服务提供对各种云资源操作的记录和查询功能,用于支撑合规审计、安全分析、操作追踪和问题定位等场景,同时提供事件跟踪功能,将操作日志转储至对象存储实现永久保存。 云审计可提供的功能服务具体如下: 记录审计日志:支持用户通过管理控制台或API接口发起的操作,以及各服务内部自触发的操作。 审计日志查询:支持在管理控制台对7天内操作记录按照事件类型、事件来源、资源类型、筛选类型、操作用户和事件级别等多个维度进行组合查询。 使用限制 云审计服务本身免费,包括时间记录以及7天内时间的存储和检索。 用户通过云审计能查询到多久前的操作事件:7天。 用户操作后多久可以通过云审计查询到数据:5分钟。 其它限制请参考使用限制云审计。 关键操作列表 操作事件 创建实例、恢复到新实例 重启实例 删除实例 节点扩容 磁盘扩容 规格变更 数据备份、删除备份 数据恢复 参数修改 主备切换 绑定公网IP 解绑公网IP 操作步骤 1. 开通云审计服务。 参见开通云审计服务云审计。 2. 查看云审计事件。 参见查看审计事件云审计。 3. 在事件列表中,选择事件来源为“数据库”,资源类型选择“关系数据库SQL Server版”,上方时间选择需要筛选的时间段。点击查询即可。 4. 在审计事件右侧点击详情,可以看到更详细的事件信息。 更多云审计相关使用说明和常见问题请参考用户指南、常见问题。
        来自:
        帮助文档
        关系数据库SQL Server版
        用户指南
        日志管理
        云审计
      • 购买类
        本章节会介绍函数工作流的购买时常见问题。 在创建函数时创建失败,并提示“您当前的权限不足,请联系您的管理员为您开通相关权限”时该如何处理? 使用FunctionGraph是否需要开通计算、存储、网络等服务? 使用FunctionGraph开发程序之后是否需要部署? FunctionGraph函数支持哪些编程语言? FunctionGraph函数分配磁盘空间有多少? FunctionGraph函数是否支持版本控制? 在创建函数时创建失败,并提示“您当前的权限不足,请联系您的管理员为您开通相关权限”时该如何处理? 用户在未进行实名认证或者账号余额不足100元时,会弹出“您当前的权限不足,请联系您的管理员为您开通相关权限”的提示,且无法开通按需资源。请用户进行实名认证并保障账号余额大于100元。 使用FunctionGraph是否需要开通计算、存储、网络等服务? 用户使用FunctionGraph时,不需要开通或者预配置计算、存储、网络等服务,由FunctionGraph提供和管理底层计算资源,包括服务器CPU、内存、网络和其他配置/资源维护、代码部署、弹性伸缩、负载均衡、安全升级、资源运行情况监控等,用户只需要按照FunctionGraph支持的编程语言提供程序包,上传即可运行。 使用FunctionGraph开发程序之后是否需要部署? 用户在本地开发程序之后打包,必须是ZIP包(Java、Node.js、Python、Go)或者JAR包(Java),上传至FunctionGraph即可运行,无需其它的部署操作。 制作ZIP包的时候,单函数入口文件必须在根目录,保证解压后,直接出现函数执行入口文件,才能正常运行。 对于Go runtime,必须在编译之后打zip包,编译后的动态库文件名称必须与函数执行入口的插件名称保持一致,例如:动态库名称为testplugin.so,则“函数执行入口”命名为testplugin.Handler。
        来自:
        帮助文档
        函数工作流
        常见问题
        购买类
      • 通过误报处理提升Web基础防护效果
        生效条件 设置误报处理后,1分钟左右生效,防护事件详情列表中将不再出现此误报。您可以刷新浏览器缓存,重新访问设置了误报处理的页面,如果访问正常,说明配置成功。 Web基础防护检测项说明 Web基础防护覆盖OWASP(Open Web Application Security Project)常见安全威胁,内置语义分析+正则双引擎,可以对恶意扫描器、IP、网马等威胁进行检测并拦截。请根据业务使用场景开启相应的检测项,详细的检测项说明如下表所示。 检测项 说明 常规检测 防护SQL注入、XSS跨站脚本、远程溢出攻击、文件包含、Bash漏洞攻击、远程命令执行、目录遍历、敏感文件访问、命令/代码注入等攻击。其中,SQL注入攻击主要基于语义进行检测。 说明 开启“常规检测”后,WAF将根据内置规则对常规检测项进行检测。 Webshell检测 防护通过上传接口植入网页木马。 说明 开启“Webshell检测”后,WAF将对通过上传接口植入的网页木马进行检测。 深度检测 防护同形字符混淆、通配符变形的命令注入、UTF7、Data URI Scheme等深度反逃逸。 说明 开启“深度检测”后,WAF将对深度反逃逸进行检测防护。 header全检测 默认关闭。关闭状态下WAF会检测常规存在注入点的header字段,包含UserAgent、Contenttype、AcceptLanguage和Cookie。 说明 开启“header全检测”后,WAF将对请求里header中所有字段进行攻击检测。 Shiro解密检测 默认关闭。开启后,WAF会对Cookie中的rememberMe内容做AES,Base64解密后再检测。Web应用防火墙检测机制覆盖了几百种已知泄露密钥。 说明 如果您的网站使用的是Shiro 1.2.4及之前的版本,或者升级到了Shiro 1.2.5及以上版本但是未配置AES,强烈建议您开启“Shiro解密检测”,以防攻击者利用已泄露的密钥构造攻击。
        来自:
        帮助文档
        Web应用防火墙(独享版)
        最佳实践
        通过误报处理提升Web基础防护效果
      • 内核资源相关参数
        本页介绍天翼云TeleDB数据库内核资源相关参数。 maxfilesperprocess (integer) 设置每个服务器子进程允许同时打开的最大文件数目。默认是1000 个文件。如果内核强制一个安全的针对每个进程的限制,那么你不用操心这个设置。但是在 一些平台上(特别是大多数 BSD 系统),如果很多进程都尝试打开很多文件,内核将允许独立进程打开比个系统真正可以支持的数目大得多得文件数。如果你发现自己看到了“Too many open files”这样的失败,可尝试减小这个设置。这个参数只能在服务器启动时设置。 enableglobalplancache 是否开启global plancache,设置成on的时候,打开global plancache功能。设置成off的时候,关闭该功能。打开开关,表示打开全局执行计划缓存(global plancache)功能,能够让不同的连接共享同一份Plan Cache。这个参数改了之后需要重启生效。 enableglobalsyscache 是否开启global syscache,设置成on的时候,打开global syscache功能。设置成off的时候,关闭该功能。打开开关,表示打开全局元数据缓存功能,可以让所有进程共享同一个缓存条目,提高内存利用效率,降低因此发生OOM的风险。这个参数改了之后需要重启生效。 globalplancachesize 该参数表示可使用的global plancache的共享内存大小,单位MB,重启集群生效,不配置的话有默认参数。 globalcachesize 该参数表示可使用的元数据缓存的共享内存大小,单位MB,重启集群生效,不配置的话有默认参数。 enableremotedataaccessplan 是否开启RDA,默认off。设置成on的时候,打开RDA功能。设置成off的时候,关闭该功能。打开开关,表示打开远程数据访问(RDA)功能。参数类型:布尔。是否动态生效:是。
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品
        参数指南
        资源消耗相关参数
        内核资源相关参数
      • 故障分析类常见问题
        本文介绍在使用Web应用防火墙(边缘云版)可能出现的问题和排查方法。 上传文件的正常请求被Web应用防火墙(边缘云版)拦截了怎么办? 正常的上传请求被Web应用防火墙(边缘云版)拦截一般分为以下两种情况 Web应用防火墙(边缘云版)防护节点最大支持300MB的文件上传,当上传大于300MB的文件时就可能会上传失败。建议使用未接入Web应用防火墙(边缘云版)防护的域名上传或者通过FTP攻击上传。 通过浏览器POST请求上传文件时,文件内容会被转码后放在POST请求的body中上传,当转码后的文件出现匹配Web应用防火墙(边缘云版)规则的关键字内容时就有可能被Web应用防火墙(边缘云版)认为有恶意代码触发拦截。遇到这种情况建议将该URL加入到访问控制白名单的放行规则中。 出现登录状态丢失的情况如何解决? 当接入Web应用防火墙(边缘云版)的域名存在多个源站时,多个源站之间要做登录session同步,不然有可能出现同一个会话请求转发到不同的源站导致登录状态丢失的情况。另外,如果源站有基于访问IP做会话验证时要通过从请求头的xforwardedfor中获取到客户端请求的真实IP进行校验。 出现长连接请求超时如何处理? 如果源站由于某种原因响应慢,超过边缘安全防护节点回源超时时间设置仍未向边缘节点返回内容,则会出现504报错。出现这种情况时,可先排查源站服务器是否有出现CPU或者带宽瓶颈,其次源站处理请求的逻辑入手看是否可以优化提升源站的处理速度,如果确认源站已经无法优化响应速度,可通过修改防护节点默认回源超时时长来缓解该问题,具体可提交工单联系天翼云客服进行配置。
        来自:
        帮助文档
        Web应用防火墙(边缘云版)
        常见问题
        故障分析
        故障分析类常见问题
      • 配置常见关系数据库连接
        参数名 说明 取值样例 名称 连接的名称,根据连接的数据源类型,用户可自定义便于记忆、区分的连接名。 mysqllink 数据库服务器 配置为要连接的数据库的IP地址或域名。 单击输入框后的“选择”,可获取用户的DWS、RDS等实例列表。 192.168.0.1 端口 配置为要连接的数据库的端口。 不同的数据库端口不同,请根据具体情况配置。例如: SQLServer默认端口:1433 PostgreSQL默认端口:5432 数据库名称 配置为要连接的数据库名称。 dbname 用户名 待连接数据库的用户。该数据库用户需要有数据表的读写权限,以及对元数据的读取权限。 cdm 密码 用户名密码。 使用Agent 是否选择通过Agent从源端提取数据。 是 Agent 单击“选择”,选择3.3.5.3管理Agent中已创建的Agent。 驱动版本 不同类型的关系数据库,需要适配不同的驱动。 一次请求行数 可选参数,单击“显示高级属性”后显示。 指定每次请求获取的行数,根据数据源端和作业数据规模的大小配置该参数。如果配置过大或过小,可能影响作业的时长。 1000 SSL加密 可选参数,支持通过SSL加密方式连接数据库,暂不支持自建的数据库。 RDS上的PostgreSQL数据库服务做了一些安全增强,在创建RDS上的PostgreSQL的连接时,该参数需要配置为“是”。 是 连接属性 可选参数,单击“添加”可增加多个指定数据源的JDBC连接器的属性,参考对应数据库的JDBC连接器说明文档进行配置。 说明 CDM作业默认打开了useCursorFetch开关,即JDBC连接器与关系型数据库的通信使用二进制协议。 sslmoderequire 引用符号 可选参数,连接引用表名或列名时的分隔符号,参考对应数据库的产品文档进行配置。 '
        来自:
        帮助文档
        数据治理中心 DataArts Studio
        用户指南
        数据集成
        管理连接
        配置常见关系数据库连接
      • 启停集群
        本章节主要介绍如何启停集群。 重启集群 当集群处于非均衡或不能正常工作时,可能需要通过重启集群进行恢复。当您修改完配置,例如修改集群安全设置、参数修改相关配置,未立即重启集群的情况下,您也可以通过手动重启集群使配置生效。 说明 若集群欠费,可能会导致该功能被限制不可用,请及时充值确保集群可正常使用。 对系统的影响 重启期间集群将无法提供服务。因此,在重启前,请确定集群中没有正在运行的任务,并且所有数据都已经保存。 如果集群正在处理业务数据,如导入数据、查询数据、创建快照或恢复快照时,一旦重启集群,有可能会导致文件损坏或重启失败。因此,建议停止所有集群任务后,再重启集群。 您可以参考Cloud Eye监控集群查看集群的“会话数”和“活跃SQL数”指标,查看是否有活跃事务。 重启集群所需时间与集群的规模和业务有关,正常情况下大约需要3分钟左右,不超过20分钟。 如果重启失败,将有可能会导致集群不可用,建议联系技术支持人员进行处理或稍后重试。 操作步骤 1. 登录DWS管理控制台。 2. 单击“集群 > 专属集群”。 3. 在需要重启的集群的“操作”列,单击“重启”。 4. 在弹出框单击“是”。 此时集群的“任务信息”变为“重启中”。当“集群状态”重新变为“可用”时,表示重启已成功。 停止集群 当用户的集群不再使用时,可通过停止集群功能来关闭集群,方便业务下线。 说明 如果当前控制台界面不支持该特性,请联系技术支持人员。集群启动后恢复计费。 集群停止后实例关机,ECS场景下基础资源(vCPU、内存)不再保留,当再次启动云服务时,可能由于资源不足无法正常开机,请耐心等待,稍后再试。
        来自:
        帮助文档
        数据仓库服务
        用户指南
        集群管理
        启停集群
      • 与Kafka、RocketMQ的差异
        功能项 RocketMQ Kafka RabbitMQ 优先级队列 不支持 不支持 支持。建议优先级大小设置在010之间。 延迟队列 支持 不支持 不支持 死信队列 支持 不支持 支持 消息重试 支持 不支持 不支持 消费模式 支持客户端主动拉取和服务端推送两种方式 客户端主动拉取 支持客户端主动拉取以及服务端推送两种模式 广播消费 支持 支持 支持 消息回溯 支持 支持。Kafka支持按照offset和timestamp两种维度进行消息回溯。 不支持。RabbitMQ中消息一旦被确认消费就会被标记删除。 消息堆积 支持 支持。考虑吞吐因素,Kafka的堆积效率比RabbitMQ总体上要高。 支持 持久化 支持 支持 支持 消息追踪 支持 不支持 支持。RabbitMQ中可以采用Firehose或者rabbitmqtracing插件实现,但开启rabbitmqtracing插件会影响性能,建议只在定位问题过程中开启。 消息过滤 支持 支持 不支持,但可以自行封装。 多租户 支持 不支持 支持 多协议支持 兼容RocketMQ协议 只支持Kafka自定义协议。 RabbitMQ基于AMQP协议实现,同时支持MQTT、STOMP等协议。 跨语言支持 支持多语言的客户端 采用Scala和Java编写,支持多种语言的客户端。 采用Erlang编写,支持多种语言的客户端。 流量控制 待规划 支持client和user级别,通过主动设置可将流控作用于生产者或消费者。 RabbitMQ的流控基于CreditBased算法,是内部被动触发的保护机制,作用于生产者层面。 消息顺序性 单队列(queue)内有序 支持单分区(partition)级别的顺序性。 不支持。需要单线程发送、单线程消费并且不采用延迟队列、优先级队列等一些高级功能整体配合,才能实现消息有序。 安全机制 支持SSL认证 支持SSL、SASL身份认证和读写权限控制。 与Kafka相似 事务性消息 支持 支持 支持
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        产品简介
        与Kafka、RocketMQ的差异
      • 作业开发类
        提交作业时系统提示当前用户在Manager不存在如何处理? 问题详情 安全集群使提交作业时,未进行IAM用户同步,会出现“当前用户在MRS Manager不存在,请先在IAM给予该用户足够的权限,再在概览页签进行IAM用户同步”的错误提示。 处理方式 在提交作业之前,用户需要先在集群详情页的“概览”页签,单击“IAM用户同步”右侧的“同步”进行IAM用户同步,然后再提交作业。 LauncherJob作业执行失败,报错信息为“jobPropertiesMap is null”如何处理? 问题描述 Launcher作业失败的,提示原因为:提交作业用户无“hdfs /mrs/jobproperties”目录的写权限如何处理? 处理方式 该问题已在MRS 2.1.0.6的补丁中修复,也可通过在MRS Manager页面给同步的提交作业用户赋予该目录“/mrs/jobproperties”的写入权限进行处理。 为什么MRS Console页面Flink作业状态与Yarn上的作业状态不一致? 为了节约存储空间,用户修改了Yarn的配置项yarn.resourcemanager.maxcompletedapplications,减小yarn上历史作业的记录保存个数。由于Flink是长时作业,在yarn上realJob还在运行,但launcherJob已经被删除,导致因从Yarn上查不到launcherJob,从而更新作业状态失败。该问题在2.1.0.6补丁中解决。 解决方法:终止找不到launcherJob的作业,后续提交的作业状态就会更新。 SparkStreaming]()作业运行几十个小时后失败,报OBS访问403如何处理? 当用户提交作业需要读写OBS时,提交作业程序会默认为用户添加访问OBS的临时accesskey和secretkey,但是临时accesskey和secretkey有过期时间。 如果需要运行像Flink和SparkStreaming这样的长时作业时,用户可通过“服务配置参数”选项框传入永久的accesskey和secretkey,以保证作业不会在运行过程中因密钥过期而执行失败。 ClickHouse客户端执行SQL查询时报内存不足如何处理?
        来自:
        帮助文档
        翼MapReduce
        常见问题
        操作类
        作业开发类
      • 修改OMS服务配置参数
        本章节主要介绍翼MapReduce的修改OMS服务配置参数操作。 操作场景 根据用户环境的安全要求,管理员可以在FusionInsight Manager修改OMS中Kerberos与LDAP配置。 对系统的影响 修改OMS的服务配置参数后,需要重启对应的OMS模块,此时FusionInsight Manager将无法正常使用。 操作步骤 修改okerberos配置 1. 登录FusionInsight Manager,选择“系统 > OMS”。 2. 在okerberos所在行,单击“修改配置”。 3. 根据下表所示的说明修改参数。 okerberos参数配置一览表 参数名 说明 连接KDC最大时延(毫秒) 应用连接到Kerberos的超时时间,单位为毫秒,请填写整数值。 最大尝试次数 应用连接到Kerberos的最大重试次数,请填写整数值。 操作Ldap最大时延(毫秒) Kerberos连接LDAP的超时时间,单位为毫秒。 搜索Ldap最大时延(毫秒) Kerberos在LDAP查询用户信息的超时时间,单位为毫秒。 Kadmin监听端口 kadmin服务的端口。 KDC监听端口 kinit服务的端口。 Kpasswd监听端口 kpasswd服务的端口。 4. 单击“确定”。 在弹出窗口输入当前登录用户密码验证身份,单击“确定”,在确认重启的对话框中单击“确定”。 修改oldap配置 5. 在oldap所在行,单击“修改配置”。 6. 根据下表所示的说明修改参数。 oldap参数配置一览表 参数名 说明 Ldap服务监听端口 LDAP服务端口号。 7. 单击“确定”。 在弹出窗口输入当前登录用户密码验证身份,单击“确定”,在确认重启的对话框中单击“确定”。 说明 如果重置LDAP帐户口令需要重启ACS,操作步骤如下: 使用PuTTY,以omm用户登录主管理节点,执行以下命令更新域配置: sh ${BIGDATAHOME}/omserver/om/sbin/restartRealmConfig.sh复制 提示以下信息表示命令执行成功: Modify realm successfully. Use the new password to log into FusionInsight again.复制 执行 sh $CONTROLLERHOME/sbin/acscmd.sh stop ,停止ACS。 执行 sh $CONTROLLERHOME/sbin/acscmd.sh start ,启动ACS。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        系统设置
        OMS管理
        修改OMS服务配置参数
      • 入服与退服实例
        本章节主要介绍翼MapReduce的入服与退服实例操作。 操作场景 部分角色实例以分布式并行工作的方式对外部业务提供服务,服务会单独保存每个实例是否可以使用的信息,所以需要使用FusionInsight Manager为这些实例执行入服或退服的操作,变更实例的业务可用状态方式。 不支持该此功能的实例,默认无法执行任务。 说明 当前支持退服和入服操作的角色有:HDFS的DataNode、Yarn的NodeManager、HBase的RegionServer。 当DataNode数量少于或等于HDFS的副本数时,不能执行退服操作。若HDFS副本数为3时,则系统中少于4个DataNode,将无法执行退服,Manager在执行退服操作时会等待30分钟后报错并退出执行。 由于Mapreduce任务执行时,会生成一些副本数为10的文件,此时若DataNode实例数少于10时,将无法进行退服操作。 如果退服前,DataNode节点的机架数(机架数由各DataNode节点所配置的“机架”的名称数量决定)大于1;而退服部分DataNode后,剩余的DataNode节点的机架数变为1,则此次退服将会失败。所以需要在退服前评估退服操作对机架数的影响,以调整退服的DataNode节点。 在退服多个DataNode时,如果每个DataNode存储的数据量较大,如果执行选择多个DataNode同时退服,则很有可能会因超时而退服失败。为了避免这种情况,建议每次退服仅退服1个DataNode,进行多次退服操作。 操作步骤 1. DataNode节点退服前需要进行健康检查,步骤如下: 使用客户端用户登录客户端安装节点,并切换到客户端安装目录。 如果是安全集群,需要使用hdfs用户进行权限认证。 source bigdataenv
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        集群管理
        管理实例
        入服与退服实例
      • Redis 6.0命令
        本章节主要介绍DCS Redis 6.0命令的兼容性,包括支持命令列表,禁用命令列表。 DCS Redis 6.0兼容开源6.2.7版本,兼容开源的协议和命令。 本章节主要介绍DCS Redis 6.0命令的兼容性,包括支持命令列表,禁用命令列表。 命令的具体详细语法,请前往Redis官方网站查看。 DCS Redis缓存实例支持Redis的绝大部分命令,任何兼容Redis协议的客户端都可以访问DCS。 因安全原因,部分Redis命令在分布式缓存服务中被禁用,具体请见Redis 6.0禁用的命令。 部分Redis命令使用时有限制,例如KEYS、FLUSHDB、FLUSHALL等 ,具体请见部分命令使用限制。 Redis 6.0支持的命令 表 Redis 6.0 实例支持命令清单 Generic (Key) String Hash List Set Sorted Set Server DEL APPEND HDEL BLPOP SADD ZADD FLUSHALL DUMP BITCOUNT HEXISTS BRPOP SCARD ZCARD FLUSHDB EXISTS BITOP HGET BRPOPLRUSH SDIFF ZCOUNT DBSIZE EXPIRE BITPOS HGETALL LINDEX SDIFFSTORE ZINCRBY TIME MOVE DECR HINCRBY LINSERT SINTER ZRANGE INFO PERSIST DECRBY HINCRBYFLOAT LLEN SINTERSTORE ZRANGEBYSCORE CONFIG GET PTTL GET HKEYS LPOP SISMEMBER ZRANK MONITOR RANDOMKEY GETRANGE HMGET LPUSHX SMEMBERS ZREMRANGEBYRANK SLOWLOG RENAME GETSET HMSET LRANGE SMOVE ZREMRANGEBYCORE ROLE RENAMENX INCR HSET LREM SPOP ZREVRANGE SWAPDB RESTORE INCRBY HSETNX LSET SRANDMEMBER ZREVRANGEBYSCORE MEMORY SORT INCRBYFLOAT HVALS LTRIM SREM ZREVRANK CONFIG TTL MGET HSCAN RPOP SUNION ZSCORE ACL TYPE MSET HSTRLEN RPOPLPU SUNIONSTORE ZUNIONSTORE SCAN MSETNX HLEN RPOPLPUSH SSCAN ZINTERSTORE OBJECT PSETEX RPUSH SMISMEMBER ZSCAN PEXPIREAT SET RPUSHX ZRANGEBYLEX PEXPIRE SETBIT LPUSH ZLEXCOUNT KEYS SETEX BLMOVE ZPOPMIN COPY SETNX LMOVE ZPOPMAX SETRANGE LPOS ZREMRANGEBYSCORE STRLEN ZREM BITFIELD ZDIFF BITFIELDRO ZDIFFSTORE GETDEL ZINTER GETEX ZMSCORE ZRANDMEMBER ZRANGESTORE ZUNION 表 Redis 6.0 实例支持命令清单 [HyperLoglog](
        来自:
        帮助文档
        分布式缓存服务Redis版
        产品简介
        开源命令兼容性
        Redis 6.0命令
      • HTTP2.0配置
        本文简述HTTP2.0的定义和配置方法。 功能介绍 HTTP 2.0相对于HTTP 1.1新增了二进制格式传输、HTTP头部压缩、多路复用、服务端推送等特性,优化了请求传输性能,兼容了HTTP 1.1的语法。 HTTP2.0的优势: 采用二进制格式传输数据,而非 HTTP1.1 的文本格式,二进制格式在协议的解析和优化扩展上带来更多的优势。 对消息头采用 HPACK 进行压缩传输,能够节省消息头占用的网络的流量,而 HTTP1.1 每次请求,都会携带大量冗余头信息,浪费了很多带宽资源,头压缩能够很好的解决该问题。 多路复用,就是多个请求都是通过一个 TCP 连接并发完成,HTTP1.1 虽然通过pipeline也能并发请求,但是多个请求之间的响应会被阻塞,所以 pipeline 至今也没有被普及应用,而 HTTP2.0做到了真正的并发请求,同时,流还支持优先级和流量控制。 服务端推送,服务端能够更快的把资源推送给客户端,例如服务端可以主动把 JS 和 CSS 文件推送给客户端,而不需要客户端解析 HTML 再发送这些请求,当客户端需要的时候,它已经在客户端了。 注意事项 开启HTTP2.0前,需勾选请求协议中的HTTPS,并关联有效证书。 配置说明 1. 登录边缘安全加速平台控制台。 2. 在域名基础配置页面,点击目标域名。 3. 进入HTTPS配置页面,单击“编辑配置”。 4. 单击右侧【请求协议】,勾选【请求协议】中的【HTTPS】。 5. 单击右侧【HTTPS配置】,选择域名对应的【证书】。如果已经在【证书管理】上传证书,可直接选择对应域名证书。如果还未上传证书,可单击【点击上传】,添加证书。添加完毕后,再选择对应证书,如未找到目标证书,可点击右侧的刷新按钮刷新后再重新选择。 6. 开启【HTTP2.0】功能,配置完毕单击【保存】。 参数 说明 HTTP2.0 默认关闭,即不开启HTTP2.0功能。开启HTTP2.0功能之前,需要先完成HTTPS证书配置。
        来自:
        帮助文档
        边缘安全加速平台
        安全与加速
        域名操作指导
        基础配置
        HTTPS相关配置
        HTTP2.0配置
      • 业务指标
        本章节主要介绍业务指标设计。 经过数据调研和需求分析之后,您需要根据需求落地指标。指标是衡量目标总体特征的统计数值,是能表征企业某一业务活动中业务状况的数值指示器。指标一般由指标名称和指标数值两部分组成,指标名称及其涵义体现了指标质的规定性和量的规定性两个方面的特点,指标数值反映了指标在具体时间、地点、条件下的数量表现。业务指标用于指导技术指标,而技术指标是对业务指标的具体实现。 前提条件 在新建业务指标之前,您需要先完成流程设计,具体操作请参见流程设计。 新建业务指标并发布 1. 在DataArts Studio控制台首页,选择实例,点击“进入控制台”,选择对应工作空间的“数据架构”模块,进入数据架构页面。 2. 在数据架构控制台,单击左侧导航树中的“业务指标”,进入业务指标页面。 3. 在左侧的流程树中,选中一个流程,单击“新建”开始新建业务指标。 4. 在“新建业务指标”页面,请根据以下步骤配置参数,配置完成后,单击“发布”。 a. 填写“基本信息”参数。 下表为指标基本信息参数 参数说明 说明 指标名称 业务指标的名称。 指标编码 指标编码是自动生成的,生成规则可以在DataArts Studio数据架构的“配置中心”页面进行配置,详情请参见管理配置中心章节中的“编码规则”。 指标别名 可选参数。 所属流程 选择指标所属的业务流程。如果您还未创建业务流程,请参见流程设计进行创建。 设置目的 描述设置该指标的目的。 指标定义 需准确描述指标的定义。 备注 备注信息。 b. 配置指标数据信息。 下表为指标数据信息参数 参数说明 说明 计算公式 定义业务指标的计算逻辑,以便指导开发者根据计算公式设计原子指标、衍生指标。业务指标是为了指导技术指标的落地,实际并不做运算。 统计周期 指定指标的统计周期,以便指导开发者根据统计周期设计时间限定。 统计维度 可以在下拉列表中选择已经创建的维度。维度的创建请参见新建维度。 统计口径和修饰词 限定是对业务场景限定抽象,用于度量范围的圈定。 刷新频率 指标数据的刷新频率。开发者或运维者可以依据指标的刷新频率,合理设置衍生指标的调度频率。 指标应用场景 描述指标的应用场景。 关联技术指标类型 下拉选择与业务指标关联的技术指标类型,包含衍生指标和复合指标。 关联技术指标 下拉选择与业务指标关联的技术指标。 度量对象 衡量该指标的度量字段。 计量单位 指标的计量单位。 c. 配置管理信息。 下表为管理信息参数说明 参数说明 说明 数据来源 描述数据来源,也就是数据的产生者。 指标管理部门 指标的管理部门。 指标责任人 指标的责任人,可以手动输入名字或直接选择已有的责任人。 5. 在弹出对话框中,选择审核人,单击“确认提交”,完成发布。 6. 可以参照步骤3~步骤5,完成其他业务指标的创建和发布。 7. 完成所有业务指标的新建和发布之后,需要等待审核人员审核。 审核通过后,业务指标创建完成。
        来自:
        帮助文档
        数据治理中心 DataArts Studio
        用户指南
        数据架构
        指标设计
        业务指标
      • 使用限制
        产品使用限制介绍,请您在购买本产品前,详细阅读本节内容。 全流量分析服务使用限制 需订购基础版、企业版或护航版后,才能使用全流量分析服务。
        来自:
        帮助文档
        托管检测与响应服务(原生版)
        产品介绍
        使用限制
      • Java调用示例
        1. com.ffcs.ebp.ebpsdk.common.Response plaintext package com.ffcs.ebp.ebpsdk.common; import java.util.Map; public class Response { private int statusCode; private String body; private Map headers; public int getStatusCode() { return statusCode; } public void setStatusCode(int statusCode) { this.statusCode statusCode; } public String getBody() { return body; } public void setBody(String body) { this.body body; } public Map getHeaders() { return headers; } public void setHeaders(Map headers) { this.headers headers; } } 2. com.ffcs.ebp.ebpsdk.YunSign plaintext package com.ffcs.ebp.ebpsdk; import com.ffcs.ebp.ebpsdk.common.Response; import org.apache.commons.lang.StringUtils; import org.apache.http.Header; import org.apache.http.HttpEntity; import org.apache.http.client.config.AuthSchemes; import org.apache.http.client.config.CookieSpecs; import org.apache.http.client.config.RequestConfig; import org.apache.http.client.methods.; import org.apache.http.config.Registry; import org.apache.http.config.RegistryBuilder; import org.apache.http.conn.socket.ConnectionSocketFactory; import org.apache.http.conn.socket.PlainConnectionSocketFactory; import org.apache.http.conn.ssl.NoopHostnameVerifier; import org.apache.http.conn.ssl.SSLConnectionSocketFactory; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; import org.apache.http.util.EntityUtils; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import javax.net.ssl.X509TrustManager; import java.io.; import java.net.URLEncoder; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.security.KeyManagementException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.cert.X509Certificate; import java.text.SimpleDateFormat; import java.util.; public class YunSign { private String url; private String body; private String ak; private String sk; private String uuId; private int temp; private String contentType; private String queryStr; private Map headerMap; private String afterQuery; public YunSign(String url, String ak, String sk, String uuId, String body, int temp, String contentType, String queryStr, Map headerMap) { this.url url; if(body.equals("{}")){ body ""; } this.body body; this.ak ak; this.sk sk; this.uuId uuId; this.temp temp; this.contentType contentType; this.queryStr queryStr; this.headerMap headerMap; } public Response toDo(String method, int connectTimeout, int connectionRequestTimeout, int socketTimeout) { Response response null; method method.toUpperCase(); switch (method) { case "POST": response doPost(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "GET": if (StringUtils.isNotEmpty(this.body)) { response sendJsonByGetReq(connectTimeout, connectionRequestTimeout, socketTimeout); } else { response doGet(connectTimeout, connectionRequestTimeout, socketTimeout); } break; case "DELETE": if (StringUtils.isNotEmpty(this.body)) { response sendJsonByDeleteReq(connectTimeout, connectionRequestTimeout, socketTimeout); } else { response doDelete(connectTimeout, connectionRequestTimeout, socketTimeout); } break; case "PUT": response doPut(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "PATCH": response doPatch(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "HEAD": response doHead(connectTimeout, connectionRequestTimeout, socketTimeout); break; } return response; } private String getSign(Date eopDate) { String calculateContentHash getSHA256(body); //报文原封不动进行sha256摘要 // System.out.println("calculateContentHash:" + calculateContentHash); SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); SimpleDateFormat DATEFORMATTER new SimpleDateFormat("yyyyMMdd"); String singerDate TIMEFORMATTER.format(eopDate); String singerDd DATEFORMATTER.format(eopDate); //header的key按照26字母进行排序, 以&作为连接符连起来 try { String CampmocalHeader String.format("ctyuneoprequestid:%sneopdate:%sn", this.uuId, singerDate); String sigture CampmocalHeader + "n" + this.afterQuery + "n" + calculateContentHash; // System.out.println("sigture:" + sigture); byte[] ktime HmacSHA256(singerDate.getBytes(), sk.getBytes()); // System.out.println("ktime:" + HexUtils.bytes2Hex(ktime)); byte[] kAk HmacSHA256(ak.getBytes(), ktime); // System.out.println("kAk:" + HexUtils.bytes2Hex(kAk)); byte[] kdate HmacSHA256(singerDd.getBytes(), kAk); // System.out.println("kdate:" + HexUtils.bytes2Hex(kdate)); String Signature Base64.getEncoder().encodeToString(HmacSHA256(sigture.getBytes("UTF8"), kdate)); // System.out.println("Signature:" + Signature); String signHeader String.format("%s Headersctyuneoprequestid;eopdate Signature%s", ak, Signature); // System.out.println("signHeader:" + signHeader); return signHeader; } catch (Exception e) { e.printStackTrace(); } return null; } / 在调用SSL之前需要重写验证方法,取消检测SSL 创建ConnectionManager,添加Connection配置信息 @return HttpClient 支持https / private static CloseableHttpClient sslClient() { try { // 在调用SSL之前需要重写验证方法,取消检测SSL X509TrustManager trustManager new X509TrustManager() { @Override public X509Certificate[] getAcceptedIssuers() { return null; } @Override public void checkClientTrusted(X509Certificate[] xcs, String str) { } @Override public void checkServerTrusted(X509Certificate[] xcs, String str) { } }; SSLContext ctx SSLContext.getInstance(SSLConnectionSocketFactory.TLS); ctx.init(null, new TrustManager[]{trustManager}, null); SSLConnectionSocketFactory socketFactory new SSLConnectionSocketFactory(ctx, NoopHostnameVerifier.INSTANCE); // 创建Registry RequestConfig requestConfig RequestConfig.custom().setCookieSpec(CookieSpecs.STANDARDSTRICT) .setExpectContinueEnabled(Boolean.TRUE).setTargetPreferredAuthSchemes(Arrays.asList(AuthSchemes.NTLM, AuthSchemes.DIGEST)) .setProxyPreferredAuthSchemes(Arrays.asList(AuthSchemes.BASIC)).build(); Registry socketFactoryRegistry RegistryBuilder. create() .register("http", PlainConnectionSocketFactory.INSTANCE) .register("https", socketFactory).build(); // 创建ConnectionManager,添加Connection配置信息 PoolingHttpClientConnectionManager connectionManager new PoolingHttpClientConnectionManager(socketFactoryRegistry); CloseableHttpClient closeableHttpClient HttpClients.custom().setConnectionManager(connectionManager) .setDefaultRequestConfig(requestConfig).build(); return closeableHttpClient; } catch (KeyManagementException ex) { throw new RuntimeException(ex); } catch (NoSuchAlgorithmException ex) { throw new RuntimeException(ex); } } public Response doGet(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); //创建HttpGet远程连接实例 HttpGet httpGet; if (StringUtils.isNotEmpty(this.afterQuery)) { httpGet new HttpGet(this.url + "?" + this.afterQuery); } else { httpGet new HttpGet(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpGet.setHeader("ContentType", this.contentType); httpGet.setHeader("ctyuneoprequestid", this.uuId); httpGet.setHeader("EopAuthorization", getSign(eopDate)); httpGet.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpGet.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpGet.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 httpGet.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(httpGet); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response sendJsonByGetReq(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { Response result new Response(); CloseableHttpClient client null; CloseableHttpResponse response null; try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL client sslClient(); } else { client HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpGetWithEntity远程连接实例 HttpGetWithEntity httpGetWithEntity; if (StringUtils.isNotEmpty(this.afterQuery)) { httpGetWithEntity new HttpGetWithEntity(this.url + "?" + this.afterQuery); } else { httpGetWithEntity new HttpGetWithEntity(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为HttpGetWithEntity实例设置配置 httpGetWithEntity.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpGetWithEntity.setHeader("ContentType", this.contentType); httpGetWithEntity.setHeader("ctyuneoprequestid", this.uuId); httpGetWithEntity.setHeader("EopAuthorization", getSign(eopDate)); httpGetWithEntity.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpGetWithEntity.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpGetWithEntity.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); HttpEntity httpEntity new StringEntity(body, Charset.forName("UTF8")); httpGetWithEntity.setEntity(httpEntity); //执行请求操作,并拿到结果(同步阻塞) response client.execute(httpGetWithEntity); //获取结果实体 HttpEntity entity response.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! client) { try { client.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPost(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpPost远程连接实例 HttpPost httpPost; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPost new HttpPost(this.url + "?" + this.afterQuery); } else { httpPost new HttpPost(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPost.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpPost.setHeader("ContentType", this.contentType); httpPost.setHeader("ctyuneoprequestid", this.uuId); httpPost.setHeader("EopAuthorization", getSign(eopDate)); httpPost.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPost.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPost.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPost.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPost); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPut(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpPut远程连接实例 HttpPut httpPut; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPut new HttpPut(this.url + "?" + this.afterQuery); } else { httpPut new HttpPut(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPut.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(20321900,01,05); httpPut.setHeader("ContentType", this.contentType); httpPut.setHeader("ctyuneoprequestid", this.uuId); httpPut.setHeader("EopAuthorization", getSign(eopDate)); httpPut.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPut.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPut.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPut.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPut); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPatch(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpPatch远程连接实例 HttpPatch httpPatch; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPatch new HttpPatch(this.url + "?" + this.afterQuery); } else { httpPatch new HttpPatch(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPatch.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpPatch.setHeader("ContentType", this.contentType); httpPatch.setHeader("ctyuneoprequestid", this.uuId); httpPatch.setHeader("EopAuthorization", getSign(eopDate)); httpPatch.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPatch.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPatch.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPatch.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPatch); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doDelete(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpGet远程连接实例 HttpDelete httpDelete; if (StringUtils.isNotEmpty(this.afterQuery)) { httpDelete new HttpDelete(this.url + "?" + this.afterQuery); } else { httpDelete new HttpDelete(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpDelete.setHeader("ContentType", this.contentType); httpDelete.setHeader("ctyuneoprequestid", this.uuId); httpDelete.setHeader("EopAuthorization", getSign(eopDate)); httpDelete.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpDelete.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpDelete.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 httpDelete.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(httpDelete); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response sendJsonByDeleteReq(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpGet远程连接实例 HttpDeleteWithBody delete; if (StringUtils.isNotEmpty(this.afterQuery)) { delete new HttpDeleteWithBody(this.url + "?" + this.afterQuery); } else { delete new HttpDeleteWithBody(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); delete.setHeader("ContentType", this.contentType); delete.setHeader("ctyuneoprequestid", this.uuId); delete.setHeader("EopAuthorization", getSign(eopDate)); delete.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { delete.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : delete.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); HttpEntity httpEntity new StringEntity(body, Charset.forName("UTF8")); delete.setEntity(httpEntity); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 delete.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(delete); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doHead(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpHead远程连接实例 HttpHead httpHead; if (StringUtils.isNotEmpty(this.afterQuery)) { httpHead new HttpHead(this.url + "?" + this.afterQuery); } else { httpHead new HttpHead(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpHead.setHeader("ContentType", this.contentType); httpHead.setHeader("ctyuneoprequestid", this.uuId); httpHead.setHeader("EopAuthorization", getSign(eopDate)); httpHead.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpHead.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpHead.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpHead实例设置配置 httpHead.setConfig(requestConfig); // 执行head请求得到返回对象 response httpClient.execute(httpHead); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } private String toHex(byte[] data) { StringBuilder sb new StringBuilder(data.length 2); byte[] var2 data; int var3 data.length; for (int var4 0; var4 2) { String encodeStr null; encodeStr URLEncoder.encode(s[1], "UTF8"); str s[0] + "" + encodeStr; afterQuery afterQuery + str; } else { String encodeStr ""; str s[0] + "" + encodeStr; afterQuery afterQuery + str; } } else { String[] s str.split(""); if (s.length > 2) { String encodeStr URLEncoder.encode(s[1], "UTF8"); str s[0] + "" + encodeStr; afterQuery afterQuery + "&" + str; } else { String encodeStr ""; str s[0] + "" + encodeStr; afterQuery afterQuery + "&" + str; } } } } } catch (Exception e) { e.printStackTrace(); } return afterQuery; } } 3. HexUtils.java plaintext package com.ffcs.ebp.ebpsdk; public class HexUtils { private static final char[] HEXES { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; / byte数组 转换成 16进制小写字符串 / public static String bytes2Hex(byte[] bytes) { if (bytes null bytes.length 0) { return null; } StringBuilder hex new StringBuilder(); for (byte b : bytes) { hex.append(HEXES[(b >> 4) & 0x0F]); hex.append(HEXES[b & 0x0F]); } return hex.toString(); } / 16进制字符串 转换为对应的 byte数组 / public static byte[] hex2Bytes(String hex) { if (hex null hex.length() 0) { return null; } char[] hexChars hex.toCharArray(); byte[] bytes new byte[hexChars.length / 2]; // 如果 hex 中的字符不是偶数个, 则忽略最后一个 for (int i 0; i headerMap new HashMap<>(); // headerMap.put("queryMetricDataInfo", "{"regionId":"cnsz1","dim":"instanceid,98cdcc8a8e544788ab9cc94ccee429c7","filter":"average","from":"1658473040","to":"1658473040","metricName":"netbitRecv","namespace":"AGT.ECS","period":"1"},"platform":"3"}"); // headerMap.put("platform", "3"); // headerMap.put("consoleUrl", " // headerMap.put("UserAgent", "3333433"); // headerMap.put("XForwardedFor", "1231313"); // headerMap.put("regionId", "100054c0416811e9a6690242ac110002"); // headerMap.put("prodInstId","9dcaf0157c604100af79bdb8271527bc"); //请求地址 String url " //query参数(?后面拼接的参数。没有就不填) aaaa&bbbb String queryStr "regionID41f64827xxxxxxxxxffa3a5deb5d15d"; //body参数(没有就不填) String body ""; //APPID String ak "9f82cacd3f8235c66edfs5e899f098e6"; //appkey String sk "MlgzESz430hJgTzA4lkjuJvDMMLTqwBQRicVqV62VM"; String uuId UUID.randomUUID().toString(); //连接超时 int connectTimeout 35000; //连接请求超时 int connectionRequestTimeout 35000; //socket超时 int socketTimeout 60000; YunSign yunSign new YunSign(url, ak, sk, uuId, body, temp, contentType, queryStr, headerMap); Response response yunSign.toDo(method, connectTimeout, connectionRequestTimeout, socketTimeout); System.out.println("应答头部 "); for (Map.Entry entry : response.getHeaders().entrySet()) { System.out.println(entry.getKey().toString() + ":" + entry.getValue().toString()); } System.out.println(); System.out.println("请求结果 "); System.out.println(response.getBody()); } }
        来自:
        帮助文档
        对象存储 ZOS
        API参考
        API(OpenAPI)
        如何调用API
        Java调用示例
      • 操作系统类
        本章节主要介绍物理机的操作系统类的问题。 物理机操作系统是否有图形界面? 当前提供的Linux操作系统是命令行界面,用户如果需要可以自己设置图形管理。或者订制专属物理机镜像。 物理机操作系统自带上传工具吗? 物理机操作系统没有自带的上传工具,需要用户自行安装和配置,例如FTP。 如何设置物理机的静态主机名? 问题描述 Linux物理机的静态主机名来源于创建物理机时,通过控制台注入的用户自定义名称。可以使用控制台或hostname命令更改物理机的主机名,但如果重启物理机,将自动还原为控制台上注入的用户自定义名称。 使用hostname命令修改Linux物理机的主机名后,如果您希望修改后的主机名在物理机关机、重启后仍然生效,需要将其写入相应的配置文件中,使之永久生效。 假设使用hostname 命令修改后的主机名为 newhostname 。 步骤 1 修改配置文件“/etc/hostname”。 1.执行以下命令,编辑配置文件“/etc/hostname”。 sudo vim /etc/hostname 2.将配置文件中的主机名替换为修改后的主机名newhostname。 3.执行以下命令,保存并退出文件。 :wq 步骤 2 对于RHEL/CentOS/Fedora 6操作系统,需要修改配置文件“/etc/sysconfig/network”。 1.执行以下命令,编辑配置文件“/etc/sysconfig/network”。 sudo vim /etc/sysconfig/network 2.修改涉及“HOSTNAME”的参数值,将其设置为修改后的主机名newhostname。 HOSTNAMEnewhostname 3.执行以下命令,保存并退出文件。 :wq 步骤 3 修改配置文件“/etc/cloud/cloud.cfg”。 1.执行以下命令,编辑配置文件“/etc/cloud/cloud.cfg”。 sudo vim /etc/cloud/cloud.cfg 2.按需选择如下两种方法,修改配置文件。 方法一 :修改或添加“preservehostname”参数项。 如果文件“/etc/cloud/cloud.cfg”中已有参数项“preservehostname: false”,将其修改为“preservehostname: true”即可。 如果文件“/etc/cloud/cloud.cfg”中没有该参数项,需要在“cloudinitmodules”模块前,添加语句preservehostname: true。 方法二 :删除或者注释如下语句。 updatehostname 3.执行以下命令,保存并退出文件。 :wq 步骤 4 修改物理机网络配置脚本“bmsnetworkconfig.conf”。 “bmsnetworkconfig.conf”的配置参数“enablepreservehostname”默认为False,表示每次单板复位自动刷新主机名。将其修改为True即可关闭该功能。 1.编辑网络配置脚本“bmsnetworkconfig.conf”,将参数项“enablepreservehostname”设置为True。 首先进入配置文件目录: cd /opt/huaw/networkconfig sed i 's/enablepreservehostname./enablepreservehostname True/g' bmsnetworkconfig.conf 步骤 5 对于SUSE系列操作系统,还需要修改配置文件“/etc/sysconfig/network/dhcp”。 1.执行以下命令,编辑配置文件“/etc/sysconfig/network/dhcp”。 sudo vim /etc/sysconfig/network/dhcp 2.将参数项“DHCLIENTSETHOSTNAME”设置为no,保证每次dhcp服务不会自动分配主机名。 DHCLIENTSETHOSTNAME"no" 3.执行以下命令,保存并退出文件。 :wq 步骤 6 执行以下命令,重启物理机。 sudo reboot 步骤 7 执行以下命令,验证静态主机名的修改是否永久生效。 sudo hostname 如果回显的内容是修改后的主机名newhostname,表示主机名修改成功,永久生效。
        来自:
        帮助文档
        物理机 DPS
        常见问题
        操作系统类
      • 产品定义
        分布式缓存服务(Distributed Cache Service,简称DCS)是一款内存数据库服务,兼容Redis内存数据库引擎,为您提供即开即用、安全可靠、弹性扩容、便捷管理的在线分布式缓存能力,满足用户高并发及数据快速访问的业务诉求。 即开即用 DCS提供单机、主备和集群三种类型的缓存实例,拥有从128MB到1024GB的丰富内存规格。您可以通过控制台直接创建,无需单独准备服务器资源。 其中Redis4.0/5.0/6.0版本采用容器化部署,秒级完成创建。 安全可靠 借助统一身份认证、虚拟私有云、云监控与云审计等安全管理服务,全方位保护实例数据的存储与访问。 灵活的容灾策略,主备/集群实例从单AZ(可用区)内部署,到支持跨AZ部署。 弹性伸缩 DCS提供对实例内存规格的在线扩容与缩容服务,帮助您实现基于实际业务量的成本控制,达到按需使用的目标。 便捷管理 可视化Web管理界面,在线完成实例重启、参数修改、数据备份恢复等操作。DCS还提供基于RESTful的管理API,方便您进一步实现实例自动化管理。 在线迁移 提供可视化Web界面迁移功能,支持备份文件导入和在线迁移两种方式,您可以通过控制台直接创建迁移任务,提高迁移效率。 DCS Redis Redis是一种支持KeyValue等多种数据结构的存储系统。可用于缓存、事件发布或订阅、高速队列等典型应用场景。Redis使用ANSI C语言编写,提供字符串(String)、哈希(Hash)、列表(List)、集合结构(Set、Sorted Set)、流(Stream)等数据类型的直接存取。数据读写基于内存,同时可持久化到磁盘。 DCS Redis拥有灵活的实例配置供您选择: DCS Redis灵活的实例配置 实例类型 提供单机、主备、Proxy集群、Cluster集群、读写分离类型,分别适配不同的业务场景。 单机:适用于应用对可靠性要求不高、仅需要缓存临时数据的业务场景。单机实例支持读写高并发,但不做持久化,实例重启后原有缓存数据不会加载。 主备:包含一个主节点,一个备节点,主备节点的数据通过实时复制保持一致,当主节点故障后,备节点自动升级为主节点。 Proxy集群:在Cluster集群的基础上,增加挂载Proxy节点和ELB节点,通过ELB节点实现负载均衡,将不同请求分发到Proxy节点,实现客户端高并发请求。每个Cluster集群分片是一个双副本的主备实例,当主节点故障后,同一分片中的备节点会升级为主节点来继续提供服务。 Cluster集群:通过分片化分区来增加缓存的容量和并发连接数,每个分片是一个主节点和0到多个备节点,分片本身对外不可见。分片中主节点故障后,同一分片中备节点会升级为主节点来继续提供服务。用户可通过读写分离技术,在主节点上写,从备节点读,从而提升缓存的整体读写能力。 读写分离:在主备实例的基础上,增加挂载Proxy节点和ELB节点,通过ELB节点实现负载均衡,将不同请求分发到Proxy节点,Proxy节点识别用户读写请求,将请求发送到主节点或备节点,从而实现读写分离。 :: 规格 Redis提供128MB~1024GB的多种规格。 兼容开源Redis版本 DCS提供不同的实例版本,分别兼容开源Redis的3.0、4.0、5.0、6.0。 底层架构 基于虚拟机的标准版 ,单节点QPS达10万/秒。 高可用与容灾 主备与集群实例提供Region内的跨可用区部署,实现实例内部节点间的电力、网络层面物理隔离。 有关开源Redis技术细节,您可以访问Redis官方网站
        来自:
        帮助文档
        分布式缓存服务Redis版
        产品简介
        产品定义
      • 1
      • ...
      • 300
      • 301
      • 302
      • 303
      • 304
      • ...
      • 353
      跳转至
      推荐热词
      天翼云运维管理审计系统天翼云云服务平台云服务备份云日志服务应用运维管理云手机云电脑天翼云云hbase数据库电信云大数据saas服务电信云大数据paas服务轻量型云主机天翼云客户服务电话应用编排服务天翼云云安全解决方案云服务总线CSB天翼云服务器配置天翼云联邦学习产品天翼云云安全天翼云企业上云解决方案天翼云产品天翼云视频云存储

      天翼云最新活动

      云聚517 · 好价翼起拼

      爆款云主机低至25.83元/年,参与拼团享更多优惠,拼成得额外优惠券

      安全隔离版OpenClaw

      OpenClaw云服务器专属“龙虾“套餐低至1.5折起

      聚力AI赋能 天翼云大模型专项

      大模型特惠专区·Token Plan 轻享包低至9.9元起

      青云志云端助力计划

      一站式科研助手,海外资源安全访问平台,助力青年翼展宏图,平步青云

      企业出海解决方案

      助力您的业务扬帆出海,通达全球!

      天翼云信创专区

      “一云多芯、一云多态”,国产化软件全面适配,国产操作系统及硬件芯片支持丰富

      中小企业服务商合作专区

      国家云助力中小企业腾飞,高额上云补贴重磅上线

      云上钜惠

      爆款云主机全场特惠,2核4G只要1.8折起!

      产品推荐

      GPU云主机

      弹性伸缩服务 AS

      弹性高性能计算 E-HPC

      训推服务

      AI Store

      星辰TokenHub运营服务平台

      知识库问答

      人脸检测

      人脸属性识别

      推荐文档

      云课堂 第十一课:天翼云虚拟IP地址及其在高可用集群中

      负载均衡停用

      天翼云进阶之路⑦:怎么设置sql2008数据库最大服务器内存

      加入会议

      文档下载

      MySQL

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 息壤智算平台
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 天翼云国际站
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2026 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号