Andrey
k8s сам все разрулит дальше
Отделение Bereke Bank
Просто создаешь конфиг мап с реквизитами. И суешь его во все деплойменты
Конфигмап? Разве креды реджистри не в секретах надо хранить?
ebalashov
Здравствуйте коллеги, подскажите внутри одного пода контенеры могут обращаться друг к другу по name?
Pavel
Никто в этом режиме надолго не работает :) или я ошибаюсь?
Нет, есть прям постоянный режим, когда полная копия работает все время, на случай падения. Но я, конечно, не пробовал)
ebalashov
если сетка ingress
ЧТо значит сетка?
Отделение Bereke Bank
ойойой, твоя правда. Секрет
Ато я подумал что делаю не правильно 😅
Grey
если сетка ingress
ingress это не сетка а "балансировщик"
Andrey
Ато я подумал что делаю не правильно 😅
ну secret просто по сути тот же конфигмап, тока его типо не видно 😄
ebalashov
Причем тут ingress то? )
Artur
ошибся, overlay. вот так кажись
Отделение Bereke Bank
Подскажите как лучше запускать миграции (джанговские)? Job-ами или initContainers?
Vladimir
добрый день! хочу спросить, наверное тривиальную вещь, но я не понимаю поднял kubernetes, пытаюсь для теста запустить nginx если сделать через kubectl create deployment nginx --image=nginx kubectl create service nodeport nginx --tcp=80:80 то всё работает $ kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 13d nginx NodePort 10.104.143.85 <none> 80:30404/TCP 18s а если делаю через yaml, то вроде бы тоже всё работает $ kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 13d nginx NodePort 10.106.158.166 <none> 80:30536/TCP 9s но страница не доступна я чего то не доделал? если можно скажите чего и собственно в какую сторону копать yaml вот такой apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2 kind: Deployment metadata: name: nginx labels: app: nginx spec: replicas: 1 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:latest imagePullPolicy: Always ports: - containerPort: 80 --- apiVersion: v1 kind: Service metadata: name: nginx labels: name: nginx spec: type: NodePort externalTrafficPolicy: Cluster sessionAffinity: None # clusterIP: 192.168.27.177 ports: - protocol: TCP port: 80 targetPort: 80 selector: name: nginx
Отделение Bereke Bank
В случае с initContainers не понял можно ли им передать env-ы https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ 🤔
G72K
Нет, есть прям постоянный режим, когда полная копия работает все время, на случай падения. Но я, конечно, не пробовал)
У нас все замедляется при лайв миграции существенно , эта штука наверняка так же работает и убивает лейтенси в труху.
Artem
У кого как организовано хранилище внутри кубера?
cent
А кто-то ловил от helm при установки prometheus Error: Chart incompatible with Tiller v2.12.0-rc1 ?
Artur
Просто создаешь конфиг мап с реквизитами. И суешь его во все деплойменты
достаточно будет на мастере выполнить kubectl create secret docker-registry, после чего можно будет использовать containers: - name: private-reg-container image: <your-private-image> imagePullSecrets: я правильно понимаю ?
Artur
благодарю
Vladimir
Народ, а на меня можно обратить внимание
G72K
Народ, а на меня можно обратить внимание
Ну сделайте kubectl get service -o yaml сервиса который руками сделали и сравните с ямлом
Zhyhanov
Народ, а на меня можно обратить внимание
ты там с портами что то накрутил
Anton
Всех приветсвую
Anton
Товарисчи у кого нить было что перестал работать днс внутри подов? при том что сам днс пингуется
Сергей
всем привет, подскажите пожалуйста по Helm. я делаю темплейт и из-за условий + циклов у меня возникает куча пустых строк. можно ли как-нибудь их убрать?
G72K
есть еще: kubectl alpha diff
В 1.13 kubectl уже не альфа . Но оно вроде сравнивает файл с кластером
Сергей
Vadim
Не смотреть на них
в golang темплейтах нет whitespace control?
G72K
ну такое
Ну вот я на github.com нажимаю ctrl + u и вижу кучу пустых строк и меня это не парит :) Почему в случае с ямлами бы не поступить так же
G72K
в golang темплейтах нет whitespace control?
Все там есть. Я просто против силозатрат на ненужные вещи. Если мы хотим полететь к звёздам , человечество должно более рационально подходить к выбору задач для приложения усилий. Это мой вклад в будущее
Сергей
ну в принципе мне их даже видеть не нужно по идее
Artur
что будет, если на одном кластере запустить 2 разных деплоймента nginx'а к примеру ( все на 80 порту )
Сергей
для отладки по сути только
Sergei
справедливо, тоже приму такую религию
тогда к звездам мы полетим на корабле из костылей и подпорок
cent
Товарисчи у кого нить было что перестал работать днс внутри подов? при том что сам днс пингуется
kubectl run dig --image=tutum/dnsutils --restart=Never --rm=true --tty --stdin --command -- dig service-name a +search +noall +answer можно еще так дернуть
Anton
так оно работает в общем то
Anton
просто в какой то момент перестает
Anton
заходишьь в под - пробуешь резолвить - нифига
Anton
создаешь новый под, в нем все ок
G72K
тогда к звездам мы полетим на корабле из костылей и подпорок
Наверняка есть на свете инженер, который смотрит на space X по телевизору в новостях и говорит другу: ты даже не представляешь как я накостылял в клапане сброса давления, пришлось сплав магнезия, вместо цезия использовать, ужас!
Pavel
@rossmohax Кстати, а если не офтопить про vSphere, а поговорить по делу 🙂 Я тут открыл для себя существование некоторой новой сущности cloud-controller-manager, которая теперь должна (или должна будет в будущем) отвечать за взаимодействие с cloud provider-ами, по части vSphere это насколько актуально, не в курсе? Потому что документация vmware предлагает по старинке настраивать свой cloud provider
Vyacheslav
Какой самый дешёвый куб в облаке теперь, с учётом недоступности gke для русских физ. лиц? Хотелось бы опробовать возможность микро проекты катить ещё куда-то, кроме heroku.
Puma
дигитал ошен
Puma
овх
Artur
если только деплойменты без сервисов и ингрессов - ничего
а какие есть варианты держать 2 таких сервиса на одном кластере ? понятно что для nginx юзать разные порты. как потом просто к ним обращаться ip:8080, ip:8081. не удобно. ставить перед ним проксик nginx для такого ?
Stanislav
Обычно делают таки ingress, а не извращаются с самопальными nginx.
Stanislav
Можно задачу подробне озвучить?
Stanislav
Кстати тоже вариант. Как раз для кластера.
Artur
Можно задачу подробне озвучить?
да нет задачи. эт так, вопросы при "вхождении"
Stanislav
Ну тогда сразу читай про ingress, пригодится...
Artur
благодарю
Artur
ingress в данном примере будут работать как "проксик", верно ?
Rainbow
Шестой бинарник?
тож хотел спросить, но нет. etcd же не считается таковым
Rainbow
просто контроллер
Pavel
Они активно выносят код в отдельный бинарник, но процесс не закончен еще вроде (ну я про 1.11)
Ну с 1.12 это вроде уже бета, другой вопрос относится ли это ко всем провайдерам или нет.
Nook
Привет всем. Есть проблема с доступностью контейнеров из локальной сети. 1) Используется Docker CE на macOS с включенным k8s 2) Установлен MetalLB с layer2 и ренжом 127.0.0.200-127.0.0.250 из-за особенностей Docker CE прокинуть реальную сетку туда я даже не представляю возможным 3) Есть MongoDB replicaSet (1 Primary и 2 Secondary) проблема в том, что у реплик междусобойчик потипу внутренного dns -> tms-replica-set-mongodb-replicaset-0.tms-replica-set-mongodb-replicaset.default.svc.cluster.local . НО! У меня нет доступа до этих хостов, даже если я настрою на ClusterIP то так же не будет доступа, а у монги есть единственное условие -> https://github.com/mongodb/specifications/blob/master/source/server-discovery-and-monitoring/server-discovery-and-monitoring.rst#clients-use-the-hostnames-listed-in-the-replica-set-config-not-the-seed-list
Nook
Короче я не могу просто так подключиться к ReplicaSet в Docker CE, может кто-нибудь знает рабочие варианты
Nook
По отдельности подключаться к репликам я могу спокойно
Rainbow
ClusterIP... разве не LoadBalancer для metallb?
Rainbow
ClusterIP это ip внутреней сети куба, от calico или кого.
Сергей
подскажите можно ли както через api делать reload приложения?
Rainbow
подскажите можно ли както через api делать reload приложения?
проще ручку в приложении сделать на падения. А куб перезапустит. Чем выдавать права на апи куба
Сергей
мне автодиплой надо сделать
Rainbow
вы совсем не туда идёте тогда
Rainbow
никто не делает reload контейнеров в кубере.кроме исключений вроде ingress-controller