概念
- Kubernetes
- Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。
- 容器
- 容器是与系统其他部分隔离开的一系列进程。运行这些进程所需的所有文件都由另一个镜像提供,这意味着从开发到测试再到生产的整个过程中,Linux 容器都具有可移植性和一致性。因而,相对于依赖重复传统测试环境的开发渠道,容器的运行速度要快得多。容器比较普遍也易于使用。
- Docker
-
Docker 是一个开源的应用容器引擎,基于 Go语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
-
- 宿主机
- 相对服务而言,服务节点的宿主机是对应的ecs节点。
常用指令
k8s常用指令
|
参考:查看容器日志及登陆容器
常见问题
- 开发环境如何访问k8s集群内的服务节点?
无法访问,服务对外是不可见的。无法直接访问集群内部节点,只能通过正常请求链路、或者登陆服务器进入容器内直接请求。
- k8s集群内部节点如何访问本地开发服务?
无法访问,k8s集群无法访问本机电脑,因为不在一个网络环境内,同理在不同网络环境中的节点一样无法相互访问。
- 如何查看服务运行日志?
参考:查看容器日志及登陆容器,建议生产环境不要登录服务器查看日志,在kibana上查询日志,其中 gateway服务内 有所有请求返回信息。
- 如何查看历史运行日志?
生产环境可以再kibana上查询,现在保留了约一周的服务运行日志。其他环境则不会保留之前的运行日志,现k8s集群服务日志仅做标准输出,没有进行物理存储。所以每当重新启动服务都会清空原有日志信息。
相关文档&学习参考资料
容器:https://www.redhat.com/zh/topics/containers/whats-a-linux-container
Docker:https://www.runoob.com/docker/docker-tutorial.html
k8s:https://www.kubernetes.org.cn/k8s 、http://docs.kubernetes.org.cn/227.html