#kubernetes #kubernetes-pod
Вопрос:
Мне была поставлена задача подключить модуль mysql к любому другому рабочему модулю (предпочтительно busybox), но я не смог этого сделать. Есть ли способ выполнить эту задачу. Я ссылался на многие места, но объяснения были немного сложными, поскольку я новичок в Kubernetes.
Комментарии:
1. мы были бы признательны, если бы вы могли уточнить
"but was not able to that."
, что вы уже пробовали. Кроме того, когда вы говоритеaccess/connecting
, что вы на самом деле имеете в виду? (Например:exec
,REST
,kubectl
??)2. Пожалуйста, отредактируйте вопрос, чтобы ограничить его конкретной проблемой с достаточной детализацией для определения адекватного ответа.
Ответ №1:
Конфигурация MySQL YAML для Kubernets
apiVersion: v1
kind: Service
metadata:
name: mysql
spec:
ports:
- port: 3306
selector:
app: mysql
clusterIP: None
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: mysql
spec:
selector:
matchLabels:
app: mysql
strategy:
type: Recreate
template:
metadata:
labels:
app: mysql
spec:
containers:
- image: mysql:5.6
name: mysql
env:
# Use secret in real usage
- name: MYSQL_ROOT_PASSWORD
value: password
ports:
- containerPort: 3306
name: mysql
volumeMounts:
- name: mysql-persistent-storage
mountPath: /var/lib/mysql
volumes:
- name: mysql-persistent-storage
persistentVolumeClaim:
claimName: mysql-pv-claim
вы можете использовать имя службы для подключения к MySQL из контейнера busy box
kubectl run -i --tty busybox --image=busybox --restart=Never -- sh
приведенная выше команда запустит один контейнер Busy box.
запустите kubectl get pods
, чтобы проверить состояние обоих модулей.
В контейнере Busy вы сможете запустить команду для подключения к MySQL
mysql -h <MySQL service name> -u <Username> -p<password>
Ссылка на документ: MySQL: https://kubernetes.io/blog/2015/10/some-things-you-didnt-know-about-kubectl_28 /
Окно занятости: https://kubernetes.io/blog/2015/10/some-things-you-didnt-know-about-kubectl_28 /
Комментарии:
1. Когда я запускаю mysql cmd в окне занятости, он выдает эту ошибку «sh: mysql: не найден» должен ли я использовать какое-либо другое изображение вместо busybox?
2. вы можете использовать другой образ или установить клиент MySQL в образ busy box, надеюсь, вы знаете команду для установки клиента mysq. считайте, что окно занято, поскольку система Ubuntu открыта, вы можете использовать и установить CLI apt-get install myql ….. client или любую другую команду
3. Я попытался установить в busybox, но не смог добиться успеха, вместо этого я использовал ubuntu image, следуя инструкциям, упомянутым u. Наконец-то он был выполнен. Ответ был действительно полезным. Приветствия!
4. рад слышать, что проблема решена. вы также можете проголосовать за ответ, если сочтете его полезным.