kubernetes连接外部应用
kubernetes中的pod如需要连接外部的应用,如mysql等不适合放到kubernetes中的应用。有两种方法:第一种-通过mysql的ip进行连接,第二种-借助kubernetes的Endpoints直接将外部服务器映射为kubernetes内部的一个服务
简单示例
apiVersion: v1 kind: Service metadata: name: mysql-dev spec: ports: - port: 3306 protocol: TCP targetPort: 3306 --- apiVersion: v1 kind: Endpoints metadata: name: mysql-dev subsets: - addresses: - ip: "10.12.10.10" ports: - port: 3306
Service的定义并没有使用标签选择器,而在后面定义了一个与Service同名的Endpoints,以使得它们能自动关联。Endpoints的subsets中指定了需要连接的外部服务器的IP和端口。这样在kubernetes同命名空间中就能将Service名:mysql-dev解析为对应的ip。在kubernetes的容器中执行
mysql -uxxx -pxxx -hmysql-dev 就可以连接到外部的mysql了。
浙公网安备 33010602011771号