zoukankan      html  css  js  c++  java
  • k8s-"hostNetwork: true"网络

    kubernetes "hostNetwork: true",这是一种直接定义Pod网络的方式。如果在POD中

    使用"hostNetwork: true"配置网络,pod中运行的应用程序可以直接看到宿主主机的网

    络接口,宿主机所在的局域网上所有网络接口都可以访问到该应用程序及端口。

    示例:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: nginx
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          labels:
            app: nginx
        spec:
          hostNetwork: true
          # 使用主机网络
          dnsPolicy: ClusterFirstWithHostNet
          # 该设置是使POD使用k8s的dns,dns配置在/etc/resolv.conf文件中
          # 如果不加,pod默认使用所在宿主主机使用的DNS,这样会导致容器
          # 内不能通过service name访问k8s集群中其他POD
          containers:
          - name: nginx
            image: nginx:1.7.9
            #ports:
            #  - name: metrics
            #    hostPort: 80
            #    containerPort: 80
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: nginx
    spec:
      selector:
        app: nginx
      type: NodePort
      ports:
        -
          name: http
          port: 80
          targetPort: 80
          protocol: TCP
          nodePort: 30080

    80端口是使用pod的"hostNetwork: true"方式暴露的,30080端口是使用service的"type: NodePort"方式暴露的。

  • 相关阅读:
    参考资料来自 懒兔子 的公众号
    Etcd
    zookeeper 杂记
    十二五
    防火墙
    APScheduler
    docker管理工具protainer
    java学习笔记
    linux学习笔记1
    [POI2007]ZAP-Queries
  • 原文地址:https://www.cnblogs.com/LiuChang-blog/p/15138822.html
Copyright © 2011-2022 走看看