首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >研发工程师玩转Kubernetes——hostPath

研发工程师玩转Kubernetes——hostPath

作者头像
方亮
发布2023-08-09 18:51:33
发布2023-08-09 18:51:33
2780
举报
文章被收录于专栏:方亮方亮

下面的清单文件利用了Pod亲和性,让Pod集中到一个Node上。

代码语言:javascript
复制
apiVersion: apps/v1
kind: Deployment
metadata:
  name: hostpath-deployment
spec:
  selector:
    matchLabels:
      app: hostpath-container
  replicas: 2
  template:
    metadata:
      labels:
        app: hostpath-container
    spec:
      affinity:
        podAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
                matchExpressions:
                - key: app
                  operator: In
                  values:
                  - hostpath-container
            topologyKey: "kubernetes.io/hostname"
      containers:
      - name: hostpath-container
        image: busybox
        command: ["/bin/sh", "-c" ,"if [ -f /tempdir/lockfile ] && ! { set -C; 2>/dev/null >/tempdir/lockfile; }; then tail -f /tempdir/lockfile; else exec 3>/tempdir/lockfile; if [ -n \"$POD_NAME\" ]; then name=$POD_NAME; else name=\"unknown\"; fi; while true; do echo \"this is $name.$name write something to lockfile\"; echo \"$name write something to lockfile\" >&3; sleep 5; done; fi"]
        volumeMounts:
        - name: hostpath-volume
          mountPath: /tempdir
        env:
        - name: POD_NAME
          valueFrom:
            fieldRef:
              fieldPath: metadata.name
      volumes:
      - name: hostpath-volume
        hostPath:
          path: /tmp
          type: Directory

我们观察创建的两个Pod中文件的内容

代码语言:javascript
复制
kubectl exec pods/hostpath-deployment-65cddc7df8-9qtlv -it -- tail -f /tempdir/lockfile

hostpath-deployment-65cddc7df8-9qtlv write something to lockfile hostpath-deployment-65cddc7df8-9qtlv write something to lockfile hostpath-deployment-65cddc7df8-9qtlv write something to lockfile ……

代码语言:javascript
复制
kubectl exec pods/hostpath-deployment-65cddc7df8-ltbgs -it -- tail -f /tempdir/lockfile

hostpath-deployment-65cddc7df8-9qtlv write something to lockfile hostpath-deployment-65cddc7df8-9qtlv write something to lockfile hostpath-deployment-65cddc7df8-9qtlv write something to lockfile ……

可以看到它们的文件内容一样,即可以证明它们可以共享同一个文件。 我们在hostpath映射的宿主机目录/tmp下可以找到lockfile文件,且其内容也是明文可读的。

参考资料

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-08-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 参考资料
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档