Я пытаюсь сделать простые Бухты и Сервисы Kubernetes, используя панель мониторинга minikube. Сначала я создаю сервис Kubernetes mysql со следующим yaml.
apiVersion: v1
kind: Pod
metadata:
name: blog-db
labels:
app: blog-mysql
spec:
containers:
- name: blog-mysql
image: mysql:latest
env:
- name: MYSQL_ROOT_PASSWORD
value: password
- name: MYSQL_PASSWORD
value: password
- name: MYSQL_DATABASE
value: test
ports:
- containerPort: 3306
---
apiVersion: v1
kind: Service
metadata:
name: blog-db-svc
spec:
selector:
app: blog-mysql
ports:
- name: mysql
port: 3306
protocol: TCP
targetPort: 3306
externalIPs:
- 10.96.10.10
Сервис mysql создан успешно. Но образ моего внешнего приложения docker создается с помощью Spring Boot, поэтому мне нужно назначить правильный mysql URL-адрес подключения в файле application.properties, как показано ниже,
# ==============================================================
# = MySQL DataSource properties
# ==============================================================
spring.datasource.driver-class-name = com.mysql.cj.jdbc.Driver
spring.datasource.url = jdbc:mysql://10.96.10.10:3306/test?characterEncoding=utf8&serverTimezone=Asia/Seoul
spring.datasource.username = root
spring.datasource.password = password
Я ввожу IP-адрес , 10.96.10.10 внешнего ip ресурса службы в файл весенней загрузки application.properties. Но связь не удалась. Я проверил свойства сервиса mysql с помощью команды kubectl cli,
> kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
blog-db-svc ClusterIP 10.104.29.31 10.96.10.10 3306/TCP 30m
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 2d
И вставляю все ip-адреса в application.properties моего docker контейнера. Но каждое усилие mysql соединение не удается. Как можно установить правильный внешний ip для ресурса службы kubernetes для соединения mysql?