k8s在pod內訪問叢集外部地址
阿新 • • 發佈:2022-12-12
一. 使用IP
apiVersion: v1 kind: Service metadata: name: nginx-ip spec: ports: - protocol: TCP port: 88 --- apiVersion: v1 kind: Endpoints metadata: name: nginx-ip subsets: - addresses: - ip: 43.138.153.80 ports: - port: 80 # IP相關的埠,可以是外部連線埠,也可以是內部容器連線埠 --- apiVersion: apps/v1 kind: Deployment metadata: name: busybox labels: app: busybox spec: replicas: 1 selector: matchLabels: app: busybox template: metadata: labels: app: busybox spec: containers: - name: busybox image: appropriate/curl command: ["/bin/sh", "-c", "sleep 3600"]
在busybox容器中curl nginx-ip:88 即可訪問外部地址43.138.153.80
二. 使用域名
apiVersion: v1 kind: Service metadata: name: "baiducom" # 設定 IP 14.215.177.39和www.baidu.com 錯誤,不允許'.' spec: type: ExternalName externalName: "www.baidu.com" # 設定 IP 14.215.177.39 無效 ports: - port: 443 # 所以 externalName 的意義就是為外部域名設定一個別名,如上 為 www.baidu.com 設定別名 baiducom,以便 pod 內容器使用 --- apiVersion: apps/v1 kind: Deployment metadata: name: busybox labels: app: busybox spec: replicas: 1 selector: matchLabels: app: busybox template: metadata: labels: app: busybox spec: containers: - name: busybox image: busybox command: ["/bin/sh", "-c", "sleep 3600"]
busybox中curl baiducom即可訪問百度