用户指南

服务类

最近更新时间:2020-06-17 16:01:02

创建服务常见问题

服务的名称为什么不能重复?

服务名称是当前集群下的服务的唯一标识,服务之间可以通过服务名称+访问端口的形式互相访问。

创建服务能否使用非腾讯云或 dockerhub 镜像的第三方镜像?

您可以通过登录到主机执行 docker login 命令登录到第三方镜像仓库拉取。

使用外网服务的有什么前置条件?

确保集群内的云服务器拥有外网带宽,否则外网服务将创建失败。

内存限制,CPU 限制如何填写?

详情参考 容器服务资源限制说明

创建服务时的特权级是什么意思?

开启该选项会使得容器内程序具有真正的 root 权限。在容器内程序需要进行高级系统操作时建议开启,如搭建 nfs 服务器。

服务能创建包年包月计费模式的负载均衡吗?

包年包月计费模式的负载均衡不能在服务删除时同步进行删除,会使得资源无法回收,导致用户负载均衡资源的浪费。
服务自动创建的负载均衡计费模式均为按量计费,用户可以通过使用已有负载均衡的方式使用包年包月的已有负载均衡。详情请参见 Service 使用已有 CLBService 工作原理

负载均衡可以在创建时就指定安全组吗?

可以,目前支持以下两个方案,实现服务使用负载均衡时指定安全组:

  • 使用已有负载均衡。先创建负载均衡并配置安全组,再挂载给服务。详情请参见 Service 使用已有 CLB
  • 可在服务中通过 TkeServiceConfig 配置安全组,负载均衡创建时会根据配置使用对应安全组。如需使用此功能,请 提交工单 进行申请。
说明:

集群内进行服务访问时,建议不要通过负载均衡 IP 进行访问,以避免出现访问不通的情况。
一般情况下,4层负载均衡会绑定多台 Node 作为 real server(rs) ,使用时需要限制 client 和 rs 不能存在于同一台云服务器上,否则会有一定概率导致报文回环失败。
当 Pod 去访问负载均衡时,Pod 为源 IP,当其传输到内网时负载均衡也不会做 snat 处理将源 IP 转化为 Node IP,则负载均衡收到报文时无法判断是哪个 Node 发送的,避免回环策略就无法生效,所有的 rs 都可能被转发。当转发到 client 所在的 Node 上时,负载均衡就无法收到回包,从而导致访问不通。

更新服务容器数量常见问题

更新容器数量需注意哪些问题?

需确认 CPU、内存资源充足,否则容器将创建失败。

能否将容器数量设为0?

可以,通过将容器数量设置为0,保存服务配置并且释放资源占用。

更新服务配置常见问题

更新服务是否支持滚动更新?

支持滚动更新和快速更新两种方式。

公网负载均衡可以切换为内网负载均衡吗?

可以,目前支持公网切换至 VPC 内网、VPC 内网切换至公网及 VPC 不同子网间切换。详情请参见 Service 生命周期管理

注意:

  • 若为服务负责负载均衡资源的生命周期管理,则负载均衡及其公网 IP 将会被释放。
  • 公网切换内网的过程并不是瞬间的,公网负载均衡服务下线到内网负载均衡并提供服务,此过程需要一定的时间。建议您先在集群中配置一个内网服务资源,并进行测试。等到流量切换完成之后,再删除原有公网服务资源。

删除服务常见问题

删除服务后服务创建的负载均衡会自动销毁么?

删除服务时,将会同时删除创建该服务时自动创建的负载均衡。若在创建服务时选用的是已有负载均衡,则该负载均衡将不会受到任何影响。

删除服务是否会影响业务数据?

删除服务不会删除业务容器,数据不会受到影响,该操作无需提前备份数据。

服务运行常见问题

如何设置容器系统时间为北京时间?

容器默认使用 UTC 时间,使用容器时经常碰到容器系统时间和北京时间差8小时的问题,解决方法是在 dockerfile 中创建时区文件。详情请参见 解决容器内时区不一致问题

Dockerhub 部分镜像如 ubuntu、php 和 busybox 等在容器服务里运行异常怎么办?

运行异常是因为没有设置启动命令或者默认的启动命令为 bash,导致容器执行完启动程序就退出了。要使容器一直运行,容器里 PID 为1的进程必须是常驻进程,否则 PID 为1的进程一结束容器就退出了。对于部分镜像如 centos 等,可以使用 /bin/bash 作为运行命令, -c sleep 800000 作为运行参数来创建服务,在控制台填运行参数时 -c 和 sleep 800000 必须放在两行。

目前已知的使用默认参数启动不了服务的镜像包括这些:clearlinux、ros、mageia、amazonlinux、ubuntu、clojure、crux、gcc、photon、java、debian、oraclelinux、mono、bash、buildpack-deps、golang、sourcemage、swift、openjdk、centos、busybox、docker、alpine、ibmjava、php和python。

目录