开始使用Kubernetes和Docker

开始使用KubernetesDocker

Kubernetes上运行第一个应用

部署Node.js应用

部署应用程序最简单的方式是使用kubectl run命令, 该命令可以创建所有必要的组件而无需JSONYAML.

介绍pod

一个pod是一组紧密相关的容器, 它们总是运行在同一个工作节点上, 以及同一个Linux命名空间中. 每个pod就像一个独立的逻辑机器, 拥有自己的IP, 主机名, 进程等, 运行一个独立的应用程序.

列出pod

不能列出单个容器, 因为它们不是独立的Kubernetes对象, 但是可以列出pod. 要查看有关pod的更多信息, 还可以使用kubectl describe pod命令.

访问WEB应用

每个pod都有自己的IP地址, 但是这个地址是集群内部的, 不能从集群外部访问. 要让pod能够从外部访问, 需要通过服务对象公开它, 要创建一个特殊的LoadBalancer类型的服务. 因为如果你创景一个常规服务(一个ClusterIP服务), 比如pod, 它也只能从集群内部访问. 通过创建LoaBalancer类型的服务, 将创建一个外部的负载均衡, 通过负载均衡的公共IP访问pod.

创建一个服务对象

1
kubectl expose <需要暴露的pod类型> <需要暴露的pod名称> --type=<暴露的类型> --name=<暴露的名称> 

列出服务

1
kubectl get services

系统的逻辑部分

一个服务被创建时, 它会得到一个静态的IP, 在服务的生命周期中这个IP不会发生改变. 客户端应该通过固定IP地址连接到服务, 而不是直接连接pod.

服务表示一组或多组提供相同服务的pod的静态地址. 到达服务IP和端口的请求将被转发到属于该服务的一个容器的IP和端口

水平伸缩应用

1
kubectl scale <需要暴露的pod类型> <需要暴露的pod名称> --replicas=<数量>

列出pod时显示pod IPpod的节点

1
kubectl get pods -o wide
-------------本文结束感谢您的阅读-------------