1. Пожалуйста, рассмотрите возможность использования стабильной диаграммы управления nextcloud
2. Этот учебник немного устарел и его также можно найти здесь
В выпуске kubernetes 1.16 вы должны изменить во всех своих развертываниях apiVersion на apiVersion: apps/v1
, пожалуйста, взгляните на Устаревания и удаления . Кроме того, вы должны получить ошибку ValidationError(Deployment.spec): missing required field "selector"
, поэтому, пожалуйста, добавьте селекторы в вашем развертывании под Deployment.spec
, например:
selector:
matchLabels:
app: db
3. Наконец, создайте самозаверяющие сертификаты. В этом репо используется OMGWTFSSL - Самоподписанный генератор сертификатов SSL . Как только вы предоставите необходимую информацию, такую как имя сервера, путь к вашему локальному hostpath
и имена для ваших SSL-сертификатов, они будут автоматически созданы после одного запуска под указанным hostpath
:
volumes:
- name: certs
hostPath:
path: "/home/<someFolderLocation>/certs-pv"
- эта информация должна быть повторно использована в разделе Обратный прокси-сервер Nginx для
nginx.conf
4. В вашем nc-svc.yaml вы можете изменить тип сервиса на тип: NodePort
5. Как проверить, правильно ли работает ваша sercie:
kubectl get pods,svc,ep -o wide
Pods:
pod/nc-6d8694659d-5przx 1/1 Running 0 15m 10.244.0.6
Svc:
service/svc-nc NodePort 10.102.90.88 <none> 80:32500/TCP
Endpoints:
endpoints/svc-nc 10.244.0.6:80
Вы можете проверить свою службу внутри кластеразапустив отдельный модуль (например, ubuntu)
curl your_svc_name
, вы можете проверить, правильно ли работает обнаружение службы:
cat /etc/resolv.conf
nslokup svc_your_svc_name (your_svc_name.default.svc.cluster.local)
Из-за пределов кластера, используя NodePort:
curl NODE_IP:NODE_PORT ( if not please verify your firewall rules)
Once you provided hostname for your nextcloud service you should use
curl -vH 'Host:specified_hostname' http://external_ip/ (using http or https according to your configuration)
Кроме того, вы можете выполнить exec непосредственно в свой db pod
kuebctl exec -it db_pod -- /bin/bash and run
mysqladmin status -uroot -p$MARIADB_ROOT_PASSWORD
mysqlshow -uroot -p$MYSQL_ROOT_PASSWORD --status nextcloud
6. Что мне нужно сделать, чтобы получить доступ к моему следующему облаку? Я не выполнял туто-часть «Создание самозаверяющих сертификатов», потому что не знаю, как управлять.
7. Как описано в пункте 3.
8. Эта часть мне не понятна: from another machine with nginx route a CNAME to the service
См.: Служба ExternalName - это особый случай Службы, в котором нет селекторови использует вместо них имена DNS.
Дополнительные ресурсы:
Надеюсь, эта помощь.