Kubernetes对象之Pod详解(附安装部署方法)
2017-11-29 09:14
597 查看
首先介绍一下K8S是什么:(引用自K8S中文社区)
Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。
通过Kubernetes你可以:
快速部署应用
快速扩展应用
无缝对接新的应用功能
节省资源,优化硬件资源的使用
其实K8S能够做的事情有很多,而且操作简单,十分方便,下面先介绍如何安装,然后是对于pod详细介绍,如果你对docker还不怎么了解,可以先参考前面的文章学习一下!
环境介绍:
CentOS 7.2
Kubernetes 1.5.2
docker 1.12.1
一.安装配置
1.安装K8S
yum -y install kubernetes
这个命令会同时安装kube-apiserver,kube-controller-manager,kubelet,kube-proxy,kube-scheduler
2.更改服务器端设置
vim /etc/kubernetes/apiserver
vim /etc/kubernetes/controller-manager #指定客户端主机的ip地址
vim /etc/kubernetes/kubelet #这个镜像是k8s构建pod必备镜像,如果不能从默认位置下载可以先在私库中单独下载这个镜像,这里6.109是一个私库
3.启动相关服务
systemctl start kube-apiserver kube-controller-manager kubelet kube-proxy
kube-scheduler
4.在pod创建过程中如果想让docker从私库中拉取镜像,同样需要去掉相关证书验证
vim /etc/docker/daemon.json
5.重启docker服务
systemctl restart docker
二.节点(Node)安装
1.安装K8S
yum -y install kubernetes
2.更改节点(Node)设置
vim /etc/kubernetes/apiserver
vim /etc/kubernetes/config
vim /etc/kubernetes/kubelet
3.启动相关服务,节点端必须开放10250端口
systemctl start kubelet kube-proxy
4.查看节点是否正常,在服务器端执行
kubectl get node #此时应该存在2个节点,一个本机,一个节点
二.Pod是个什么东西
在K8S中,Pod是创建或部署的最小/最简单的基本单位,一个Pod是由多个Docker容器组成的容器组
如图所示,每个pod包含至少一个标签,标签的形式是key:value,这样可以更快地匹配到对应的pod,service主要的功能是暴露pod对应的端口,或是做负载均衡使用!下一节再详细讨论service的用法。
1.Pod应用实例
vim obj.json
2.创建这个Pod
kubectl create -f obj.json
pod "podtest" created
3.查看已经创建的Pod
kubectl get pod
如果提示有2个正在运行则为正常,如果不是,可以查看具体错误日志
4.查看Pod运行日志
kubectl logs podtest master1/master2
5.查看创建pod的细节
kubectl describe pod podtest
6.在节点上查看容器创建情况
docker ps
可以看到一共创建了3个容器,第三个容器提供网络和端口支持,上面两个分别提供nginx和redis服务,这时如果访问curl 192.168.6.109:8811 则会出现预先设置好的页面!
7.pod删除
如果想修改其中的配置,则需要先删除pod再进行创建
kubectl delete -f obj.json
kubectl delete pod podtest
8.扩展查询
kubectl get pod -o wide
可以得到Pod的运行ip,节点使用情况
Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。
通过Kubernetes你可以:
快速部署应用
快速扩展应用
无缝对接新的应用功能
节省资源,优化硬件资源的使用
其实K8S能够做的事情有很多,而且操作简单,十分方便,下面先介绍如何安装,然后是对于pod详细介绍,如果你对docker还不怎么了解,可以先参考前面的文章学习一下!
环境介绍:
CentOS 7.2
Kubernetes 1.5.2
docker 1.12.1
一.安装配置
1.安装K8S
yum -y install kubernetes
这个命令会同时安装kube-apiserver,kube-controller-manager,kubelet,kube-proxy,kube-scheduler
2.更改服务器端设置
vim /etc/kubernetes/apiserver
systemctl start kube-apiserver kube-controller-manager kubelet kube-proxy
kube-scheduler
4.在pod创建过程中如果想让docker从私库中拉取镜像,同样需要去掉相关证书验证
vim /etc/docker/daemon.json
systemctl restart docker
二.节点(Node)安装
1.安装K8S
yum -y install kubernetes
2.更改节点(Node)设置
vim /etc/kubernetes/apiserver
systemctl start kubelet kube-proxy
4.查看节点是否正常,在服务器端执行
kubectl get node #此时应该存在2个节点,一个本机,一个节点
二.Pod是个什么东西
在K8S中,Pod是创建或部署的最小/最简单的基本单位,一个Pod是由多个Docker容器组成的容器组
如图所示,每个pod包含至少一个标签,标签的形式是key:value,这样可以更快地匹配到对应的pod,service主要的功能是暴露pod对应的端口,或是做负载均衡使用!下一节再详细讨论service的用法。
1.Pod应用实例
vim obj.json
kubectl create -f obj.json
pod "podtest" created
3.查看已经创建的Pod
kubectl get pod
如果提示有2个正在运行则为正常,如果不是,可以查看具体错误日志
4.查看Pod运行日志
kubectl logs podtest master1/master2
5.查看创建pod的细节
kubectl describe pod podtest
6.在节点上查看容器创建情况
docker ps
可以看到一共创建了3个容器,第三个容器提供网络和端口支持,上面两个分别提供nginx和redis服务,这时如果访问curl 192.168.6.109:8811 则会出现预先设置好的页面!
7.pod删除
如果想修改其中的配置,则需要先删除pod再进行创建
kubectl delete -f obj.json
kubectl delete pod podtest
8.扩展查询
kubectl get pod -o wide
可以得到Pod的运行ip,节点使用情况
相关文章推荐
- Kubernetes对象之Pod详解(附安装部署方法)
- 用VS2003部署,让服务程序安装完后立即启动服务并且选中“允许服务与桌面交互”及添加服务描述的方法
- 比较详细的XMLDOM对象方法详解第1/2页
- 比较详细的XMLDOM对象方法详解第1/2页
- "此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法
- "此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法
- sql2000备份的数据库还原到sql2005后,选择“数据库关系图”提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法
- 详解LCS2005标准版部署、客户端配置以及常见错误的纠正方法 推荐
- .NET Framework 3.5 SP1 bootstrapper 包(安装和部署)的解决方法
- 详解Microsoft Office Communications Server 2007部署以及客户端安装 推荐
- Red5在Centos5上的安装方法详解
- "此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法
- 详解DNS安装及配置多个二级域名的三种方法(图文教程)
- MOSS中重新安装部署某解决方案时提示已经存在的解决方法.
- “数据库关系图”提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法
- 数据库关系图”提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法(转)
- "此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法
- 在安装有VS2008beta2版本的机子上使用vs2005进行部署出现问题的解决方法
- sqlserver2005"此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法
- .NET多线程同步方法详解(四):系统内核对象 互斥对象(Mutex)