华为云用户手册

  • 升级备份说明 目前集群升级备份方式如下: 备份方式 备份对象 备份方式 备份时间 回滚时间 说明 etcd数据备份 etcd数据 升级流程中自动备份 1-5min 2h 必选备份,升级过程中自动进行,用户无需关注 CBR整机备份 Master节点磁盘,包括组件镜像、配置、日志以及etcd数据 通过页面一键备份(手动触发) 20min-2h(受当前局点云备份任务排队情况影响) 20min 该功能逐步由EVS快照备份替代 EVS快照备份 Master节点磁盘,包括组件镜像、配置、日志以及etcd数据 通过页面一键备份(手动触发) 1-5min 20min 该功能上线中 对于已上线的区域,EVS快照备份将替代CBR整机备份
  • 资源和成本规划 该解决方案主要部署如下资源,以下费用仅供参考,具体请参考华为云官网价格详情,实际收费以账单为准。 表1 成本预估(仅供参考) 华为云服务 计费说明 每月花费(调用100万次) 内容审核服务-图像内容审核 1千次(含)以内免费。 1千-100万次:0.35元/千次 349.65元 对象存储服务 OBS 区域:华北-北京四 存储空间:数据存储(多AZ存储) 默认存储类别:标准存储 桶策略:私有 请求费用:0.0100元/万次 存储空间:0.1390元/GB/月 流量费用: 公网流出流量 / 00:00-08:00(闲时)0.2500元/GB 公网流出流量 / 08:00-24:00(忙时)0.5000元/GB 费用包括存储空间、请求费用、流量费用两部分,具体请参考OBS计费详情。 费用包括存储空间、请求费用、流量费用两部分,详细请参考每月账单。 函数工作流 FunctionGraph 区域:华北-北京四 产品:函数 请求次数: 0-100万次: 0元/100万次 100万次以上 : 1.33元/100万次 计量时间: 0-400,000 GB/秒: 0元/GB-秒 400,000 GB/秒以上 :0.00011108元/GB-秒 费用包括请求次数、计量时间两部分,详细请参考每月账单。 合计 - 349.65+OBS费用+函数工作流费用
    AI
  • 开始使用 登录华为云对象存储服务控制台,查看OBS桶是否正常创建。 图1 查看OBS桶 选择桶moderation-image-demo-resource-obs(实际桶名称以部署指定参数为准),上传图片文件。 暂不支持OBS上传KMS加密的图片文件。 图像内容审核 支持识别处理JPG、PNG、JPEG、WEBP、GIF、TIFF、TIF、HEIF格式的图片。 图像各边的像素大小在20到6000px之间。 图片base64编码后大小不超过10MB(原图像大小不超过7.5MB)。 目前支持暴恐元素、涉黄内容检测。 默认API调用最大并发为10(表示1秒内最多请求10次),如需调整更高并发限制请通过工单联系专业工程师为您服务。 图2 上传图片 检查违规图片替换结果(合规图片不会替换)。 图3 违规图片替换 选择桶moderation-image-result-demo(实际桶名称以部署指定参数为准),查看原始图片和审核日志。 图4 原始图片和审核日志 父主题: 实施步骤
  • 故障现象 ARM架构节点上,cgroup统计资源异常导致kubelet驱逐Pod,节点无法正常使用。 kubelet一直在驱逐pod,把容器全终止之后还是认为内存不足。 此时实际资源使用正常。 查看/sys/fs/cgroup/memory目录下cgroup的usage_in_bytes统计值有问题,与实际不符。 # cd /sys/fs/cgroup/memory # cat memory.usage_in_bytes 17618837504
  • 问题根因 ARM架构节点的EulerOS 2.8和EulerOS 2.9操作系统内核存在Bug,会触发kubelet驱逐Pod导致业务不可用。 该问题在以下版本中已被修复: EulerOS 2.8:内核版本kernel-4.19.36-vhulk1907.1.0.h1252.eulerosv2r8.aarch64 EulerOS 2.9:内核版本kernel-4.19.90-vhulk2103.1.0.h819.eulerosv2r9.aarch64
  • 绑定邮箱 1、使用华为云账号登录。 2、页面提示用户绑定邮箱,单击“立即绑定”,跳转到"消息中心"页面 3、进入到"接收人管理"页面中,如账号联系人没有邮箱,需要先添加邮箱,步骤如下: 4、在"接收人管理"页面中点击邮箱后面的黄色感叹号,再次点击"发送验证",提示"发送成功"后需要在邮件中点击"点击确认"按钮即可完成邮箱绑定。 5、进入到"修改消息接受人"弹窗页中,核实接收人已被勾选,步骤如下:(注:请至少勾选一个有邮箱的接收人,不勾选无法预约/考试/获取证书)
  • analyze_table(scheme_name, rel_name, sample_rate, random_rate default null, prarallel_degree default null) 描述:并行采样数据到临时表,然后对临时表做全量analyze, 并更新统计信息。 返回值类型:record。 函数参数字段如下: 名称 类型 描述 scheme_name name 主表的scheme名称 rel_name name 主表表名 sample_rate float8 采样率的百分比,范围为(0-100)采样率计算:min((10w/表的total_rows) * 100, 100) random_seed float8 随机种子 不设定的话,默认值为0 prarallel_degree int 并发度 不设定的话,默认值为10 示例: 1 call analyze_table('public','t1_col_obs',10,0,20);
  • pgxc_get_scan_residualfiles() 描述:用于获取所有节点上残留文件记录。该函数为集群级函数,限定在CN执行,与当前所在的数据库无关。不支持备机执行。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 node_name text 主备节点共用的统一名称。 instance_id text 记录残留文件所在的节点名称。 handled bool 残留文件是否已经被移动或者被更改。 dbname text 所属数据库名称。 residualfile text 残留文件路径。 size int 残留文件大小,OBS上残留文件该项为0。 inode int 残留文件在文件系统的索引节点号,OBS路径的残留文件该项为0。 atime time 残留文件上一次访问时间,OBS路径的残留文件该项为空。 mtime time 残留文件上一次修改时间,OBS路径的残留文件该项为空。 ctime time 残留文件上一次状态改动时间,OBS路径的残留文件该项为空。 filepath text 记录残留文件信息的元文件本地路径。 notes text 注释。 示例: 1 2 3 4 5 6 7 select * from pgxc_get_scan_residualfiles(); node_name | instance_id | handled | dbname | residualfile | size | inode | atime | mtime | ctime | filepath | notes --------------+--------------+---------+----------+------------------------------------------------------------------------------------------------------------------------------+------+---------+------------------------+------------------------+------------------------+----------------------------------------+------- datanode1 | datanode1 | f | postgres | base/15854/19863 | 0 | 2939427 | 2023-11-06 09:54:15+08 | 2023-11-06 09:54:15+08 | 2023-11-06 09:54:15+08 | pgscrf_meta_15854_20231106095437555205 | coordinator1 | coordinator1 | f | postgres | /test/obsview/cudesc_check/user1/obs.xxx.com/cu_obs_tbs/tablespace_secondary/15854/19865 | 0 | 0 | | | | pgscrf_meta_15854_20231106095438240991 | (2 rows)
  • pgxc_archive_scan_residualfiles() 描述:用于归档所有节点上残留文件记录。该函数为集群级函数,限定在CN执行,与当前所在的数据库无关。不支持备机执行。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 node_name text 主备节点共用的统一名称。 instance_id text 记录残留文件所在的节点名称。 archive text 归档后的本地文件夹路径。OBS路径的残留文件归档在对应OBS数据库目录下。 count int 归档文件夹中的文件数量。 size int 归档文件夹中的文件大小。 示例: 1 2 3 4 5 6 select * from pgxc_archive_scan_residualfiles(); node_name | instance_id | archive | count | size --------------+--------------+--------------------------------------------------------------+-------+------ datanode1 | datanode1 | pg_residualfiles/archive/pgscrf_archive_20231106103246489550 | 1 | 0 coordinator1 | coordinator1 | pg_residualfiles/archive/pgscrf_archive_20231106103246592449 | 1 | 0 (2 rows)
  • pg_rm_scan_residualfiles_archive() 描述:用于删除当前实例中归档文件列表中的文件。该函数为实例级函数,与当前所在的数据库无关,可以在任意实例上运行。不支持备机执行。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 count int 所删除的残留文件数。本地路径的残留文件统计所删除的文件数,OBS路径的残留文件统计所删除的表目录数量。 size int 所删除的残留文件中本地文件总大小。OBS路径的残留文件该项均为0。 示例: 1 2 3 4 5 select * from pg_rm_scan_residualfiles_archive(); count | size -------+------ 1 | 0 (1 row)
  • pgxc_rm_scan_residualfiles_archive() 描述:用于删除所有节点上归档目录中的文件。该函数为集群级函数,限定在CN执行,与当前所在的数据库无关。不支持备机执行。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 node_name text 主备节点共用的统一名称。 instance_id text 记录残留文件所在的节点名称。 count int 所删除的残留文件数。本地路径的残留文件统计所删除的文件数,OBS路径的残留文件统计所删除的表目录数量。 size int 所删除的残留文件中本地文件总大小。OBS路径的残留文件该项均为0。 示例: 1 2 3 4 5 6 select * from pgxc_rm_scan_residualfiles_archive(); node_name | instance_id | count | size --------------+--------------+-------+------ datanode1 | datanode1 | 1 | 0 coordinator1 | coordinator1 | 1 | 0 (2 rows)
  • pg_archive_scan_residualfiles() 描述:用于归档当前节点的所有残留文件记录。该函数为实例级函数,与当前所在的数据库无关,可以在任意实例上运行。不支持备机执行。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 archive text 归档后的本地文件夹路径。obs路径的残留文件归档在对应obs数据库目录下。 count int 归档文件夹中的文件数量 size int 归档文件夹中的文件大小 示例: 1 2 3 4 5 select * from pg_archive_scan_residualfiles(); archive | count | size -------------------------------------------------------------------+--------+------ pg_residualfiles/archive/pgscrf_archive_15842_20230912182934335330| 1 | 0 (1 row)
  • pg_obs_file_size(scheme_name.tablename,partition_name) 描述:获取obs上分区表分区的列存CU文件名、文件大小信息,仅对列存版本colversion为3的表生效。 返回值类型:record。 函数参数字段如下: 名称 类型 描述 scheme_name.tablename regclass 主表的schema.tablename/tablename/oid。 partition_name cstring 分区表表名。 示例: 1 2 3 4 5 6 7 8 elect pg_obs_file_size('public.t2_col_part_obs','p1'); pg_obs_file_size ---------------------------- (C1_16777266462721.0,1024) (C1_16777266429953.0,1024) (C1_16777249734657.0,1024) (C1_16777249701889.0,1024) (4 rows)
  • pg_scan_residualfiles() 描述:用于扫描当前节点所在数据库的所有残留文件记录。连接到CN执行时,扫描当前CN节点所在数据库的本地残留文件和OBS全部残留文件。连接到DN执行时,扫描当前DN节点所在数据库的本地残留文件。该函数为库级函数,只针对当前数据库。不支持备机执行。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 pgscrf text 记录残留文件信息的元文件本地路径。
  • pgxc_scan_residualfiles() 描述:用于扫描所有节点上当前数据库的残留文件记录。该函数为集群级函数,限定在CN执行,与连接CN上当前所在的数据库相关。不支持备机执行。 参数类型: 无。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 node_name text 主备节点共用的统一名称。 instance_id text 记录残留文件所在的节点名称。 pgscrf text 记录残留文件信息的元文件本地路径。
  • pg_obs_file_size(scheme_name.tablename) 描述:获取obs上的表或者分区的CU文件名、文件大小信息,仅对列存版本colversion为3的表生效。 返回值类型:record。 函数参数字段如下: 名称 类型 描述 scheme_name.tablename regclass 主表的schema.tablename/tablename/oid,或者分区表的oid。如果存在主表oid和分区oid相同的场景,建议使用表名作为入参。 示例: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 --入参为tablename: elect pg_obs_file_size('t2_col_part_obs'); pg_obs_file_size ---------------------------- (C1_16777266462721.0,1024) (C1_16777266429953.0,1024) (C1_16777249734657.0,1024) (C1_16777249701889.0,1024) (4 rows) --入参为schema.tablename select pg_obs_file_size('public.t2_col_part_obs'); pg_obs_file_size ---------------------------- (C1_16777266462721.0,1024) (C1_16777266429953.0,1024) (C1_16777249734657.0,1024) (C1_16777249701889.0,1024) (4 rows) --入参为oid select pg_obs_file_size(16593); pg_obs_file_size ---------------------------- (C1_16777266462721.0,1024) (C1_16777266429953.0,1024) (C1_16777249734657.0,1024) (C1_16777249701889.0,1024) (4 rows)
  • pg_get_scan_residualfiles() 描述:用于获取当前节点的所有残留文件记录。该函数为实例级函数,与当前所在的数据库无关,可以在任意实例上运行。不支持备机执行。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 handled bool 残留文件是否已经被移动或者被更改。 dbname text 所属数据库名称。 residualfile text 残留文件路径。 size int 残留文件大小,OBS路径的残留文件该项为0。 inode int 残留文件在文件系统的索引节点号,OBS上残留文件该项为0。 atime time 残留文件上一次访问时间,OBS路径的残留文件该项为空。 mtime time 残留文件上一次修改时间,OBS路径的残留文件该项为空。 ctime time 残留文件上一次状态改动时间,OBS路径的残留文件该项为空。 filepath text 记录残留文件信息的元文件本地路径。 notes text 注释。 示例: 1 2 3 4 5 6 7 select * from pg_get_scan_residualfiles(); handled | dbname | residualfile | size | inode | atime | mtime | ctime | filepath | notes ---------+----------+------------------------------------------------------------------------------------------------------------------------------+------+-------+-------+-------+-------+----------------------------------------+- ------ f | postgres | /test/obsview/cudesc_check/user1/obs.xxx.com/cu_obs_tbs/tablespace_secondary/15854/19865 | 0 | 0 | | | | pgscrf_meta_15854_20231106095438240991 | (1 row)
  • get_global_meta_cache(int) 描述:获取DN上全局缓存的元数据信息。输入参数为桶号,范围为0~511。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 bucket_idx int 元数据对象所在桶号。 meta_seq int 元数据对象在桶中的位置。 db_oid Oid 元数据对象所在数据库的Oid。 meta_oid Oid 元数据对象的Oid。 meta_part_num int 元数据对象包含的分区数量。 meta_idx_num int 元数据对象包含的索引数量。 meta_version text 元数据对象的版本信息。 示例: 1 2 3 4 5 EXECUTE DIRECT ON (datanode5) 'SELECT * FROM get_global_meta_cache(1)'; bucket_idx | meta_seq | db_oid | meta_oid | meta_part_num | meta_idx_num | meta_version ------------+----------+--------+----------+---------------+--------------+---------------- 1 | 1 | 16852 | 18552 | 0 | 0 | 18552 2394152 , (1 row)
  • get_global_meta_cache() 描述:获取DN上全局缓存的元数据信息。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 bucket_idx int 元数据对象所在桶号。 meta_seq int 元数据对象在桶中的位置。 db_oid Oid 元数据对象所在数据库的Oid。 meta_oid Oid 元数据对象的Oid。 meta_part_num int 元数据对象包含的分区数量。 meta_idx_num int 元数据对象包含的索引数量。 meta_version text 元数据对象的版本信息。 示例: 1 2 3 4 5 EXECUTE DIRECT ON (datanode5) 'SELECT * FROM get_global_meta_cache()'; bucket_idx | meta_seq | db_oid | meta_oid | meta_part_num | meta_idx_num | meta_version ------------+----------+--------+----------+---------------+--------------+---------------- 1 | 1 | 16852 | 18552 | 0 | 0 | 18552 2394152 , (1 row)
  • pgxc_global_meta_cache_reset() 描述:清理所有DN上全局缓存的元数据信息。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 node_name text DN实例名字。 meta_num int 清理元数据个数。 示例: 1 2 3 4 5 6 7 SELECT * FROM pgxc_global_meta_cache_reset(); node_name | meta_num -----------+---------- datanode1 | 1 datanode2 | 1 datanode3 | 1 (3 row)
  • pgxc_get_global_meta_cache() 描述:获取所有DN上全局缓存的元数据信息。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 node_name text DN实例名字。 bucket_idx int 元数据对象所在桶号。 meta_seq int 元数据对象在桶中的位置。 db_oid Oid 元数据对象所在数据库的Oid。 meta_oid Oid 元数据对象的Oid。 meta_part_num int 元数据对象包含的分区数量。 meta_idx_num int 元数据对象包含的索引数量。 meta_version text 元数据对象的版本信息。 示例: 1 2 3 4 5 6 7 SELECT * FROM pgxc_get_global_meta_cache(); node_name | bucket_idx | meta_seq | db_oid | meta_oid | meta_part_num | meta_idx_num | meta_version -----------+------------+----------+--------+----------+---------------+--------------+---------------- datanode1 | 1 | 1 | 16852 | 18552 | 0 | 0 | 18552 2394152 , datanode2 | 1 | 1 | 16852 | 18552 | 0 | 0 | 18552 2394152 , datanode3 | 1 | 1 | 16852 | 18552 | 0 | 0 | 18552 2394152 , (3 row)
  • pgxc_get_meta_version() 描述:获取所有DN上Session内缓存的所有元数据版本信息。输出为该主表所有相关的附属表的版本信息,包括index、partition和主表自身。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 node_name text DN实例名字。 obj_oid Oid 元数据对象的Oid。 obj_type char 元数据类型,p(partition),i(index),r(relation)。 obj_parent_oid Oid 元数据对象所附属的主表Oid。 meta_version Xid 元数据对象的版本信息。
  • get_meta_version(Oid) 描述:获取DN上Session内缓存的元数据版本信息。输入参数为主表的Oid,输出为该主表所有相关的附属表的版本信息,包括index、partition和主表自身。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 obj_oid Oid 元数据对象的Oid。 obj_type char 元数据类型,p(partition),i(index),r(relation)。 obj_parent_oid Oid 元数据对象所附属的主表Oid。 meta_version Xid 元数据对象的版本信息。 示例: 1 2 3 4 5 6 7 SELECT * FROM get_meta_version(16972); obj_oid | obj_type | obj_parent_oid | meta_version ---------+----------+----------------+-------------- 16972 | r | 16972 | 267910 16952 | p | 16972 | 267910 16958 | p | 16972 | 267910 (3 row)
  • get_meta_version() 描述:获取DN上Session内缓存的所有元数据版本信息。输出为所有主表及其相关的附属表的版本信息,包括index、partition和主表自身。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 obj_oid Oid 元数据对象的Oid。 obj_type char 元数据类型,p(partition),i(index),r(relation)。 obj_parent_oid Oid 元数据对象所附属的主表Oid。 meta_version Xid 元数据对象的版本信息。 示例: 1 2 3 4 5 6 7 SELECT * FROM get_meta_version(); obj_oid | obj_type | obj_parent_oid | meta_version ---------+----------+----------------+-------------- 16972 | r | 16972 | 267910 16952 | p | 16972 | 267910 16958 | p | 16972 | 267910 (3 row)
  • pgxc_get_meta_version(schemaname, relname) 描述:获取所有DN上Session内缓存的指定元数据版本信息。输入参数为主表的Schema名字和Table名字,输出为该主表所有相关的附属表的版本信息,包括index、partition和主表自身。 返回值类型:record。 函数返回字段如下: 名称 类型 描述 node_name text DN实例名字。 obj_oid Oid 元数据对象的Oid。 obj_type char 元数据类型,p(partition),i(index),r(relation)。 obj_parent_oid Oid 元数据对象所附属的主表Oid。 meta_version Xid 元数据对象的版本信息。
  • 示例 使用语句SELECT * FROM pgxc_obs_io_scheduler_periodic_stats查询视图内容,结果示例: SELECT * FROM pgxc_obs_io_scheduler_periodic_stats; node_name | io_type | recent_throttled_req_num | total_throttled_req_num | last_throttled_dur(s) | waiting_req_num | mean_tps | mean_req_size(KB) | mean_req_latency(ms) | max_req_latency(ms) | mean_bps(KB/s) | duration(s) --------------+---------+--------------------------+-------------------------+-----------------------+-----------------+----------+-------------------+----------------------+---------------------+----------------+------------- dn_6001_6002 | S | 0 | 0 | 0 | 0 | 0.00 | 0 | 0 | 0 | 0 | 155 dn_6001_6002 | R | 0 | 0 | 0 | 0 | 0.00 | 0 | 0 | 0 | 0 | 155 dn_6001_6002 | W | 0 | 0 | 0 | 0 | 0.00 | 0 | 0 | 0 | 0 | 155 cn_5001 | S | 0 | 0 | 0 | 0 | .03 | 0 | 207 | 519 | 0 | 155 cn_5001 | R | 0 | 0 | 0 | 0 | 0.00 | 0 | 0 | 0 | 0 | 155 cn_5001 | W | 0 | 0 | 0 | 0 | .01 | 0 | 288 | 288 | 0 | 155 (6 rows) 如果想让“mean_tps”数值中小数点前的0显示出来,需要设置 set behavior_compat_options='display_leading_zero'; 再执行查询视图语句“select * from pgxc_obs_io_scheduler_periodic_stats;” 显示结果如下: SELECT * FROM pgxc_obs_io_scheduler_periodic_stats; node_name | io_type | recent_throttled_req_num | total_throttled_req_num | last_throttled_dur(s) | waiting_req_num | mean_tps | mean_req_size(KB) | mean_req_latency(ms) | max_req_latency(ms) | mean_bps(KB/s) | duration(s) --------------+---------+--------------------------+-------------------------+-----------------------+-----------------+----------+-------------------+----------------------+---------------------+----------------+------------- dn_6001_6002 | S | 0 | 0 | 0 | 0 | 0.36 | 0 | 132 | 326 | 0 | 177 dn_6001_6002 | R | 0 | 0 | 0 | 0 | 0.00 | 0 | 0 | 0 | 0 | 177 dn_6001_6002 | W | 0 | 0 | 0 | 0 | 0.00 | 0 | 0 | 0 | 0 | 177 cn_5001 | S | 0 | 0 | 0 | 0 | 0.00 | 0 | 0 | 0 | 0 | 177 cn_5001 | R | 0 | 0 | 0 | 0 | 0.00 | 0 | 0 | 0 | 0 | 177 cn_5001 | W | 0 | 0 | 0 | 0 | 0.00 | 0 | 0 | 0 | 0 | 177
  • 使用步骤 UCS最基础的入门操作包括创建容器舰队、添加集群、管理多集群生命周期,通过这三个步骤即可实现在跨云跨地域的多集群场景下轻松部署、管理和扩展容器化应用程序。 图1为UCS的入门使用流程,实际上针对不同集群类型和不同管理目的,在使用方式上有细微的差异,具体差异请参考对应使用方式的指导文档,本入门指导旨在帮助您对UCS产品入门操作进行初步认识。 图1 UCS入门流程 进行必要的准备工作,请参见步骤一:准备工作。 创建容器舰队,请参见步骤二:创建容器舰队。 为容器舰队添加集群,请参见步骤三:为容器舰队添加集群。 管理多集群生命周期,请参见步骤四:管理多集群生命周期。
  • 操作步骤 假设目前业务部署在多个地区,全国用户默认访问“华北-北京四”区域的业务,而华东地区用户需要访问部署在“华东-上海一”区域的业务,以降低用户的使用时延。此时可通过创建流量策略来为已有应用进行基于地域的流量切分。 登录UCS控制台。 在左侧树状导航栏,选择“流量分发”。 单击页面右上角“创建流量策略”按钮。 根据页面提示,选择已添加解析的域名,并填写域名前缀。如果没有子域名,域名前缀可不填。 添加调度策略,本例中仅填写关键参数,其余参数保持默认,如表1所示。对不同地域的用户创建流量策略,可重复此步骤,并选择不同的集群和线路类型。 表1 调度策略关键参数 参数 参数说明 集群 选择一个状态为“运行中”的目标集群,列表中将自动获取UCS接管的所有集群。 命名空间 选择目标服务所在的命名空间,默认为“default”。 服务 选择一个目标服务,仅支持访问类型为负载均衡的服务,查询结果已过滤。 线路类型 运营商线路解析:根据访问用户所在运营商网络调度到最佳访问地址。默认值为“电信/地区默认”,支持指定运营商及地区,其中地区选择的细粒度为省级。 地域解析:根据访问用户所处地理位置调度到最佳访问地址。默认值为“中国大陆/地区默认”,支持全球地域选择,其中中国大陆地区细粒度为省级,其余地域细粒度为国家/地区。 图1 添加调度策略 单击“确定”,待流量调度策略创建成功后,华东地区的用户将优先访问选定线路。 检验新增调度策略是否生效,参考怎样测试域名解析是否生效?。 您可以在华东地区使用已经连接Internet的终端,输入如下命令测试调度策略是否生效: nslookup demo.***.com 如果终端的操作系统没有自带nslookup命令,需要手动安装后才能使用。例如CentOS系统,可执行yum install bind-utils安装。 回显如下,如其中“Address”的IP地址为目标集群负载均衡IP,则表示调度策略创建成功。 Server: *** Address: *.*.*.* Non-authoritative answer: Name: demo.***.com Address: 124.*.*.*
  • 分发实例 登录UCS控制台,在左侧导航栏中选择“云原生服务中心”,单击“我的订阅”页签。 将鼠标移动至CockroachDB服务选项卡,并单击“创建实例”,如图2所示。 图2 创建实例 根据界面引导,选择实例的部署场景、区域、容器集群、命名空间等参数,如图3所示。 图3 配置基本信息 单击“下一步:实例参数”,填写实例基本参数。在本示例中,CockroachDB服务仅支持Yaml创建方式,参数配置保持默认。 图4 配置实例参数 单击“下一步:信息确认”,仔细查阅页面下方提示信息并勾选“我已知晓”,单击“提交”,等待实例创建成功。 实例创建成功后,在“服务实例”页面可以查看CockroachDB服务实例的信息。 图5 服务实例
  • 注册集群 登录UCS控制台。 在左侧导航栏选择“容器舰队”,单击附着集群选项卡中的“注册集群”按钮。 配置集群参数。本例中仅填写关键参数,如表1所示。 表1 添加集群参数配置 参数 是否必需 参数说明 集群名称 是 输入集群的自定义名称。名称需以小写字母开头,由小写字母、数字、中划线(-)组成,且不能以中划线(-)结尾。 集群服务商 是 选择集群的服务商。 所属区域 是 选择集群所在区域。 上传KubeConfig文件 是 上传获取KubeConfig文件中保存的KubeConfig文件,以完成集群认证。支持JSON或YAML格式。 选择Context 是 选择对应的Context。 Context选项列表会在上传KubeConfig文件后自动获取,默认的选项为KubeConfig文件中“current-context”字段指定的Context。 容器舰队 否 选择步骤二:创建容器舰队创建的舰队。 图1 注册集群 单击“确定”。
共100000条