Aleksey
pvc должен быть менее чем pv
Aleksey
опять же это всё верно для какого нить локального провиженера. для более интеллектуальных случаев вам при наличии pvc провиженер создаст pv нужного размера
Павел
опять же это всё верно для какого нить локального провиженера. для более интеллектуальных случаев вам при наличии pvc провиженер создаст pv нужного размера
Ну смотри, у меня задача: создать темплейты для нескольких небольших тестовых однонодовых кластеров. И под базу нужно сделать волюм. Я же правильно понимаю, что я как-то вот так создаю PV: kind: PersistentVolume apiVersion: v1 metadata: name: postgres-pv-volume labels: type: local app: postgres spec: storageClassName: manual capacity: storage: 5Gi accessModes: - ReadWriteOnce hostPath: path: "/mnt/data" Вот как-то так PVC: apiVersion: v1 kind: "PersistentVolumeClaim" metadata: name: "db-data" spec: accessModes: - ReadWriteOnce resources: requests: storage: 5Gi storageClassName: manual И потом в спеке контейнера прифигачиваю к нему volume: spec: containers: - image: postgres:9.6 name: dbpostgres ports: - containerPort: 5432 volumeMounts: - name: postgres-db-data mountPath: /var/lib/postgresql volumes: - name: postgres-db-data persistentVolumeClaim: claimName: db-data
Aleksey
Сорри АФК
Павел
Коллеги, а вы когда в кубер выкатываетесь, в джобе для подключения просто конфиг кластера прокидываете через переменную, а потом echo $KUBE_CONFIG > .kube/confg и по сути оно должно потом стучаться сразу в нужный кластер?
Сергей
ребят как в ингрес можно сделать чтобы когда указываешь что /api должен смотреть в определенный сервис, то сервис тоже отадавал данные по урлу /api а не из /?
Just a baka
можно явно указывать kubeconfig в аргументах командной строки (* зависит от применяемой тулзы, конечно) или в переменных окружения, зачем эти пляски с копированием
Tadeusz
Лол
Anonymous
Здравствуйте, посоветуйте интересных докладчиков по DevOps на https://devconf.ru/ru/offers/DevOps
Семён
Коллеги, а вы когда в кубер выкатываетесь, в джобе для подключения просто конфиг кластера прокидываете через переменную, а потом echo $KUBE_CONFIG > .kube/confg и по сути оно должно потом стучаться сразу в нужный кластер?
вообще я вот так вот накостылил: stages: - modify-resource modify-resource: image: madfromplay/git-base:3 services: - docker:dind only: - triggers stage: modify-resource tags: - build script: - mkdir ~/.ssh/ - mkdir ~/.kube/ - echo $priv_key | base64 -d > ~/.ssh/id_rsa - echo $pub_key | base64 -d > ~/.ssh/id_rsa.pub - echo $kubeconfig | base64 -d > ~/.kube/config - chmod 600 ~/.ssh/id_rsa - ssh-keyscan -t rsa <my_repo> >> ~/.ssh/known_hosts - cd /tmp/ - git clone git@<my_repo>/k8s.git - cd k8s - /bin/sh controller-updater.sh - kubectl apply -f $PROJECT_NAME/$PROJECT_NAME-controller.yaml - git commit -m "automation deployment of $PROJECT_NAME" -a - git branch -a - git push git@<my_repo>/k8s.git
Семён
в башовом скрипте sed который версию перепиливает
Anonymous
@kvaps и @sintezoid
спасибо
Andrey
И снова здравствуйте! И снова передо мной задача - разобраться, как чистить “мусор” в сабже. Например, был деплоймент, создававший под, и к нему кучу связанных ресурсов - сервисы, персистен вольюм клэймы, может реплика сеты и т.п. И этот деплоймент удаляется. Есть какой-либо вариант автоматически или одной командой удалить также все связанные с ним подчиненные ресурсы?
Andor
есть
Andor
самый простой - находить по аннотациям и удалять
Andrey
хм. написать скрипт, парсящий ямлы деплойментов и выдирающий из аннотаций?
Andrey
а если ямлы удалили вместе с деплойментом - то или руками искать, или самому скриптом парсить ямлы имеющихся деплойментов, строить структуру существующих связей и удалять то что в нее не вошло?
Mikhail [azalio]
делайте по NS на дейплоймент и грохайте NS. Или используйте helm
Andor
хм. написать скрипт, парсящий ямлы деплойментов и выдирающий из аннотаций?
по лейблам ты можешь это сделать прямо через --selector
Solyar
хм. написать скрипт, парсящий ямлы деплойментов и выдирающий из аннотаций?
Вешать на деплоймент lable а потом селектором брать нужный
Solyar
Вообще это best practicies, заполненная метадата облегчает жизнь
Andrey
так вот зачем все эти лэйблы и прочая фигня… на будущее учту. а сейчас с существующим кластером разобраться как-то надо. спасибо!
Andor
эта "фигня" называется метаданные
Andrey
понятно. просто похоже в существующем кластере это игнорировалось, поскольку не влияло на работу непосредственно.
Andor
а как сервисы находят поды прямо щас?
Andor
и как ингрессы находят сервисы
Anonymous
Andor
Дмитрий Столяров? :)
Mikhail [azalio]
что за фигня! Я поставлю прод реди за день!
Andor
что за фигня! Я поставлю прод реди за день!
С нуля, включая ноль знаний про него?
Mikhail [azalio]
С нуля, включая ноль знаний про него?
в цитате этого условия нет!
Andrey
а как сервисы находят поды прямо щас?
смотрю примеры ямлов, в метадате в основном пара ключей - осмысленный нэйм и нэймспейс default
Andrey
Я не большой девопсщик, более глубоко не скажу
Andor
@distol ты мем
David
Это плохо или хорошо?
Andor
Не плохо и не хорошо, просто интересно
Anonymous
Легенда
Alik
Кто-нибудь уже пробовал куб в яндекс облако?
Pan
Это вброс ? 😉
*пошел за попкорном*
Incognito
да нормальный же вопрос. с инженерной точки зрения потрогать его интересно, но не более того
Lucky SB
Кто-нибудь уже пробовал куб в яндекс облако?
Пробовали. Посмотреть новичку и задеплоить хелпеврибади хватит
Lucky SB
На все наши запроосы тп ответила - все будет, функционал развиваетмя
Евгений
На все наши запроосы тп ответила - все будет, функционал развиваетмя
А чего вам не хватает, кроме интеграции с тамошним lb?
Lucky SB
Psp
Vadim
ммм, managed куб без psp. Я как раз себе бесплатный хостинг подыскивал :)
Artem
Есть подобное, но для формата крио? https://github.com/fluent/fluentd-kubernetes-daemonset
Vadim
И что же будет запускать поды с крио? Другой рантайм?
Artem
собирать логи в том формате, в котором пишет крио.
Artem
Просто не хочется руками регекспы писать для флюента. (По ссылке выше оно заточено на докеровский жсоновый драйвер)
Artem
логи контейнеров?
Vadim
логи контейнеров?
https://asciinema.org/a/236235
𝚔𝚟𝚊𝚙𝚜
свежее крио умеет писать в journald
Ооо, вот это прям оч.хорошо! Настанет день и я попробую снова
Andrey
Жахнул кучу комплитед и эвиктед подов, один нэймспейс в котором не было ни одного пода (надеюсь, никакие другие ресурсы не были на его завязаны), теперь хочу пожахать неиспользуемые сервисы. Но! На этом кластере крутится прод, и очень не хочется жахнуть лишнее. Поэтому хочу уточнить - если у сервиса в селекторе есть пара ключей/значений, а get deployment -l по каждому из них отдельно не выдают никакой деплоймент - значит что сервис не используется никем и его можно жахать? независимо от типа сервиса?
𝚔𝚟𝚊𝚙𝚜
встречный вопрос: кто-нибудь использует CRI-O на debian-based?
Andrey
это мне еще страшнее будет сейчас делать ) наверное попробую удалять сервисы по одному. еще как-то потом с персистент вольюмами надо разбираться
Andor
заводить новый кластер страшно?
Andor
а ломать прод не зная последствий не страшно?
Andrey
ну переносить прод так и так страшно )
Andor
да вроде не очень
Andrey
к тому же надо наверное вычленять какие ресурсы относятся к проду. часть я знаю, но насчет части сервисов и вольюмов не уверен. тот же ингресс/нжинкс и прочие лоад балансеры - они в одном экземпляре сейчас в общем нэймспейсе где и прод и дев и демо и куча всякой левой хрени еще
Andrey
ну есть конечно файлы конфигов, да их и так можно получить по запросу из кубера. Апплаем деплоились и все появлялось, подозреваю
Andor
а апплай применялся на воздух?
Andrey
Потом часть удалялась, а часть связанных не удалялась… А теперь мне партия приказала все это причесать
Andor
или на какие-то файлы?
Andor
откуда удалялась? из репозитория?
Andrey
подозреваю kubectl delete