Pod练习

作者: 快去学习不然怎么去看aimer | 来源:发表于2019-12-09 19:56 被阅读0次
image.png

定义Pod

[root@rourou ~] # vim nginx-busybox.yaml
apiVersion: v1
  kind: Pod
  metadata:  # pod 的源数据信息,可以写多个
    name: nginx-busybox # pod 的名字
spec:
  containers:
  - name: nginx  # 容器的名字
    image: nginx:alpine  # 镜像的名字
    ports:
    - containerPort: 80
  - name: busybox
    image: busybox
    command: ["/bin/sh"]
    args: ["-c", "while true; do echo hello; sleep 10;done"]

[root@rourou ~] # kubectl create -f nginx-busybox.yaml 

查看pod

kubectl get pods 
NAME                    READY   STATUS    RESTARTS   AGE
nginx-busybox           2/2     Running   0          29m
test-projected-volume   1/1     Running   0          159m

#给查看同样支持3中格式
kubectl get pods -o wide 
kubectl get pods -o json
kubectl get pods -o yaml 

列出详细信息

kubectl get events
LAST SEEN   TYPE     REASON      OBJECT              MESSAGE
<unknown>   Normal   Scheduled   pod/nginx-busybox   Successfully assigned default/nginx-busybox to k8s-node2
6m40s       Normal   Pulled      pod/nginx-busybox   Container image "nginx:alpine" already present on machine

######################################或者##############################
kubectl describe pods nginx-busybox

进入指定容器

kubectl exec -it nginx-busybox -c nginx sh 

或者在容器中执行命令并将及如果返回终端
kubectl exec nginx-busybox -c nginx   ls /

#-c   指定容器

多个pods实例

指定节点创建pod

apiVersion: v1
kind: Pod
metadata:  # pod 的源数据信息,可以写多个
  name: nginx-busybox # pod 的名字
spec:
  nodeSelector:
    disktype: ssd
  containers:
  - name: nginx  # 容器的名字
    image: nginx:alpine  # 镜像的名字
    ports:
    - containerPort: 80
  - name: busybox
    image: busybox
    command: ["/bin/sh"]
    args: ["-c", "while true; do echo hello; sleep 10;done"]

修改pod的容器的hosts文件

apiVersion: v1
kind: Pod
metadata:  # pod 的源数据信息,可以写多个
  name: nginx-hosts # pod 的名字
spec:
  hostAliases:
  - ip: "10.0.122.126"
    hostnames:
    - "rourou1.remote"
    - "rourou2.remote"
  containers:
  - name: nginx  # 容器的名字
    image: nginx:alpine  # 镜像的名字
    ports:
    - containerPort: 80
  - name: busybox
    image: busybox
    command: ["/bin/sh"]
    args: ["-c", "while true; do echo hello; sleep 10;done"]

#本实验的client与server的版本皆为v1.16.0,得到的/etc/hosts的结果
10.0.122.126        rourou1.remote     rourou2.remote

指定namespace创建pod

apiVersion: v1
kind: Pod
metadata:
  name: nginx-namespace
  namespace: demo
spec:
  containers:
  - name: nginx
    image: nginx
    ports:
    - containerPort: 8

#指定namespace为demo
kubectl get pods --namespace demo  即可查看指定namespace下的pods
若是使用kubectl get pods则为默认的namespace,不会显示demo下的pods

创建的容器之间共享进程、

apiVersion: v1
kind: Pod
metadata:  # pod 的源数据信息,可以写多个
  name: nginx-share # pod 的名字
spec:
  shareProcessNamespace: true
  containers:
  - name: nginx  # 容器的名字
    image: nginx:alpine  # 镜像的名字
    ports:
    - containerPort: 80
  - name: busybox
    image: busybox
    stdin: true
    tty: true
#在busybox中可以查看到nginx的进程

创建的容器共享宿主机的进程等

apiVersion: v1
kind: Pod
metadata:  # pod 的源数据信息,可以写多个
  name: nginx-share-host # pod 的名字
spec:
  hostNetwork: true
  hostIPC: true
  hostPID: true
  containers:
  - name: nginx  # 容器的名字
    image: nginx:alpine  # 镜像的名字
    ports:
    - containerPort: 8080
  - name: busybox
    image: busybox
    stdin: true
    tty: true
#注意:与主机共享进程时不能指定80端口,否则创建容器时一直处于panding状态

相关文章

  • Pod练习

    定义Pod 查看pod 列出详细信息 进入指定容器 多个pods实例 指定节点创建pod 修改pod的容器的hos...

  • Pod简单练习

    kubernetes 对象1.静态nodeNamenodeSelector 2.持久化- yaml 文件实现3.方...

  • Pod练习(二)

    本文所实验的Pod: 实例: 使用configmap进行的挂载,mountPath所指的路径有就覆盖,没有就创建。...

  • 关于Xcode9版本的ReactiveCocoa6.0报错问题解

    正常pod文件导入的pod文件 pod ‘YYKit’pod ‘Mantle’pod “SnapKit”pod '...

  • Cocoapods之:使用

    $ pod -version $ pod init $ pod setup $ pod repo list $ p...

  • 练习:tomcat+mysql

    所有的资源都清理。因为 Pod 访问地址不固定,他们之间是通过 vIP(clusterIP)。 实战练习 获取信息...

  • Kubernetes Pod

    一、Pod 介绍静态Pod & 普通Pod部署静态PodEndpointEvent 二、Pod基本用法 三、Pod...

  • CocoaPods相关问题总结

    关于pod install 和 pod update pod install pod update Podfile...

  • CocoaPods的升级使用

    pod install pod install --repo-update pod update pod upda...

  • pod install 和 pod update的区别

    pod install(下载并安装pod)。当podfile文件中有“增加pod,删除pod,修改pod”的操作之...

网友评论

      本文标题:Pod练习

      本文链接:https://www.haomeiwen.com/subject/vweigctx.html