Yury
А есть возможность описать сервис, который будет смотреть не внутрь кластера а на внешние сервисы. Ну чтобы откликался по днс, но эти сервисы не в кластере?
Artem
Да, запросто, например можно описать сервис для бд, которая на внешнем хосте вне в кластере
Yury
ну единственное что подходит это ExternalName, но а мне надо чтобы адреса и round-robin
Artem
https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
Yury
https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
ну это опять же не в ту сторону, насколько я понимаю. Нашёл решение с https://kubernetes.io/docs/concepts/services-networking/service/#services-without-selectors и вручную созданными Endpoints как раз на внешние адреса
𝚔𝚟𝚊𝚙𝚜
а если у вас несколько внешних ип? вот для этого и нужен
То есть правило форварда будет настроенно с externalIP именно на на clusterIP а с clusterIP уже на сервис, верно?
Artem
Я видимо не понимаю кейза использования
𝚔𝚟𝚊𝚙𝚜
Тогда я хоть убей, не понимаю назначения сервисов с типом nodePort, потому что сервисы типа clusterIP делают ровно тоже самое, но в добавок разрешают использовать привелигерованные порты
𝚔𝚟𝚊𝚙𝚜
причем, как я понимаю, он маршрутизирует к нужному контейнеру сам - у меня работал сервис с IP одного сервера, но с контейнером на другом
А где конкретно этот clusterIP должен висеть? (я имею ввиду сам IP'шник) Где-то на ноде или внутри какого-то контейнера? - или он чисто dummy и есть только его упоминание в правилах ip-tables?
Logan
Просто номер?) или номер и имя?
Проблема в том, что сейчас персональными данными считается уже все. Включая логин
Lev
если я заполню таблицу 12 значными числами, то это будет считаться персональной информацией?)
Logan
если я заполню таблицу 12 значными числами, то это будет считаться персональной информацией?)
как я понял взбрык нашего правительства - если вы - нет. Если пользователи – да.
Роман
Кто разворачивает куб при помощи kubespray? Как там указать внутреннюю сеть между нодами? Чтобы не через интернет работали, а через свич. При этом ингресс-контроллеры должны смотреть в интернет...
Ivan
юзать переменную cloud_config
Ivan
на счет внутренней сети нужно указать network_plugin, я юзаю canal
Ivan
cloud_config можно заюзать если не хочешь юзать network_plugin, все ноды имеют внутренние ip адреса внутри сети облака
Роман
на счет внутренней сети нужно указать network_plugin, я юзаю canal
У меня calico. Нужно, чтобы он поверх внутренней сети работал - через свитч. Если я правильно понимаю, то сам кубер без разницы, как будет настроен, главное, чтобы оверлейная сеть работала по внутренней сети. Я пытаюсь добиться таким образом минимального отклика и увеличения быстродействия кластера.
Роман
В плейбуке есть такая конструкция: CALICO_IP="{{ip | default(ansible_default_ipv4.address) }}" Это оно?
Ivan
ага
Ivan
те у тебя на машинах по два интерфейса ?
Роман
те у тебя на машинах по два интерфейса ?
Да. Один в интернет смотрит, а другой в свитч включен.
Ivan
глянь ansible -m setup -f ansible_default_ipv4.address
Ivan
если засветится нужный тебе айпишник то ничего не меняй
Ivan
я бы задеплоил, посмотрел конфиги калико и все стало бы понятно)
Роман
я бы задеплоил, посмотрел конфиги калико и все стало бы понятно)
Вся проблема в том, что там продакшен). Хочется сначала информацию собрать перед тем, как делать.
Ivan
те ты хочешь сразу в продашн деплоить кубспреем, даже непоигравшись с ним ?))удачи
Ivan
в какое облако деплоишь ?
Ivan
просто там есть определенные траблы, глянь issues, многие фичи работают не везде, я испытывал много трабло в азуре, issue есть на них, также есть и hostfix но их надо накатывать, так как в релизе этого нет...
Ivan
на голое железо не деплоил, может кто деплоил, подскажите
Роман
Самое интересное - не сломается ли всё, если я на действующем кластере сменю CALICO_IP...
𝚔𝚟𝚊𝚙𝚜
Да. Один в интернет смотрит, а другой в свитч включен.
У меня похожая ситуация, только на внешних интерфейсах по умолчанию нет IP адресов, так что весь кластер работает на внутренних IP.
𝚔𝚟𝚊𝚙𝚜
Еще в kubernetes создал под который вешает IP-адреса на внешние интерфесы нод, если под переезжает то переезжает и внешений IP'шник
𝚔𝚟𝚊𝚙𝚜
если создать сервис, и в ExternalIPs указать ему один из этих внешних ip, то он будет маршрутизировать трафик внутрь
𝚔𝚟𝚊𝚙𝚜
но на правильность решения не претендую :)
Роман
У меня похожая ситуация, только на внешних интерфейсах по умолчанию нет IP адресов, так что весь кластер работает на внутренних IP.
То есть, балансировкой входящего трафика занимается какой-то отдельный сервер вне куба?
𝚔𝚟𝚊𝚙𝚜
неа, балансировкой занимается сам куб
𝚔𝚟𝚊𝚙𝚜
т.к. если нода с внешним IP сдыхает, кубернетес запустит этот контейнер на другой, контейнер назначит внешний IP этой ноде и трафик пойдет через нее
𝚔𝚟𝚊𝚙𝚜
@tetramin, а что у тебя в роли балансировщика?
Роман
@tetramin, а что у тебя в роли балансировщика?
nginx ингресс-контроллер в кубере.
𝚔𝚟𝚊𝚙𝚜
а как ты снаружи хочешь к нему обращаться?
Роман
Вот это и непонятно. Как calico заставить ходить по внутренней сети, а ингресс заставить слушать внешний интерфейс. Возможно, в этом поможет hostNetwork: true. Вот, только какой он выберет интерфейс для этого...
𝚔𝚟𝚊𝚙𝚜
на нодах он не вешает ip-адреса, а только создает правила в iptables
𝚔𝚟𝚊𝚙𝚜
а дальше на какой интерфейс ты ни обратишься, он смаршрутизирует это внутрь
Роман
Ночью попробую на живой кластер по новой calico накатить.
Vasiliy
Просто номер?) или номер и имя?
да, храним просто номер телефона, но везде пишут, что это является персональными данными :(
Vasiliy
отказываться от google cloud не придётся, пока ещё ни один закон не запрещает передачу ПД за границу
но Федеральный закон от 27.07.2006 N 152-ФЗ (ред. от 29.07.2017) "О персональных данных" 5. При сборе персональных данных, в том числе посредством информационно-телекоммуникационной сети "Интернет", оператор обязан обеспечить запись, систематизацию, накопление, хранение, уточнение (обновление, изменение), извлечение персональных данных граждан Российской Федерации с использованием баз данных, находящихся на территории Российской Федерации, за исключением случаев, указанных в пунктах 2, 3, 4, 8 части 1 статьи 6 настоящего Федерального закона. (часть 5 введена Федеральным законом от 21.07.2014 N 242-ФЗ) http://www.consultant.ru/document/cons_doc_LAW_165838/b004fed0b70d0f223e4a81f8ad6cd92af90a7e3b/#dst100036
Nikolay
"с использованием" грубо говоря, законодатель хочет иметь *копию* этих ПД на территории РФ, чтобы в случае чего получать доступ к данным без волокиты с запросами (чтобы было куда маски-шоу присылать). Саму передачу ПД через границу при этом не запрещали.
Vasiliy
да, но я так понял, что первичная обработка данных должна быть на территории РФ насколько я понял, нужно/можно не делать им бэкап бд, который будет на территории РФ, а делать бэкап себе и хранить за границей)
Vasiliy
хотя явно об этом не сказано, такой вывод нельзя сделать из "оператор обязан обеспечить запись, систематизацию, накопление, хранение, уточнение (обновление, изменение), извлечение персональных данных граждан Российской Федерации с использованием баз данных, находящихся на территории Российской Федерации"
Denis
как передать в параметры запуска $HOSTNAME? упорно не раскрывается при запуске, запускаю java. Я видел воркэраунды с sh -c но ругается что слишком длинное имя файла (там куча параметров)
Denis
но при этом не просто HOSTNAME нужен а типа $HOSTNAME.foo
A
может попробовать через как - то так /bin/sh -c “java … $(HOSTNAME).foo”
Vasiliy
:) нельзя, но можно? 2 мин, попробую еще раз прочитать разъяснение
Etki
"При этом, статья не содержит указания на то, что такие действия должны совершаться исключительно с использованием баз данных, размещенных на территории России."
Vasiliy
но "Таким образом, персональные данные гражданина Российской Федерации, первоначально внесенные в базу данных на территории Российской Федерации и актуализируемые в ней («первичная база данных»), могут далее передаваться в базы данных, расположенные за пределами России («вторичные базы данных»), администрируемые иными лицами, с соблюдением положений о трансграничной передаче данных. ", т.е. именно "первоначально", а значит – нельзя юзать google cloud platform :( как же я все это не люблю :(
Etki
ну то есть минкомсвязь на своем сайте сама прекрасно понимает, что это блевня и сама подсказывает тебе как галантно обойти закон
Etki
если честно, зная что бизнес в россии обчыно действует в питоновом режиме better pray for forgiveness rather ask for permission, я вообще удивлен что этому уделяется столько внимания, а не просто ставится реплика и все забивают
Vasiliy
но ведь, исходя из этого разъяснения, нужно именно "первоначально внесенные в БД на территории РФ", похоже просто реверс прокси в РФ не поможет такая это дичь все эти законы)
Nikolay
а как узнают? видимых внешних признаков нарушения нет
Vasiliy
ну это может важно для инвесторов, например, хотят быть уверены, что все в порядке
Vasiliy
но ведь, исходя из этого разъяснения, нужно именно "первоначально внесенные в БД на территории РФ", похоже просто реверс прокси в РФ не поможет такая это дичь все эти законы)
но еще с другой стороны, вот это "первоначально" – *не* выдержка из закона, а выдержка из разъяснения, вывод в котором может быть сделан ошибочно, например
Etki
не помню уже точно
Vasiliy
ладно, всем спасибо, простите за оффтоп)
Denis
Я правильно понимаю что если не создать headless service для StatefulSet то в DNS не будет записей вида foo-0.service-name?
Anonymous
кто-нибудь использовал kubespray?
Anonymous
это нормально что он целый час работал и писав в консоль пусты строки?
Anonymous
в итоге я его остановил, теперь думаю почему он так работает p.s. деплою на bare-metal
Роман
кто-нибудь использовал kubespray?
Я использую. На 8 серверов деплоится за 20-25 минут.
Роман
Что настраивал в нём?
Anonymous
Что настраивал в нём?
ничего, только айпишники указал
Anonymous
kubespray prepare —nodes MASTER NODE1 NODE2 —nodes 2 —masters 1
Anonymous
в переменных просто айпи адреса указаны
Anonymous
я его правильно использую? он ничего не выводит в консоль кроме пустых строк? 🤔
Maksim
хз) я ансиблём пользуюсь)