zoukankan      html  css  js  c++  java
  • [置顶] kubernetes将外部服务映射为内部服务

    在实际应用中,一般不会把mysql这种重IO、有状态的应用直接放入k8s中,而是使用专用的服务器来独立部署。而像web这种无状态应用依然会运行在k8s当中,这时web服务器要连接k8s管理之外的数据库,有两种方式:一是直接连接数据库所在物理服务器IP,另一种方式就是借助k8s的Endpoints直接将外部服务器映射为k8s内部的一个服务。

    下面这个例子就是展示Endpoints将外部服务映射为k8s内部服务的例子。
    将外部服务器的172.17.241.47、59.107.26.221的80端口映射到内部服务

    cat << EOF > test-service.yaml
    apiVersion: v1
    kind: Service
    metadata:
      name: test
    spec:
      ports:
      - port: 80
        targetPort: 81
        protocol: TCP
    EOF
    
    cat << EOF > test-endpoints.yaml
    apiVersion: v1
    kind: Endpoints
    metadata:
      name: test
    subsets:
      - addresses:
        - ip: 172.17.241.47
        - ip: 59.107.26.221
        ports:
        - port: 80
          protocol: TCP
    EOF
    
    kubectl create -f test-endpoints.yaml
    kubectl create -f test-service.yaml

    Endpoints的subsets中指定了需要连接的外部服务器的IP和端口。

  • 相关阅读:
    bzoj 5092: [Lydsy1711月赛]分割序列
    bzoj1173: [Balkan2007]Point
    bzoj1536: [POI2005]Akc- Special Forces Manoeuvres
    bzoj2178: 圆的面积并
    bzoj1043 下落的圆盘
    bzoj2674 Attack
    bzoj1201: [HNOI2005]数三角形
    bzoj3135: [Baltic2013]pipesd
    bzoj1760 [Baltic2009]Triangulation
    bzoj3136
  • 原文地址:https://www.cnblogs.com/lykops/p/7348017.html
Copyright © 2011-2022 走看看