Anonymous
Как можно удалить stateful set?
Anonymous
Max
Anonymous
Насколько я понимаю, контейнеры на разных нодах одного кластера обьединены в overlay сеть?
Anonymous
Т.е. поды, находящиеся на различных нодах но в одном кластере могут сообщаться друг с другом по сети?
Mikhail [azalio]
Denis
Приветсвую! Кто нибуть сталкивался с данным явлением?
К примеру создаю под в k8s:
kubectl run -i -t hello-world --restart=Never --rm --image=debian -- bash
Проходит секунд 60 и меня выкидывает из шелла с ошибкой:
error: watch closed before Until timeout
Как то можно увеличить время таймаута?
Andrey
в чарте helm можно делать поддиректории в templates?
Anonymous
можно
Sergei
Хелму вообще на директории похер
Sergei
Я вот долгое время не знал что шаблоны можно делать не только в _helpers.tpl , а можно любые файлы с подчеркивания назвать :-)
Denis
Приветсвую! Подскажите как лучше реализовать. Есть сервис, который запускает Job в k8s по средствам библиотеки kubernetes на python.
Естевственно этому сервису нужны креденшелы для от кластера, для того что бы он мог запускать джобы по средствам этой либы. Немного не понимаю как правильно можно прокинуть креденшилы k8s в этот сервис. Сам сервис запушен в том же кластере.
Andor
а он не умеет читать ~/.kube/config?
Andor
ну ты можешь специально для него сделать креденшлы только с нужными правами
Denis
Sergei
Делай сервис юзера и запускай джоб указывая этого сервис юзера. Тогда в контейнере будет токен с которым можно ходить в апи.
Denis
Anonymous
Чем может быть вызвано предупреждение
Warning FailedScheduling 3m (x3754 over 10h) default-scheduler pod has unbound PersistentVolumeClaims
?
Denis
А кто нибуть юзает эту либу пайтоновскую kubernetes? Она может по токену авториоватся в kubeapi?
Denis
Anonymous
Anonymous
volumeClaimTemplates:
- metadata:
name: data
annotations:
volume.alpha.kubernetes.io/storage-class: standard
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 512Mi
Anonymous
volumeMounts:
- mountPath: /stolon-data
name: data
- mountPath: /etc/secrets/stolon
name: stolon
volumes:
- name: stolon
secret:
secretName: stolon
Anonymous
Anonymous
Anonymous
Я думал, что он моздается автоматически при разворачивании сервиса
Denis
Denis
kubectl get pv
Anonymous
Anonymous
Anonymous
Через kubectl delete pvc
Denis
Остался только pvc, я его удалил.
Руками не нужно удалять. Попробуй вообщем сейчас удалить все pvc связанные с этим statefulset удалить и заного задеплоить этот сервис
Anonymous
Anonymous
Anonymous
И pvc тоже в состоянии pending
Denis
Значит что то не правильно. kubectl get pvc —all namespace
Anonymous
kubectl get pvc --all-namespaces
packet@dziminv:~/stolon$ kubectl get pvc --all-namespaces
NAMESPACE NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
default data-stolon-keeper-0 Pending 2m
Denis
kubectl describe pvc data-stolon-keeper-0
Denis
Anonymous
Denis
Denis
kubectl get storageclass
Vadim
без cloudprovider'а нужен провиженер, например https://github.com/kubernetes-incubator/external-storage/tree/master/local-volume
Denis
На vps
А откуда у тебя персистентные вольюмы берутся?
Denis
На vps
А до этого вообще работало? Мне просто показалось что до этого у тебя создался вольюм)
Andor
/report
Rainbow
join - report - spam - leave
Stanislav
Господа, кто-нибудь в кубернетовском nginx-ingress аутентификацию по сертификатам делал? А то либо я чего-то не понимаю, либо в примере https://github.com/kubernetes/ingress-nginx/tree/master/docs/examples/auth/client-certs какая-то хрень.
Ну то есть, добавляю свой CA.txt в секрет в соответствии с п.2, правлю Ingress для сервиса и получаю в конфиге nginx комментарий:
# error obtaining certificate: local SSL certificate ... was not found
и return 403 вместо контента
Stanislav
При этом руками добавленное в отдельно стоящем nginx - работает как ожидалось, т.е. требует клиентского сертификата для доступа.
Andor
Andor
не вольный рассказ
Stanislav
1) сделал ingress для тестово сайта с https на сертификатах из своего CA, убедился что работает
2) сделал секрет в соответствии с п.1 документации из файла CA.crt (на самом деле давно добавил, для других целей)
3) добавил строки из примера (имя секрета - в соответствии с 2) в конфиг ingress, применил, получил 403 на сайте и процитированное в nginx.conf
Andor
2) сделал секрет в соответствии с п.1 документации из файла CA.crt (на самом деле давно добавил, для других целей)как именно?
Andor
1) сделал ingress для тестово сайта с https на сертификатах из своего CA, убедился что работает как именно?
Andor
с 3 пунктом тот же вопрос
Stanislav
kubectl create secret generic secret-name --from-file=./CA.crt
Stanislav
п.3 - тупо скопировал строки с auth-tls и поправил имя секрета
Andor
нет показывай код
Andor
у нас тут не экзамен по русскому языку "изложение с элементами сочинения", у нас тут технический чят
Stanislav
kind: Ingress
metadata:
name: website-ssl
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/auth-tls-verify-client: "on"
nginx.ingress.kubernetes.io/auth-tls-secret: "default/ca-cert"
nginx.ingress.kubernetes.io/auth-tls-verify-depth: "1"
nginx.ingress.kubernetes.io/auth-tls-pass-certificate-to-upstream: "false"
Andor
nginx.ingress.kubernetes.io/auth-tls-secret: "default/ca-cert"
Andor
у тебя в команде другое имя у сикрета
Stanislav
Я её не копировал
Andor
ну почему так сложно просто взять и показать именно те ресурсы которые ты создал?
Stanislav
Потому что ресурс создан давно и для других целей.
Stanislav
В истории команд не сохранился
Andor
есть kubectl ... -o yaml
Andor
и ты будешь видеть точные аннотации и точные имена
Andor
и даже кусачки будут не нужны чтобы информацию вытащить
Stanislav
name: ca-cert
namespace: default