华为云用户手册

  • 通过使用率分析资源包使用情况 场景示例:客户购买OBS的包年资源包,按小时重置40GB的存储空间,订购周期为2021/04/30~2022/04/30。当前客户想要查看近3个月(即2021/12/01~2022/02/28)存储空间的使用率情况,查看周期内该资源包总使用量为40GB*24h*90天*1,073,741,824Byte=92,771,293,593,600 Byte 如上图所示,实际已使用量(即被按需资源抵扣的总用量)为16,060,131,693 Byte,资源包未使用量(即未被抵扣的使用量)为92,755,233,461,907 Byte,则使用率=资源包已使用量/资源包总使用量*100%=16,060,131,693/92,771,293,593,600*100%=0.02%。 由于当前平均使用率过低,您可以检查是否资源包购买数量过多,或按需资源没有按照资源包的规格开通。
  • 步骤四:通过成本标签查看成本数据 通过成本标签查看成本数据时,建议基于摊销成本进行数据汇总。 登录华为云控制台,进入成本中心。 选择“成本分析”。 通过成本标签进行成本数据筛选。 通过成本标签维度进行成本数据汇总。 如上图所示,表示根据指定标签键Env作为汇总维度展示的成本数据。 通过成本标签进行成本数据过滤。 如上图所示,图表中展示标签键Group的取值为IT-Group、bluFrog、yellowDuck时,按产品类型维度汇总的成本数据。 根据标签查看成本明细数据。 单击“导出成本明细”,在导出的原始成本或摊销成本(文件名标识为%账号名%_AmortizedCostDetailByUsage_YYYY-MM)的成本明细文件中,可以根据标签过滤成本明细数据。
  • 步骤三:分析异常成本原因 在“异常成本详细信息”页面,单击潜在产品操作列的“前往对应成本分析查看”。 跳转到“成本分析”页面后,过滤器中会自动携带过滤条件。 如图所示,表示2022.11.14弹性云服务器产生了额外的新购,消费了4,656.96元,您需要确认该新购是否为异常消费。 您可以选择按“企业项目”维度进行汇总, 查看异常消费比较多的企业项目。 如下图所示,表示2022.11.14弹性云服务器产生异常新购消费中,没有特别设置企业项目的消费为4,556.96元,不支持设置企业项目的消费为100元。
  • 成本分配的建议原则 基于实际使用,即成本归属于实际使用者。 示例:企业子客户是资源的使用者,但是支付账号为企业主,则该资源产生的成本归属为企业子。 基于实际消耗,即根据摊销成本进行分配。 摊销成本反映了包年/包月、预留实例的预付金额在订单有效期间内按日分摊后的有效成本。比如您购买了有效期为一年的云服务共365元,则每天的摊销成本为1元。 分摊公共成本,即根据一定的规则,对公共成本进行拆分。 按比例拆分:按照各目标成本的权重作为分配比例的参考。 示例:拆分目标B的成本是800元,拆分目标C的成本是200元,即拆分目标B:拆分目标C=4:1,则将拆分来源80%的成本分配给B,20%分配给C。 平均拆分:将拆分来源的成本平均分配给各拆分目标。 示例:当前存在两个拆分目标A和B,则拆分目标A和B分别被分配到50%。 自定义拆分:将拆分来源的成本按照您自定义的比例分配给各拆分目标,比例总计必须为100%。
  • 注意事项 解决方案组合产品和小颗粒套餐只支持整体退订。 订单中存在绑定关系的资源,需整体退订;挂载关系的资源可单独退订。 示例:客户购买了一台包年/包月弹性云服务器,并且绑定一块40GB通用型SSD系统盘,配置了VPC网络。若客户对该包年/包月弹性云服务器退订时,需连同绑定的40GB通用型SSD系统盘一起退订,VPC网络可选择单独退订。 新购资源开通存在部分成功/部分失败的场景,开通失败的资源自动退订,退订开通成功的资源有如下三种情况: 账号还有五天无理由退订配额,则五天内退订开通成功的资源属于五天无理由退订,且占用五天无理由退订资源个数。 账号没有五天无理由退订配额,则五天内退订开通成功的资源仍属于非五天无理由退订,需要收取手续费、已消费金额,不退还已使用代金券和折扣券。 超过五天后退订开通成功的资源,为非五天无理由退订,需要收取手续费、已消费金额,不退还已使用代金券和折扣券。 目前支持批量退订的资源有:弹性云服务器(E CS )、云硬盘(EVS)、关系型数据库(RDS)、虚拟私有云(VPC)和云容器引擎(CCE)。 在执行退订操作前,请确保退订资源上的数据已完成备份或者迁移,退订后,未放入回收站的资源会被删除并无法找回数据,请谨慎操作。 若订单是通过第三方在线支付(如微信、支付宝)退款会返还到华为云账户;若是云闪贷支付,云闪贷首付款金额会先退还至银行,银行扣除本金和利息后,剩余金额再退还至客户账户。 退订列表右上角有关于5天无理由退订的剩余退订资源个数提示,请注意查看。
  • 退款资金流向 云服务退订、资源降配退款或硬件商品退货后,客户可在订单详情页查看退款处理进展和退款金额,若订单已完成,可在“账单管理>流水账单”查到详细流水,具体操作请参见查看费用账单。 通过华为云账户余额支付或第三方在线支付(如支付宝、微信、网银等)的订单,退订款项会退还至华为云账户余额;若订单通过合作伙伴代付,退订款项会退还至关联的合作伙伴华为云账户余额;若订单通过云闪贷支付,云闪贷首付款金额会先退还至银行,银行扣除本金和利息后,剩余金额再退还至华为云账户余额。 若产品退订成功或资源降配订单已完成,退订款项大约会在1个工作日内退还至华为云账户(退款仅指客户以现金或储值卡方式支付的订单款项,客户通过代金券、优惠券抵扣的部分是否退回请参见用券买的产品,退订时券怎么处理? 退订款项退还至华为云账户余额后,若需要提现,操作步骤请参见余额提现,提现到账时间请参见提现要多久? 。 对于待审核的订单,需要等待订单审核通过,订单状态为“已完成”时,退订款项才会退还至账户余额。若需要紧急审批,请联系客服或客户经理。 父主题: 退订与退换货
  • 续费周期不可退订场景 续费周期生效前,若进行了变更操作,只能退订资源,不能退订续费周期。 存在带宽加油包,不允许退订续费周期。必须先退订加油包后,才能退订续费周期。 包年/包月资源续费成功后再追加附属资源,只能退订资源,不能退订续费周期;若包年/包月资源追加附属资源后再续费,可以退订续费周期。 云速建站不允许退订续费周期。 正在进行其他交易,不允许退订续费周期。 续费订单参与了活动、促销等,不允许退订续费周期。 使用现金券支付的续费订单或云商店续费订单或伙伴代付续费订单,开具发票后不允许退订续费周期。 公安冻结场景下,不允许退订续费周期。
  • 退订规则 退订未生效的续费周期,不收取手续费,退还已使用的代金券;退订已生效的续费周期,属于非5天无理由退订。 示例: 客户C于2020/10/20 购买了一台弹性 云服务器ECS 03,购买时长为1个月。 2020/11/01,客户C对ECS 03进行续费,续费时长为1个月,订单金额为100.00元,应付金额为100.00元,代金券抵扣20.00元,现金账户支付80.00元。(已使用的代金券失效时间为2020/12/31 23:59:59) 2020/11/05,客户C对ECS 03的未生效续费周期进行退订,退订金额=应付金额=100.0元,其中退还现金账户80.00元,退还代金券20.00元。
  • 退订规则 非五天无理由退订需要收取手续费、已消费金额,不退还已使用代金券和折扣券。 退订手续费和已消费金额包含现金、现金券和储值卡。 退订费用计算说明: 退款金额= 订单实付金额-已消费金额-退订手续费,具体退款金额以退订页面显示的为准(当按照退款金额计算公式得出的退款金额如小于 0,则不予退款)。 订单实付金额:包含客户现金账户支付的支付金额和现金券抵扣的金额,但不包含客户通过代金券抵扣的金额。 已消费金额= 订单实付金额×(实际消费时长/订单总时长)(退订计算公式仅供参考,实际消费时长以“天”为单位,实际金额以账单、消费明细中的金额为准) 退订手续费:包含现金账户手续费和现金券手续费。若客户有已生效的框架合同且框架合同有退订免手续费条款,则在退订资源时免除退订手续费。 手续费的收费标准与实际消费时长、产品周期类型有关,如表1所示。 表1 退订手续费收费标准 产品类型 实际消费时长≤1年 1年<实际消费时长 ≤2年 2年<实际消费时长≤3年 3年<实际消费时长≤4年 4年<实际消费时长≤5年 5年预付费产品 实付金额×30% 实付金额×40% 实付金额×30% 实付金额×15% 实付金额×20% 4年预付费产品 实付金额×30% 实付金额×40% 实付金额×20% 实付金额×20% - 3年预付费产品 实付金额 ×15% 实付金额 ×10% 实付金额 ×5% - - 2年预付费产品 实付金额 ×15% 实付金额 ×10% - - - 1年预付费产品 实付金额 ×10% - - - - 包月预付费产品 实付金额 ×10% - - - - 4年、5年预付费产品如下表2所示。 表2 4年、5年预付费产品 服务 系列 区域 ECS S6系列 华北-北京四、华东-上海二、华南-广州 VPC 全动态BGP弹性公网IP、全动态BGP独享带宽、共享带宽 华北-北京四、华东-上海二、华南-广州 EVS 超高IO云硬盘、高IO云硬盘、普通IO云硬盘 华北-北京四、华东-上海二、华南-广州 CBR 全系列 中国站 示例1:如图1所示 客户于2022/8/23 购买了一块包月云硬盘(EVS),到期时间为2022/9/23,订单应付金额90.00元,实付金额90.00元,使用现金账户支付90.00元。 2022/9/2 客户对 EVS 进行退订,实际消费时长为10天,剩余天数为22天,订单总时长为32天。 退订手续费=实付金额 ×10%=90.00×10%=9.00元 已消费金额=现金账户支付金额×(实际消费时长/订单总时长)=90.00×(10/32)=28.13元 (退订计算公式仅供参考,实际金额以账单、消费明细中的金额为准) 退订金额=订单实付金额-已消费金额-退订手续费=90.00-28.13-9.00=52.87元。(订单支付时若使用代金券抵扣,退订时不退还已使用的代金券) 图1 退订费用计算示例
  • 云服务退订规则概览 云服务退订主要分为四个场景:退订使用中的资源、退订未生效的资源、退订续费周期、退订创建/变更失败的资源。不同退订场景下是否收取手续费以及券是否可退见表1。 其中退订使用中的资源、退订未生效的资源、退订续费周期时均有可能涉及到大额退订(退订金额超过5万元),其注意事项请参见大额退订。 表1 退订规则介绍 退订场景 已消费金额 手续费 代金券 现金券/储值卡 折扣券 退订使用中的资源 非五天无理由退订 收取 收取 不退还 部分可退(需扣减已发生费用和退订手续费) 不退还 可五天无理由退订 不收取 不收取 退还 退还 不退还 退订未生效的资源 不收取 不收取 退还 退还 不退还 退订续费周期 不收取 不收取 退还 退还 不退还 退订创建/变更失败的资源 不收取 不收取 退还 退还 不退还 “退订”仅针对包年/包月资源,当客户想终止服务时,可基于退订规则发起退订资源操作并退还相应款项;按需资源,客户可直接在控制台释放/删除资源,不涉及退款申请操作。 订单使用代金券、现金券、储值卡金额抵扣支付,发生退订时,若代金券、现金券、储值卡已过期失效,则退回的金额失效。 部分云服务不支持退订,如域名、云会议、welink等,具体请参见不支持退订云服务产品清单。 更详细规则及退订操作请根据具体退订场景去对应文档中查看。 退订成功后退订金额会返还到您的华为云现金账户,具体请参见退款资金流向。 父主题: 云服务退订
  • 退订后钱退至哪里?什么时候到账? 云服务退订或资源降配退款后,客户可在订单详情页查看退订进度和退款金额,若退订已完成,可在“账单管理>流水账单”查到详细流水,具体操作请参见查看费用账单。 若订单使用余额支付,则退款大约1个工作日退至华为云账户。 若订单是通过第三方在线支付(包括支付宝、微信、银行卡等)的,退款大约1个工作日退还至华为云账户。客户可以自己发起提现,请参见余额提现。提现到账时间请参见 提现要多久? 。对于待审核的订单,由于是人工审核,不能保证时效性。 若订单是通过合作伙伴代付,退款会退还至合作伙伴华为云账户。 更多详细信息请参见退款资金流向。 父主题: 退订与退换货
  • 如何计算退订费用? 五天无理由退订/退订续费周期费用计算: 全额退订,退款金额=订单实付金额,退还已使用的代金券、现金券、储值卡,不退还折扣券。 非五天无理由退订费用计算: 需要收取退订手续费,不退还代金券、折扣券,退还现金券、储值卡。 退款金额= 订单实付金额-已消费金额-退订手续费。具体退款金额以退订页面显示的为准。(当按照退款金额计算公式得出的退款金额如小于 0,则不予退款。) 订单实付金额:包含客户现金账户支付的支付金额和现金券抵扣的金额,但不包含客户通过代金券抵扣的金额。 已消费金额= 订单实付金额×(实际消费时长/订单总时长)(退订计算公式仅供参考,实际消费时长以“天”为单位,实际金额以账单、消费明细中的金额为准) 退订手续费:包含现金账户手续费和现金券手续费。若客户有已生效的框架合同且框架合同有退订免手续费条款,则在退订资源时免除退订手续费。 手续费的收费标准,如下表所示: 产品类型 实际消费时长≤1年 1年<实际消费时长 ≤2年 2年<实际消费时长≤3年 3年<实际消费时长≤4年 4年<实际消费时长≤5年 5年预付费产品 实付金额×30% 实付金额×40% 实付金额×30% 实付金额×15% 实付金额×20% 4年预付费产品 实付金额×30% 实付金额×40% 实付金额×20% 实付金额×20% - 3年预付费产品 实付金额 ×15% 实付金额 ×10% 实付金额 ×5% - - 2年预付费产品 实付金额 ×15% 实付金额 ×10% - - - 1年预付费产品 实付金额 ×10% - - - - 包月预付费产品 实付金额 ×10% - - - -
  • 当使用流量超出套餐的月流量包限额时,如何计费? 云耀云服务器L实例套餐内包含每月固定流量包,固定流量使用完后将产生超额流量。超额流量以按流量计费的方式按需收取费用。超额流量的单价为0.8元/GB。 L实例仅对出网流量( 云服务器访问外网 的流量)计费,入网流量(外部访问云服务器的流量)不计费。 月流量包使用周期为自购买日期起到下个月相同时间时段内。例如6月5日10:00:00购买L实例,单月流量包使用截止时间为7月5日23:59:59。 流量包当月剩余流量按月清零,不累计至下月流量配额中。
  • 修订记录 发布日期 更新说明 2023-12-21 第六次正式发布。 新增 如何为L实例申请并安装SSL证书? 2023-12-07 第五次正式发布。 修改 云耀云服务器L实例支持升级vCPU/内存/系统盘容量/峰值带宽/流量包规格吗?,支持升级实例。 是否支持跨云迁移到云耀云服务器L实例?,支持迁移修改内容。 2023-11-13 第四次正式发布。 新增 没有购买云耀云服务器L实例的权限怎么办? 使用Linux私有镜像创建/切换服务器后,无法重置密码怎么办?(遗忘私有镜像初始密码) 使用Linux私有镜像创建/切换服务器后,无法重置密码怎么办?(已知私有镜像初始密码) 使用私有镜像创建/切换服务器后,主机安全(HSS)服务未启动怎么办? 2023-09-21 第三次正式发布。 修改 操作系统/镜像,增加“如何确认应用镜像启动完毕?”。 2023-09-06 第二次正式发布。 新增 云耀云服务器L实例和云耀云服务器是什么关系? 是否支持跨云迁移到云耀云服务器L实例? 操作系统/镜像 流量 磁盘管理 2023-06-30 第一次正式发布。
  • 步骤一:在控制台扩展云硬盘容量 登录云耀云服务器L实例控制台。 在“云耀云服务器L实例”列表中单击云耀云服务器L实例卡片,进入资源页面。 在左侧列表中选择“云硬盘 EVS”,单击“扩容”。 在扩容页面,输入数据盘目标容量。 如果您的云耀云服务器L实例包含云备份,在扩容页面将会显示“扩容云备份”配置项。请根据您的需要,选择是否对云备份扩容。 如果需要对云备份扩容,请勾“选扩容云备份”,并输入云备份目标容量。 如果不需要对云备份扩容,请忽略此配置。 单击“立即购买”,根据界面提示完成购买。 购买后,在控制台查看扩容后的数据盘容量是否正常。
  • 操作流程 步骤一:在控制台扩展云硬盘容量。 通过管理控制台扩容成功后,仅扩大了云硬盘的存储容量,此时不能正常使用扩展的容量。 对于Windows云服务器,如果在“关机”状态下扩容磁盘,则开机后数据盘的新增容量会自动扩展至末尾分区内,此时新增容量可以直接使用,无须执行步骤二。 步骤二:扩展磁盘分区和文件系统。 登录云服务器,将扩展的容量增加到已有分区或者分配为新的分区,扩展分区和文件系统后,才能正常使用扩展的容量。
  • 背景知识 安全组是一个逻辑上的分组,为同一个VPC内的云服务器提供访问策略。用户可以在安全组中定义各种访问规则,当云服务器加入该安全组后,即受到这些访问规则的保护。 系统为每个网卡默认创建一个默认安全组,默认安全组的规则是对出方向上的数据报文全部放行,入方向访问受限。您可以使用默认安全组,也可以根据需要创建自定义的安全组。 更多关于安全组的信息,请参阅安全组文档。 安全组需在网络互通的情况下生效。若实例属于不同VPC,但同属于一个安全组,则此安全组不生效,您可以使用对等连接等产品建立VPC连接互通。VPC连接请参见VPC连接。
  • 修改安全组 登录云耀云服务器L实例控制台。 在“云耀云服务器L实例”列表中单击云耀云服务器L实例卡片,进入资源页面。 在左侧列表中单击“云耀云服务器L实例”,单击云服务器名称,进入云服务器详情页面。 单击左上角“更改安全组”。 或者选择“安全组”页签,在“基本信息”区域中单击“更改安全组”。 根据界面提示,在列表中选择安全组。 您可以同时勾选多个安全组,此时,云服务器的访问规则遵循几个安全组规则的并集。 如需创建新的安全组,请单击“新建安全组”。详细操作请参见创建安全组。 使用多个安全组可能会影响云服务器的网络性能,建议您选择安全组的数量不多于5个。 单击“确定”,完成更改安全组的操作。
  • 在环境变量中引用Secret Secret最常见的用法是作为环境变量注入到容器中,如下示例。 apiVersion: v1 kind: Pod metadata: name: nginx spec: containers: - image: nginx:latest name: container-0 resources: limits: cpu: 500m memory: 1024Mi requests: cpu: 500m memory: 1024Mi env: - name: key valueFrom: secretKeyRef: name: mysecret key: key1 imagePullSecrets: - name: imagepull-secret
  • 在Volume中引用Secret 在Volume中引用Secret,就是通过文件的方式直接将Secret的每条数据填入Volume,每条数据是一个文件,键就是文件名,键值就是文件内容。 如下示例中,创建一个名为vol-secret的Volume,这个Volume引用名为“mysecret”的Secret,再将Volume挂载到容器的“/tmp”路径下。Pod创建成功后,在容器的“/tmp”路径下,就有两个文件key1和key2,他们的值分别为“VkZNME0wVlpVbEpQVHpGTFdrSkRWVWhCV2s5T1ZrNUxUVlZNUjBzMFRWcElVMFpVUkVWV1N3PT0=”和“T0VkR1RGRlZVRlpVU2xCWFdUZFBVRUZCUmtzPQ==”。 此处key1、key2的值为Base64编码后的值。 apiVersion: v1 kind: Pod metadata: name: nginx spec: containers: - image: nginx:latest name: container-0 resources: limits: cpu: 500m memory: 1024Mi requests: cpu: 500m memory: 1024Mi volumeMounts: - name: vol-secret # 挂载名为vol-secret的Volume mountPath: "/tmp" imagePullSecrets: - name: imagepull-secret volumes: - name: vol-secret secret: # 引用Secret secretName: mysecret
  • 创建Secret 如下示例中定义的Secret中包含两条Key-Value。 apiVersion: v1 kind: Secret metadata: name: mysecret type: Opaque data: key1: VkZNME0wVlpVbEpQVHpGTFdrSkRWVWhCV2s5T1ZrNUxUVlZNUjBzMFRWcElVMFpVUkVWV1N3PT0= # Base64编码后的值 key2: T0VkR1RGRlZVRlpVU2xCWFdUZFBVRUZCUmtzPQ== # Base64编码后的值
  • 创建动态EIPPool 动态EIPPool,即根据用户在EIPPool中填写的配置,动态创建底层的EIP资源,同时在CCI命名空间下创建相应的EIP对象。 以下示例创建了一个名为eippool-demo1的动态EIPPool,具体字段含义见表1。 动态创建独占带宽类型的EIPPool,无需指定带宽ID,示例如下: apiVersion: crd.yangtse.cni/v1 kind: EIPPool metadata: name: eippool-demo1 namespace: xxx # EIPPool所在的命名空间,与Pod保持一致 spec: amount: 3 # EIP资源池中的EIP数量 eipAttributes: networkType: 5_bgp ipVersion: 4 bandwidth: name: cci-eippool-demo1 chargeMode: bandwidth shareType: PER size: 5 动态创建共享带宽类型的EIPPool,必须指定带宽ID且只需填写该字段,示例如下: apiVersion: crd.yangtse.cni/v1 kind: EIPPool metadata: name: eippool-demo1 namespace: xxx spec: amount: 3 eipAttributes: networkType: 5_bgp ipVersion: 4 bandwidth: id: xxx shareType: WHOLE #带宽类型为共享带宽时,必须指定带宽ID。 表1 参数说明 参数 参数含义 约束 name EIPPool的名称 建议EIPPool的名字长度不超过29个字节,超过字段将被截断,但不影响使用。 namespace EIPPool所在的命名空间 与Pod的命名空间保持一致。 amount EIP资源池中的EIP数量 取值范围为0~500。 networkType EIP的类型 取值范围:5_telcom(电信),5_union(联通),5_bgp(全动态BGP),5_sbgp(静态BGP),5_ipv6。 必须是系统具体支持的类型。 ipVersion 弹性公网IP的版本 取值范围:4、6,分别表示创建ipv4和ipv6。 必须是系统具体支持的类型 不填或空字符串时,默认创建ipv4。 chargeMode 按流量计费还是按带宽计费 取值范围:bandwidth,traffic,不填或者为空时默认是bandwidth。其中IPv6国外默认是bandwidth,国内默认是traffic。 shareType 带宽类型 取值范围:PER,WHOLE(PER为独占带宽,WHOLE是共享带宽)。 该字段为WHOLE时,必须指定带宽ID。 id 带宽ID 取值范围:WHOLE类型的带宽ID。 size 带宽大小 取值范围:1-200。 单位:Mbit/s。 具体范围以各区域配置为准,请参见控制台对应页面显示。 对于以上YAML文件中的EIP相关字段,您还可以在EIP参数界面查看参数具体的功能描述,取值范围和约束。 执行以下命令,查看EIPPool详情,-n表示EIPPool所在的命名空间。 回显信息中有名称为eippool-demo1的EIPPool,表示动态EIPPool已创建成功。 # kubectl get eippool -n $namespace_name NAME EIPS USAGE AGE eippool-demo1 0/3 39m 父主题: 创建EIPPool
  • 创建Namespace Namespace下需要有一个Network关联VPC及子网,创建完Namespace后需要创建一个Network。 通常情况下,没有频繁创建Namespace的需求,建议通过云容器实例的控制台界面创建Namespace,具体方法请参见创建命名空间。 以下示例创建一个名为namespace-test的Namespace,指定云容器实例的资源类型为general-computing。 apiVersion: v1 kind: Namespace metadata: name: namespace-test labels: sys_enterprise_project_id: "0" annotations: namespace.kubernetes.io/flavor: general-computing spec: finalizers: - kubernetes 这里的定义文件采用YAML格式描述(如果您对YAML格式不了解,可以参考YAML语法),也可使用JSON格式。 sys_enterprise_project_id:表示企业项目ID,可进入企业管理的企业项目详情页面获取。未开通企业管理的用户无需配置此参数。不配置时默认为0,表示default企业项目。 namespace.kubernetes.io/flavor: general-computing:指定命名空间类型。 命令空间的类型有如下两种: general-computing:通用计算型,支持创建含CPU资源的容器实例及工作负载,适用于通用计算场景。 gpu-accelerated:GPU型,支持创建含GPU资源的容器实例及工作负载,适用于深度学习、科学计算、视频处理等场景。 假如上面Namespace定义的文件名称为ns.yaml,则执行kubectl create -f ns.yaml即可创建命名空间,-f 表示从文件创建。 # kubectl create -f ns.yaml namespace/namespace-test created 执行kubectl get ns查询namespace是否创建成功,ns为namespace的缩写。 # kubectl get ns NAME STATUS AGE namespace-test Active 23s 如上,可以看到namespace-test这个命名空间创建成功,且存在的时长为23秒。 登录云容器实例控制台,单击左侧导航栏“命名空间”,您可以看到命令空间创建成功,但状态为“异常”。这是因为在云容器实例中,您需要为Namespace定义网络策略,具体操作方法请参见创建Network。 图2 Namespace-异常
  • 为kubectl上下文指定Namespace 上面创建Network是在指定的Namespace下创建的,本文档后续的资源创建都是在某个命名空间下操作,每次都指定命名空间比较麻烦,您可以为kubectl上下文指定命名空间,这样在某个上下文中,创建的资源就都是在某个命名空间下,方便操作。 指定Namespace只需要在设置上下文命令中添加一个“--namespace”选项,如下所示。 kubectl config set-context $context --namespace=$ns 其中,$ns为Namespace的名称;$context 为上下文的名称,可以自定义,也可执行如下命令获取: # kubectl config get-contexts CURRENT NAME CLUSTER AUTHINFO NAMESPACE cci-context-cn-east-3-1C8PNI0POPPCSFGXPM6S cci-cluster-cn-east-3 cci-user-cn-east-3-1C8PNI0POPPCSFGXPM6S * cci-context-cn-east-3-hwuser_xxx cci-cluster-cn-east-3 cci-user-cn-east-3-hwuser_xxx kubernetes-admin@kubernetes kubernetes kubernetes-admin 假设,上面创建的Namespace名称为namespace-test,则示例如下。 # kubectl config set-context cci-context --namespace=namespace-test 指定Namespace后,就可以使用 kubectl 命令直接操作云容器实例的相关资源。如下所示,执行kubectl get pod,查看Pod资源,一切正常。 # kubectl get pod No resources found.
  • Namespace与网络的关系 从网络角度看,命名空间对应一个虚拟私有云(VPC)中一个子网,如图1所示,在创建命名空间时会关联已有VPC或创建一个新的VPC,并在VPC下创建一个子网。后续在该命名空间下创建Pod、Service等资源时都会在对应的VPC及子网之内,且占用子网中的IP地址。 通常情况下,如果您在同一个VPC下还会使用其他服务的资源,您需要考虑您的网络规划,如子网网段划分、IP数量规划等,确保有可用的网络资源。 图1 命名空间与VPC子网的关系
  • 限制与约束 一个Pod只能绑定一个EIP,一个EIP只能被一个Pod绑定。 创建Pod时,可指定annotation属性,创建完成后,更新EIP相关的annotation均无效。 EIP随Pod创建的优先级高于使用EIPPool创建的EIP。 绑定已有EIP创建的优先级高于EIP随Pod创建的EIP。 绑定EIP的Pod,如果要被公网成功访问,需要添加放通相应公网请求流量的安全组规则。 已经被Pod绑定的弹性公网IP,请勿通过弹性公网IP的console或API直接操作(修改别名/删除/解绑/绑定/转包周期等操作),否则可能导致资源残留。 绑定已有EIP时,使用负载创建的Pod删除重建后,由于需要等待前一个Pod完成解绑,所以重建的Pod就绪时间会变长。 绑定已有的EIP必须是用户手动创建给Pod使用的,不能使用EIPPool生成的EIP,否则会导致EIP状态异常。
  • 安装并设置kubectl 以下操作以Linux环境为例,更多详情信息请参见安装和配置kubectl。 将下载kubectl中下载的kubectl赋予可执行权限,并放到PATH目录下。 chmod +x ./kubectl mv ./kubectl $PATH 其中,$PATH为PATH路径(如/usr/local/bin),请替换为实际的值。 您还可以通过如下命令查看kubectl的版本,如下所示。 kubectl version --client=true Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.0", GitCommit:"e19964183377d0ec2052d1f1fa930c4d7575bd50", GitTreeState:"clean", BuildDate:"2020-08-26T14:30:33Z", GoVersion:"go1.15", Compiler:"gc", Platform:"linux/amd64"} 配置 IAM 认证信息并持久化到本地。 将下载cci-iam-authenticator中下载的cci-iam-authenticator赋予可执行权限,并放到PATH目录下。 chmod +x ./cci-iam-authenticator mv ./cci-iam-authenticator $PATH 初始化cci-iam-authenticator配置。 初始化cci-iam-authenticator提供了AK/SK和用户名/密码两种方式,请选择其中一种执行。 使用AK/SK的方式配置IAM认证信息 cci-iam-authenticator generate-kubeconfig --cci-endpoint=https://$endpoint --ak=xxxxxxx --sk=xxxxxx 其中,endpoint为云容器实例的Endpoint,获取方法请参见地区和终端节点;ak、sk的获取方法请参见获取AK/SK,ak为文件中Access Key部分,sk为文件中Secret Key部分。 例如,Endpoint为https://cci.cn-north-4.myhuaweicloud.com,ak的值为my-ak,sk的值为ABCDEFAK.. ,则命令如下所示: cci-iam-authenticator generate-kubeconfig --cci-endpoint=https://cci.cn-north-4.myhuaweicloud.com --ak=my-ak --sk=ABCDEFAK.. 执行上述命令后,显示如下类似信息: Switched to context "cci-context-cn-north-4-my-ak" 其中,cci-context-cn-north-4-my-ak为context名,可通过kubectl config get-contexts命令查看。 使用用户名/密码的方式配置IAM认证信息 cci-iam-authenticator generate-kubeconfig --cci-endpoint=https://$endpoint --domain-name=xxxxxxx --user-name=xxxxxx --password='xxxxxx' 其中,endpoint为云容器实例的Endpoint,domain-name为租户名,user-name为子用户名,password为子用户密码,请根据替换为实际的值。 若无子用户,user-name与domain-name配置一致即可,也可以不添加user-name参数。 IAM的Endpoint请参见地区和终端节点,请注意需要使用与云容器实例地区相同的Endpoint。 在非安全的环境中使用kubectl,建议您完成此步骤后,使用环境变量的方式重新配置认证信息,具体参考非安全环境配置kubectl。 配置完成后,即可通过kubectl命令操作云容器实例的相关资源。 例如,查看北京四的namespace资源。 kubectl get ns No resources found. 您可以从回显中看到北京四没有任何命名空间,在云容器实例中创建资源首先需要创建一个命名空间,具体方法请参见Namespace和Network。 当通过API访问公有云系统时,需要使用访问用户名密码或者密钥(AK/SK)进行身份认证并对请求进行加密,确保请求的机密性、完整性和请求双方身份的正确性。请妥善保存$HOME/.kube/config配置文件,确保访问密钥不被非法使用。 当开启cache缓存token提高访问性能时,token会以文件的方式保存在$HOME/.cci/cache的子目录下,请及时清理。 当发现访问密钥被非法使用(包括丢失、泄露等情况),可以自行删除或者通知管理员重置访问密钥,重新配置。 删除的访问密钥将无法恢复。
  • 非安全环境配置kubectl 参照上述操作,安装并设置kubectl。 编辑kubeconfig文件,删除敏感信息参数。 Linux系统,kubeconfig文件默认位于$HOME/.kube/config。 表2 待删除敏感信息参数 Command Flag Environment Value Description --domain-name DOMAIN_NAME 租户名 --user-name USER_NAME 子用户名 --password PASSWORD 用户密码 --ak AC CES S_KEY_ID Access Key --sk SECRET_ACCESS_KEY Secret Key --cache CREDENTIAL_CACHE 是否开启缓存Token 更多参数说明请参见cci-iam-authenticator使用参考。 配置删除参数相应的环境变量来使用kubectl,以AK/SK为例。 export ACCESS_KEY_ID=xxxxxxx export SECRET_ACCESS_KEY=xxxxxxx export CREDENTIAL_CACHE=false kubectl get ns 执行上述命令后,提示如下类似信息: No resources found.
  • 获取AK/SK AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。 SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。 登录管理控制台。 单击用户名,在下拉列表中单击“我的凭证”。 在“我的凭证”页面,单击“访问密钥”页签。 单击“新增访问密钥”,输入验证码。 单击“确定”,生成并下载访问密钥。 为防止访问密钥泄露,建议您将其保存到安全的位置。
  • 获取云容器实例Endpoint Endpoint在地区和终端节点页面获取,如下表所示。 表3 地区和终端节点 区域名称 区域 终端节点(Endpoint) 华北-北京四 cn-north-4 cci.cn-north-4.myhuaweicloud.com 华东-上海一 cn-east-3 cci.cn-east-3.myhuaweicloud.com 华东-上海二 cn-east-2 cci.cn-east-2.myhuaweicloud.com 华南-广州 cn-south-1 cci.cn-south-1.myhuaweicloud.com 西南-贵阳一 cn-southwest-2 cci.cn-southwest-2.myhuaweicloud.com
共100000条