检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
启动命令 启动容器就是启动主进程,但有些时候,启动主进程前,需要一些准备工作。比如MySQL类的数据库,可能需要一些数据库配置、初始化的工作,这些工作要在最终的MySQL服务器运行之前解决。您可以在制作镜像时通过在Dockerfile文件中设置ENTRYPOINT或CMD来完成。
容器启动命令 启动容器就是启动主进程,但有些时候,启动主进程前,需要一些准备工作。比如MySQL类的数据库,可能需要一些数据库配置、初始化的工作,这些工作要在最终的MySQL服务器运行之前解决。这些操作,可以在制作镜像时通过在Dockerfile文件中设置ENTRYPOINT或C
ess的容器访问MySQL的容器。 执行下面的命令运行MySQL。 docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=******** -e MYSQL_DATABASE=wordpress -d mysql:5.7 参数解释如下:
https://wordpress.org/。 WordPress需配合MySQL一起使用,WordPress运行内容管理程序,MySQL作为数据库存储数据。在容器中运行通常会将WordPress和MySQL分别运行两个容器中,如下图所示。 父主题: 负载创建
其他负载通过“服务名称:端口”方法),将“服务名称”定义为mysql,并指定负载访问端口3306映射到容器的3306端口(mysql镜像的默认访问端口)。 这样在云容器实例内部,通过mysql:3306就可以访问MySQL负载。 配置完成后,单击“下一步”,确认规格后单击“提交”。
Kubernetes提供了自愈的能力,具体就是能感知到容器崩溃,然后能够重启这个容器。但是有时候例如Java程序内存泄漏了,程序无法正常工作,但是JVM进程却是一直运行的,对于这种应用本身业务出了问题的情况,kubernetes提供了liveness probe机制,通过检测容器响应是否正常来
"{{subnet-id}}" } } MySQL 调用创建Deployment接口部署MySQL。 Deployment名称为mysql。 设置Pod的标签为app:mysql。 使用mysql:5.7镜像。 设置容器环境变量MYSQL_ROOT_PASSWORD为“********”,请替换为您设置的密码。
name: mysql spec: replicas: 1 selector: matchLabels: name: mysql template: metadata: labels: name: mysql
EmptyDir所使用的memory从Pod申请的memory中进行分配,不会额外占用资源。 在/dev/shm中写数据相当于申请内存,此种场景下需评估进程内存使用量,当容器内的进程申请内存与EmptyDir中数据量之和超过容器请求的限制内存时,会出现内存溢出异常。 当需要修改/dev/shm容量时,容量大小通常设定为Pod内存申请量的50%。
查的方式: 应用存活探针(liveness probe),探测应用是否已经启动:该检查方式用于检测容器是否存活,类似于我们执行ps命令检查进程是否存在。如果容器的存活检查的结果为失败,云容器实例会对该容器执行重启操作;如果容器的存活检查成功则不执行任何操作。 应用业务探针(readiness
shell登录容器,要求容器支持sh shell。 只有状态为“运行中”的容器可终端登录。 退出时,请在web-terminal中输入“exit”,否则会导致sh进程残留。 通过远程终端连接容器 登录云容器实例管理控制台,左侧导航栏中选择“工作负载 > 无状态(Deployment)”,在右侧页面单击要访问的工作负载。
limits: memory: "256Mi" cpu: "250m" - name: mysql-checker image: centos resources: requests: memory:
如何解决Connection timed out问题? 问题现象: CCI实例创建正常,使用python django smtp服务发送邮件时,一直提示“[Errno 110] Connection timed out”错误。 问题原因: 客户仅购买了ELB服务未购买NAT网关服
是超过配额限度,请选择其他配额充足的ELB实例。 负载创建3分钟以后仍然无法访问,且无告警事件,可能原因是用户配置的容器端口实际上没有相应进程在监听,目前云容器实例服务无法检测出该类使用异常,需要您排查镜像是否有监听该容器端口。如果容器端口监听正确,此时无法访问的原因可能为ELB实例本身有问题,请排查ELB实例状态。
删除pod时,Kubernetes终止Pod中所有容器。 Kubernetes向进程发送SIGTERM信号并等待一定的秒数(默认为30)让容器正常关闭。 如果它没有在这个时间内关闭,Kubernetes会发送一个SIGKILL信号杀死该进程。 Pod的停止与删除有多种方法,比如按名称删除,如下所示。
传输时丢弃的数据包的累积计数 container_network_transmit_packets_total 传输数据包的累积计数 进程 container_processes 容器当前运行的进程数 container_sockets 容器当前打开套接字的个数 container_file_descriptors
"generation" : 1, "labels" : { "app" : "mysql" }, "name" : "mysql", "namespace" : "default", "resourceVersion"
3”,单击“保存”后实例伸缩操作即可生效。 云容器实例为应用删除提供一个时间窗,预留给生命周期中停止前处理阶段执行命令。如果超过此时间窗,进程仍未停止,该应用将被强制删除。 图5 修改实例数 在“Pod列表”处,可查看到新的实例在创建中,待状态为运行中时,表示已成功完成实例伸缩操作。
Standard集群和CCE Turbo集群,暂不支持Arm集群。如果集群中包含Arm节点,插件实例将不会部署至Arm节点。 暂不支持守护进程集(DaemonSet)以及HostNetwork网络模式的容器实例(Pod)弹性到CCI。 集群所在子网不能与10.247.0.0/16
能受损。 原因二:用户业务容器内存在对rootfs磁盘的高IO读写的场景。 详情说明:CCI服务会对rootfs的盘进行IO限流,如果业务进程运行中会执行较高的磁盘IO(带宽>6MB/s,iops>1000)或者对磁盘IO性能比较敏感,请不要将大IO的文件操作放在rootfs,例