k8s入门之pod(四)
pod是k8s项目中的最小编排单位,它是运行中的一组(一个或多个)容器,这些容器共享存储、网络、调度等资源,pod是一个逻辑概念,同一个名称空间下不同pod可以通过ip互相访问。

一、通过命令行方式管理
1.创建
在dev名称空间下创建名称为mynginx的pod,如果不指定-n参数,则默认创建在default名称空间下
kubectl run mynginx --image=nginx -n dev
2.查看dev名称空间下所有pod的简单信息
kubectl get pod -n dev
创建pod需要时间,尤其是节点上没有该镜像时,还需要下载镜像,可以看到pod的Status状态会随着时间而改变,最后变成Running表示pod启动成功


3.查看dev名称空间下所有pod的详细信息
kubectl get pod -n dev -owide --show-labels
结果截图如下

NODE:表示该pod被调度了哪个worker节点上
IP:k8s会为每个pod分配一个ip,集群中的任意一个机器以及任意的应用都能通过此ip来访问这个Pod
在master节点上可以通过curl ip访问pod
# 默认是80端口,所以访问的是pod中的nginx容器
curl 10.244.218.1
4.根据标签检索pod
kubectl get pod -n dev -owide --show-labels -l app=nginx
5.查看pod的描述信息
kubectl describe pod mynginx -n dev

其中Events事件可以查看到pod被创建的详细过程
6.查看Pod的运行日志
kubectl logs mynginx -n dev

7.进入pod容器
kubectl exec -it mynginx /bin/bash -n dev
更改nginx容器的index.html内容
echo "hello,pod" >> /usr/share/nginx/html/index.html
再次访问mynginx
curl 10.244.218.1
可以看到index.html首页内容已经发生了变化

8.监控pod状态命令
使用k8s的-w参数
kubect get pod -n dev -w
使用linux命令
watch -n 1 kubectl get pod -n dev
9.删除pod
kubectl delete pod mynginx -n dev
二、使用yaml管理
1.在pod里部署两个容器
一个pod里面不能部署相同镜像的容器,端口冲突
(1)创建yaml文件
vi pod-nginx-tomcat.yaml
(2)编写pod文件内容,定义两个容器,一个为nginx,一个为tomcat
apiVersion: v1
kind: Pod
metadata:
labels:
web: server
name: web-server
namespace: dev
spec:
containers:
- image: nginx
name: nginx
- image: tomcat:9.0
(3)使用kubectl apply创建pod
kubectl apply -f pod-nginx-tomcat.yaml
(4)自动监控创建过程
kubectl get pod -n dev -w

2.查看pod描述
kubectl describe pod web-server -n dev

3.在节点上访问pod
(1)查看pod的ip
kubectl get pod -n dev -owide

(2)通过此ip访问pod中的nginx容器
curl 10.244.218.2

(3)通过此ip访问pod中的tomcat容器
curl 10.244.218.2:8080

4.进入pod里面访问服务
(1)进入pod里面的nginx容器
kubectl exec web-server --container nginx -it /bin/bash -n dev
(2)在容器内,以下命令均可访问,证明了pod里网络共享
curl localhost
curl localhost:8080
curl 10.244.218.2
curl 10.244.218.2:8080
k8s入门之pod(四)的更多相关文章
- k8s入门你至少需要会哪些
body { margin: 0; overflow: auto; font: normal 14px Verdana; background: rgba(255, 255, 255, 1); pad ...
- k8s入门之集群搭建(二)
一.准备三台节点 从上篇文章 k8s入门之基础环境准备(一)安装的Ubuntu虚拟机克隆出三台虚拟机,如图所示 启动这三台虚拟机节点,分别做如下配置 虚拟机名称 IP HostName k8sMast ...
- k8s入门系列之guestbook快速部署
k8s集群以及一些扩展插件已经安装完毕,本篇文章介绍一下如何在k8s集群上快速部署guestbook应用. •实验环境为集群:master(1)+node(4),详细内容参考<k8s入门系列之集 ...
- k8s入门系列之扩展组件(一)DNS安装篇
DNS (domain name system),提供域名解析服务,解决了难于记忆的IP地址问题,以更人性可读可记忆可标识的方式映射对应IP地址. Cluster DNS扩展插件用于支持k8s集群系统 ...
- K8s 入门
中文文档:https://www.kubernetes.org.cn/kubernetes%E8%AE%BE%E8%AE%A1%E6%9E%B6%E6%9E%84 小结大白话 Portainer 挺好 ...
- 反手来个K8S入门到跑路
layout: post title: 反手来个K8S入门到跑路 category: linux date: 2019-06-09 tags: linux k8s 反手来个K8S入门到跑路 前言 放假 ...
- k8s 中的 Pod 细节了解
k8s中Pod的理解 基本概念 k8s 为什么使用 Pod 作为最小的管理单元 如何使用 Pod 1.自主式 Pod 2.控制器管理的 Pod 静态 Pod Pod的生命周期 Pod 如何直接暴露服务 ...
- WCF入门教程(四)通过Host代码方式来承载服务
WCF入门教程(四)通过Host代码方式来承载服务 之前已经讲过WCF对外发布服务的具体方式. WCF入门教程(一)简介 Host承载,可以是web,也可以是控制台程序等等.比WebService有更 ...
- Docker入门教程(四)Docker Registry
Docker入门教程(四)Docker Registry [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第四篇,介绍了Docker Registry,它 ...
随机推荐
- c# / .net wFramework winform 之运行后的窗体窗口可拖动操作
学习winform 的同志们可能会有这样的提问,我运行起来的窗体或者窗口该如何实现可拖动呢?今天它来了 思路:可以给窗体增加一个进度条(progressBar控件) 全局定义这几个变量: long p ...
- 深入浅出SpringBoot
- Oracle入门基础(五)一一多表查询
SQL> --等值连接 SQL> --查询员工信息:员工号 姓名 月薪 部门名称 SQL> set linesize 80 SQL> desc dept 名称 是否为空? 类型 ...
- spring-boot-learning-事务处理
事务处理的重要性: 面对高井发场景, 掌握数据库事务机制是至关重要的,它能够帮助我们在一定程度上保证数据的一致性,并且有效提高系统性能,避免系统产生岩机,这对于互联网企业应用的成败是至关重要的. 以 ...
- 处理器映射器(HandlerMapping)及处理器适配器(HandlerAdapter)详解(二)
注解的 处理器映射器 和 处理器适配器 介绍 注解的映射器: 在 Spring3.1 之前使用 DefaultAnnotationHandlerMapping 注解映射器(根据 DispatcherS ...
- 学习GlusterFS(三)
glusterfs,GNU cluster file system,创始人Anand Babu Periasamy,目标:代替开源Lustre和商业产品GPFS,glusterfs是什么: cloud ...
- Pandas基础笔记
Basic knowledge of Pandas pandas库是以numpy库为基础建成的,是python数据分析的核心库.也正因如此,pandas内的数据结构与numpy的数组有许多相似的地方. ...
- CSS3渐变效果工具
推荐一个css3渐变效果工具,觉得有帮助的可以收藏下. 工具链接 CSS3 渐变(gradients)可以让你在两个或多个指定的颜色之间显示平稳的过渡.CSS3 定义了两种类型的渐变(gradient ...
- HTML5 Performance
简介 performance是html5的新特性之一,通过它,页面的开发者们可以非常精确的统计到自己页面的表现情况,从而有针对性的进行优化,提升用户体验. 下面是小姐姐对performance相关AP ...
- JWT介绍及使用
目录 JWT-JSON WEB TOKEN JWT组成 header payload signature JWT校验 JWT获取信息 JJWT(java jwt api)使用 导入依赖 测试代码 JW ...