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(四)的更多相关文章

  1. k8s入门你至少需要会哪些

    body { margin: 0; overflow: auto; font: normal 14px Verdana; background: rgba(255, 255, 255, 1); pad ...

  2. k8s入门之集群搭建(二)

    一.准备三台节点 从上篇文章 k8s入门之基础环境准备(一)安装的Ubuntu虚拟机克隆出三台虚拟机,如图所示 启动这三台虚拟机节点,分别做如下配置 虚拟机名称 IP HostName k8sMast ...

  3. k8s入门系列之guestbook快速部署

    k8s集群以及一些扩展插件已经安装完毕,本篇文章介绍一下如何在k8s集群上快速部署guestbook应用. •实验环境为集群:master(1)+node(4),详细内容参考<k8s入门系列之集 ...

  4. k8s入门系列之扩展组件(一)DNS安装篇

    DNS (domain name system),提供域名解析服务,解决了难于记忆的IP地址问题,以更人性可读可记忆可标识的方式映射对应IP地址. Cluster DNS扩展插件用于支持k8s集群系统 ...

  5. K8s 入门

    中文文档:https://www.kubernetes.org.cn/kubernetes%E8%AE%BE%E8%AE%A1%E6%9E%B6%E6%9E%84 小结大白话 Portainer 挺好 ...

  6. 反手来个K8S入门到跑路

    layout: post title: 反手来个K8S入门到跑路 category: linux date: 2019-06-09 tags: linux k8s 反手来个K8S入门到跑路 前言 放假 ...

  7. k8s 中的 Pod 细节了解

    k8s中Pod的理解 基本概念 k8s 为什么使用 Pod 作为最小的管理单元 如何使用 Pod 1.自主式 Pod 2.控制器管理的 Pod 静态 Pod Pod的生命周期 Pod 如何直接暴露服务 ...

  8. WCF入门教程(四)通过Host代码方式来承载服务

    WCF入门教程(四)通过Host代码方式来承载服务 之前已经讲过WCF对外发布服务的具体方式. WCF入门教程(一)简介 Host承载,可以是web,也可以是控制台程序等等.比WebService有更 ...

  9. Docker入门教程(四)Docker Registry

    Docker入门教程(四)Docker Registry [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第四篇,介绍了Docker Registry,它 ...

随机推荐

  1. c# / .net wFramework winform 之运行后的窗体窗口可拖动操作

    学习winform 的同志们可能会有这样的提问,我运行起来的窗体或者窗口该如何实现可拖动呢?今天它来了 思路:可以给窗体增加一个进度条(progressBar控件) 全局定义这几个变量: long p ...

  2. 深入浅出SpringBoot

  3. Oracle入门基础(五)一一多表查询

    SQL> --等值连接 SQL> --查询员工信息:员工号 姓名 月薪 部门名称 SQL> set linesize 80 SQL> desc dept 名称 是否为空? 类型 ...

  4. spring-boot-learning-事务处理

     事务处理的重要性: 面对高井发场景, 掌握数据库事务机制是至关重要的,它能够帮助我们在一定程度上保证数据的一致性,并且有效提高系统性能,避免系统产生岩机,这对于互联网企业应用的成败是至关重要的. 以 ...

  5. 处理器映射器(HandlerMapping)及处理器适配器(HandlerAdapter)详解(二)

    注解的 处理器映射器 和 处理器适配器 介绍 注解的映射器: 在 Spring3.1 之前使用 DefaultAnnotationHandlerMapping 注解映射器(根据 DispatcherS ...

  6. 学习GlusterFS(三)

    glusterfs,GNU cluster file system,创始人Anand Babu Periasamy,目标:代替开源Lustre和商业产品GPFS,glusterfs是什么: cloud ...

  7. Pandas基础笔记

    Basic knowledge of Pandas pandas库是以numpy库为基础建成的,是python数据分析的核心库.也正因如此,pandas内的数据结构与numpy的数组有许多相似的地方. ...

  8. CSS3渐变效果工具

    推荐一个css3渐变效果工具,觉得有帮助的可以收藏下. 工具链接 CSS3 渐变(gradients)可以让你在两个或多个指定的颜色之间显示平稳的过渡.CSS3 定义了两种类型的渐变(gradient ...

  9. HTML5 Performance

    简介 performance是html5的新特性之一,通过它,页面的开发者们可以非常精确的统计到自己页面的表现情况,从而有针对性的进行优化,提升用户体验. 下面是小姐姐对performance相关AP ...

  10. JWT介绍及使用

    目录 JWT-JSON WEB TOKEN JWT组成 header payload signature JWT校验 JWT获取信息 JJWT(java jwt api)使用 导入依赖 测试代码 JW ...