Slach
Доброе утро всем, а подскажите пожалуйста
где работает kubelet в AWS и GCE ?
т.е. это получается запуск Docker внутри виртуалки запускается? и на каждой ноде кластера стоит еще etcd?
И есть ли у кого то в этом чате кто делал гибридный кластер на GCE + bare metal?
Dmitry
Serega
Vlad
О, в новый docker edge for mac завезли kubernetes. Minicube можно отправлять в отставку
Slach
речь о federation ?
да, похоже это оно
ок. да речь идет о federated clusters - hybrid cloud
вот я правильно понял что всякие там AWS ECSэто просто обычные EC2 в которых уже Docker есть и этим Docker можно рулить через AWS API ?
вокруг которого уже идет абстракция
и что k8s в этом случае ставит просто kubelet прямо внутрь этого самого EC2 ?
и аналогично с Goolge GCE?
Maksim
Привет. Meltdown нас поразил) ни ктотне обратил внимание на падение производительности?
Serega
так чтобы заметить разницу нужно бенчмаки до и после делать.
Serega
@BloodJazMan
ECS выносит на свалку истории. Не советую смотреть. Они ведь не просто так тоже хостед кубернетес пилят. (да, это обычные ec2 виртуалки с докером и амазоновским шудулером)
Ну и исходя из ваших вопросов, я очень сомневаюсь что вам нужен cluster federation. К тому же как по мне он еще не зрел. (GKE его не поддерживает тоже).
Pavel
По поводу снижения производительности на амазоне
Pavel
А вот так выглядит устранение Амазоном этих уязвимостей. Сегодня они выкатили обновление на гипервизорах.
Также выглядят графики у знакомых. Они уточняли у Амазона, и Амазон подтвердил причину.
Etki
ребят, может хотя бы здесь устроим meltdown-free зону?
Slach
Ivan
Всем привет!
Подскажите, как правильно передать в контейнер в кубернете реальный айпишник клиента?
У меня контейнер сейчас получает либо айпишник из подсетки подов, либо айпишник соседних нод.
Сетка на фланеле, настройки - "Backend": "Type": "host-gw"
Slach
хм а бекенд на чем написан? и как общается ?
HTTP ?
Ivan
да, пхп и нжинкс
Alex
В x forvarded for смотришь?
Slach
nginx в ingress?
X-Real-IP
X-Forwared-For
http://nginx.org/ru/docs/http/ngx_http_realip_module.html#real_ip_header
Ivan
нет, нжинкс просто как отдельный контейнер,
X-Real-IP не помог поотму что в нжинкс приходит уже левый айпишник и его бессмысленно передавать в заголовке
Ivan
я подозреваю, что надо копать с торону настроек фланнел или сетки кубернета, но пока не понимаю, как сформулировать запрос в гугле))
Slach
ну как бы nginx тут выглядит лишним как контейнер в поде
и если ты чреез проброс порта на nginx трафик заводишь то тоже не очень хорошо это все
Slach
настройки flannel лежат в другой плоскости
Slach
IMHO ты должен понять как на уровне TCP (не HTTP) у тебя данные во flannel ходят и где что преобразоывается через всякие там PAT\NAT и т.п.
т.е. вот пришел пакет
TCP из внешей публичной сети
что дальше с ним происходит от кого к кому он пуляется и как преобразоываается пока дойдет до контейнера в твоем кластере
когда поймешь, сразу все проблемы решается =)
Etki
Bsod
лоадбалансер/ингресс контроллер
Ivan
нжинкс это обязательный элемент - через него на сайте отдаётся статика.
у контейнера с нжинкс выброшен порт в режиме NodePort т.е. траффик, который приходит на айпишник любой ноды на 80 порт отправляется в этот контейнер.
какой путь проходят пакеты в этой цепочке - я не знаю и пока не представляю, как выяснить. подозреваю, что в процессе передачи траффика участвуют kube-proxy.
запрос я отправляю напрямую на айпишник ноды на 80 порт. в логах нжинк при этом падает лог с айпишником из сетки подов
Terry
А тем временем, в Docker for Mac версии 17.12 CE Edge завезли поддержку Kubernetes.
https://goo.gl/wCdKfz
P.S. Переключится на Edge версию можно в настройках докера.
G72K
Slach
G72K
Ivan
G72K
в Service с NodePort
Slach
Anonymous
Anonymous
ну что, кто уже на istio пересел, давайте делиться болью :)
Aleksandr
Istio больше чем в одном неймспейсе уже может работать?
Anonymous
угу, щас ставится в отдельный неймспейс по типу deis и всяких таких
Anonymous
ну да, на текущий момент там порядочно много магии… но в целом если есть время свободное то на стажинге потыркаться довольно интересно
Slach
а как все таки правильно с логами жить в kubernetes?
выводить логи в JSON?
или обычный stderr + stdout будет нормально?
приложения на golang
Anonymous
а как все таки правильно с логами жить в kubernetes?
выводить логи в JSON?
или обычный stderr + stdout будет нормально?
приложения на golang
ну если вкратце то json в случае когда вы хотите собирать автоматизированными системами в одно место, и как обычно если не дозрели до этого
у меня есть отдельная переменная окружения для этого: локально и на машинах тестировщиках логи выводятся строками читаемыми, когда в кластере то пакуются в json
тут тоже куча подводных камней... к примеру, на ранней стадии продакшна (как у меня) я не вижу смысла логи собирать (то есть у меня был стек ELK куда все складировалось, но это нафиг никому не вперлось и я отключил чтоб ресурсы не тратить)
лайфках: если неохота возиться а инфу со всех подов видеть охота рекомендую для начала попробовать утилиту stern
Anonymous
> выводить логи в JSON?
> или обычный stderr + stdout будет нормально?
вообще если руководстоваться 12fa то все логи должны идти в stdout/stderr, то есть приложение не должно знать о каких-то внешних системах логгирования - задача fluentd и им подобных собирать логи и обрабатывать... ну а там зависит только от правил которые вы настроите: json проще собирать без правил (тупо берем строку и посылаем куда надо), но не всегда это доступно (как бы разработчик ни старался приложение может плюнуть стектрейсом, или просто в приложении нет доступа к формату логов) и приходится регулярки создавать - я к тому что и то, и то придется делать
Anonymous
1) создаю деплоймент который отвечает по grpc протоколу
2) создаю для него сервис:
- при подключении через сервис не пускает (helloworld.default.svc.cluster.local)
- подключение напрямую проходит без проблем (kubectl get endpoints helloworld)
код сервиса:
apiVersion: v1
kind: Service
metadata:
labels:
app: helloworld
name: helloworld
spec:
ports:
- port: 80
name: grpc-helloworld
protocol: TCP
targetPort: 8081
selector:
app: helloworld
какую хрень я упустил? есть какая-то специфика роутинга http2 в кубере? L4 сервис насколько я понимаю не должен влиять (UPD: забейте, где-то в другом месте накосячил, UPD2: нашел косяк, точно я был, все норм с L4 :)
bebebe
`ster`+
Slach
Slach
> для начала попробовать утилиту stern
https://github.com/wercker/stern
ага, спасибо вроде весьма полезно =)
Janos
Здравствуйте,
▫️Какой у вас проект или где работаете?
Сервис для бронирование отелей
▫️В чём вы специалист?
Java
▫️Чем можете быть интересны или полезны сообществу?
Я бесполезный на данном этапе
▫️Чем интересно сообщество вам?
Начинаю учить k8s
▫️Откуда вы?
Будапешт
▫️Как узнали про группу?
С чата про докер
#whois
Logan
Janos
Konstantin
подскажите, пожалуйста, какой всё-таки самый простой/мейнстримный вариант для разворачивания k8s на aws? От обилия вариантов разбежались глаза: kops/kube-aws/kubespray/tectonic/conjure-up и тд
Logan
Konstantin
@not_logan продакшн (маленький)
CrusaderX
Меня kops более чем устраивает
Janos
Logan
Serega
Konstantin
спасибо!
Janos
Rustam
Играюсь с self hosted. Что-то не понимаю как поднять api-server после ребута мастер-ноды.
В доке написано: «a self-hosted cluster cannot recover from a reboot of the master node without manual intervention»
А как чинить — не написано.
В docker ps есть controller-manager, scheduler и etcd, но апи сервера нету.
Может кто сталкивался?
G72K
Вам нужен check pointer из bootkibe
G72K
Вообще поднимайте весь selfhosted из bootkube
Rustam
ага, ща его пропробую
Sashko
Всем привет
Sashko
Я начинающий Системный Администратор Линукс
Sashko
Интересует К8s как повышение квадификации так сказать
Sashko
Хочу разобраться в принципах его работы и вообще что это за штука такая, не сталкивался, но жутко интересна его популярность и хочется освоить
Sashko
Logan
кубер опирается на контейнеры (не обязательно докер, просто докер хорошая точка для старта). без понимания того, как работает контейнер в кубе вам будет непросто
Sashko
Sashko
Anonymous
Что? Не томи уже, больше 2 часов жду продолжения фразы... ты умеешь делать больно
Sashko
Logan