Andrew
03.04.2018
07:33:01
Блин, чуваки, в доке кубов есть замечательная инструкция как поднять кластер на bare-metal с kubeadm, у меня он завелся с полпинка, что вы блять чудите?
Anton
03.04.2018
07:35:01
Andrey
03.04.2018
07:35:16
окромя tectnonic
Google
Andrew
03.04.2018
07:35:47
Andor
03.04.2018
07:36:22
Anton
03.04.2018
07:36:24
Vadim
03.04.2018
07:36:35
нету у кореос своего кластера.
спасибо, уже прочитал на сайте CoreOS:
Most of these scenarios dedicate a few machines, bare metal or virtual, to running central cluster services. These may include etcd and the distributed controllers for applications like Kubernetes, Mesos, and OpenStack.
Andrey
03.04.2018
07:38:32
Anton
03.04.2018
07:40:40
etcd в одном экземляре смотрю до сих пор
Anton
03.04.2018
07:42:23
Anton
03.04.2018
07:43:44
Andrey
03.04.2018
07:43:49
а
надо проверить, у меня как раз есть кластер из kubeadm
Vadim
03.04.2018
07:44:16
тогда другой вопрос: в чем преимущество "CoreOS + Kubernetes" над "Другой Linux + Kubernetes"?
Andrey
03.04.2018
07:45:51
Vadim
03.04.2018
07:46:30
ну это больше человеческий фактор конечно )
Google
Vadim
03.04.2018
07:46:48
хотя я понимаю, что это плюс
а что еще?
Vadim
03.04.2018
07:47:07
атомарные апдейты
Andrey
03.04.2018
07:49:02
ОС типа Atomic/CoreOS удобны для больших инсталляций с динамическим поднятием и выкидыванием машинок. Они под это разрабатывались
Vadim
03.04.2018
07:50:20
ну я пока для старта хочу использовать 2 хоста, позже уже добавлять хосты для производительности и настройки отказоустойчивости
поэтому и возникло сомнение, или не перебор сразу использовать CoreOS
Andrey
03.04.2018
07:51:41
можно и coreos. Я его на домашнем серваке использую, в single host k8s cluster'е
но если вам нужен именно кластер, то долго думать над выбором ОС не стоит, берите наиболее привычную вам. Но не centos, говорят там проблемы с k8s :)
остаётся ubuntu/debian/w2k19
Vadim
03.04.2018
07:53:56
alpine?
Andor
03.04.2018
07:54:09
alpine на хосте?
Fike
03.04.2018
07:54:27
ну чтоб места много не жрал =)))
Vadim
03.04.2018
07:54:46
ну alpine вроде как можно везде использовать
Andor
03.04.2018
07:55:12
ну я реальных применений alpine на хосте не видел
Fike
03.04.2018
07:55:31
там не совсем стандартная библиотека всем рулит, поэтому есть возможность в ежедневном режиме хватать не очень ожидаемые ситуации
Andor
03.04.2018
07:55:35
кажется весь дистрибутив будет меньше весить, чем два бинарника kubelet+docker
Anton
03.04.2018
07:56:07
Andrey
03.04.2018
07:57:09
alpine?
нене. компилировать замучаетесь
Anton
03.04.2018
07:57:56
Let Eat
03.04.2018
07:58:35
Google
Let Eat
03.04.2018
08:03:07
Vadim
03.04.2018
08:03:34
?
Andrey
03.04.2018
08:03:43
Let Eat
03.04.2018
08:04:29
Andrey
03.04.2018
08:04:48
kubeadm вроде как не умеет multimaster
Let Eat
03.04.2018
08:06:57
Andrey
03.04.2018
08:07:36
ignition только раз отрабатывает
first boot
Let Eat
03.04.2018
08:08:26
Andrey
03.04.2018
08:09:18
и всё переставляет с нуля? Хм
Let Eat
03.04.2018
08:10:53
В этом и соль. "все переставляет" занимает секунд 40 :) зато всегда предсказуемый результат
А не так, что долбим ансибл пока все не заработает, но потом на чистом хосте "рабочий" ансибл все равно ломается на пол пути
Andrey
03.04.2018
08:11:57
Для системы с одним воркером это не вариант :)
state весь теряется
Let Eat
03.04.2018
08:12:29
Можете не форматировать data volume
Ignition умеет "форматировать, только если еще не отформатированно"
Anton
03.04.2018
08:13:08
Andrey
03.04.2018
08:13:34
это, конечно, интересно. Но у меня всё равно только один сервак.
Google
Let Eat
03.04.2018
08:13:51
Andrey
03.04.2018
08:15:54
у меня для этого есть k8s. Поверх чего он стоит, debian или coreos - не так важно.
но аргументы я понял
у меня сервак лежит на кухне на холодильнике, и ещё 10 я туда впихивать не собираюсь :)
Let Eat
03.04.2018
08:17:31
Для приложений да, но сам k8s поднять нетривиально и хочется все эти прыжки иметь в коде , чтобы сделал один раз и забыл, только версии image поднимать, да новые AdmissionControllers прописывать
Andrey
03.04.2018
08:19:02
Да и как-то боязно по сети грузить сервак с данными с тулзой, которая по наличию флага решает форматировать или нет :)
и этот флаг ставишь ты сам своими кривыми ручками
нафиг-нафиг. Я ещё бэкапы не настроил
Vadim
03.04.2018
08:27:03
Andrey
03.04.2018
08:28:41
matchbox нужен для установки tectonic
а так можно minikube/kubeadm/kubespray использовать
Vadim
03.04.2018
08:29:26
ок, tectonic пока не планирую разворачивать
Andrey
03.04.2018
09:07:35
Привет ребят. У меня возможно глупый вопрос, но не смог быстро нагуглить.
Как сервисам из миникуба позволить стучать на хост машину к локальным адресам?
контекст - поднят php инстанс с локальным веб сервером на 127.0.0.1:8000 и сервис должен достучатся до него
Alexandr
03.04.2018
09:09:58
0.0.0.0?
Alexey
03.04.2018
09:10:39
нужно слушать или 0.0.0.0. или подсеть твего cni
Andrey
03.04.2018
09:11:54
юзать 10.0.2.2 законно?
Google
Andor
03.04.2018
09:12:56
100.0.2.2 надо юзать
Maksim
03.04.2018
09:14:02
100? Это же не нат сеть? каким макаром адрес стал 100?
Andor
03.04.2018
09:15:38
да это так, с прошлой работы воспоминания
Alexey
03.04.2018
09:15:48
Andrey
03.04.2018
09:16:20
Alexey
03.04.2018
09:17:15
только странно что 10,0,2,2, я думал что на 1 обычно хост заканчивается, ведь это какбы шлюз для подов других
Alexander
03.04.2018
16:03:53
Добрый день! Разворачивал k8s на площадке отличной от GCE и аозможно не совсем правильно отключал RBAC для Ci Runner ( https://gitlab.com/gitlab-org/gitlab-runner/issues/2130 )
sh-3.2# kubectl get pods
NAME READY STATUS RESTARTS AGE
gitlab-gitlab-5dcd88959d-6nwr2 0/1 ContainerCreating 0 10m
gitlab-gitlab-postgresql-5fff4f67bb-zqgxx 0/1 ContainerCreating 0 10m
gitlab-gitlab-redis-6c88945d56-pw5xm 0/1 ContainerCreating 0 10m
gitlab-gitlab-runner-5fc8656997-x86h5 0/1 CrashLoopBackOff 6 10m
sh-3.2# kubectl log gitlab-gitlab-runner-5fc8656997-x86h5
W0403 18:54:28.738278 12393 cmd.go:353] log is DEPRECATED and will be removed in a future version. Use logs instead.
+ cp /scripts/config.toml /etc/gitlab-runner/
+ /entrypoint register --non-interactive --executor kubernetes
Running in system-mode.
ERROR: Registering runner... failed runner=tQtCbx5U status=couldn't execute POST against http://gitlab-gitlab.default:8005/api/v4/runners: Post http://gitlab-gitlab.default:8005/api/v4/runners: dial tcp 10.233.49.219:8005: i/o timeout
PANIC: Failed to register this runner. Perhaps you are having network problems
sh-3.2# kubectl describe pod gitlab-gitlab-runner-5fc8656997-x86h5
...
Labels: app=gitlab-gitlab-runner
pod-template-hash=1974212553
Annotations: <none>
Status: Running
IP: 10.233.68.51
Controlled By: ReplicaSet/gitlab-gitlab-runner-5fc8656997
Containers:
gitlab-gitlab-runner:
Container ID: docker://0daccbc35e1eb67be885870bb60bc416f949254b21a774233c2169e4d177713e
Image: gitlab/gitlab-runner:alpine-v10.3.0
Image ID: docker-pullable://gitlab/gitlab-runner@sha256:9b1e53a91fc8914c934b9eacf93365c7af97d97514c71b1825f677c8ee2a2369
Port: <none>
Command:
/bin/bash
/scripts/entrypoint
State: Waiting
Reason: CrashLoopBackOff
Last State: Terminated
Reason: Error
Exit Code: 1
Started: Tue, 03 Apr 2018 18:51:52 +0300
Finished: Tue, 03 Apr 2018 18:52:22 +0300
Ready: False
Restart Count: 6
Liveness: exec [/usr/bin/pgrep gitlab.*runner] delay=60s timeout=1s period=10s #success=1 #failure=3
Readiness: exec [/usr/bin/pgrep gitlab.*runner] delay=10s timeout=1s period=10s #success=1 #failure=3
Environment:
CI_SERVER_URL: http://gitlab-gitlab.default:8005/
CI_SERVER_TOKEN: <set to the key 'runner-token' in secret 'gitlab-gitlab-runner'> Optional: false
REGISTRATION_TOKEN: <set to the key 'runner-registration-token' in secret 'gitlab-gitlab-runner'> Optional: false
KUBERNETES_IMAGE: ubuntu:16.04
KUBERNETES_PRIVILEGED: true
KUBERNETES_NAMESPACE: default
...Conditions:
Type Status
Initialized True
Ready False
PodScheduled True
Volumes:
var-run-docker-sock:
Type: HostPath (bare host directory volume)
Path: /var/run/docker.sock
HostPathType:
scripts:
Type: ConfigMap (a volume populated by a ConfigMap)
Name: gitlab-gitlab-runner
Optional: false
default-token-pzl9n:
Type: Secret (a volume populated by a Secret)
SecretName: default-token-pzl9n
Optional: false
QoS Class: BestEffort
Node-Selectors: <none>
Tolerations: <none>
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 12m default-scheduler Successfully assigned gitlab-gitlab-runner-5fc8656997-x86h5 to k8s-node2.gettransfer.cz
Normal SuccessfulMountVolume 12m kubelet, k8s-node2.gettransfer.cz MountVolume.SetUp succeeded for volume "var-run-docker-sock"
Normal SuccessfulMountVolume 12m kubelet, k8s-node2.gettransfer.cz MountVolume.SetUp succeeded for volume "default-token-pzl9n"
Normal SuccessfulMountVolume 12m kubelet, k8s-node2.gettransfer.cz MountVolume.SetUp succeeded for volume "scripts"
Normal Started 10m (x4 over 12m) kubelet, k8s-node2.gettransfer.cz Started container
Normal Pulled 9m (x5 over 12m) kubelet, k8s-node2.gettransfer.cz Container image "gitlab/gitlab-runner:alpine-v10.3.0" already present on machine
Normal Created 9m (x5 over 12m) kubelet, k8s-node2.gettransfer.cz Created container
Warning BackOff 2m (x34 over 11m) kubelet, k8s-node2.gettransfer.cz Back-off restarting failed container
Коллеги, как быть?
Кто сталкивался с деплоем Gitlab Ci средствами helm на bare-metal servers?
в чем может быть причина? Может дело в RBAC и если да, то как его отключить "глобально"
Спасибо
Vadim
03.04.2018
16:08:33
gitlab-gitlab-5dcd88959d-6nwr2 0/1 ContainerCreating 0 10m
у вас еще сам гитлаб не поднялся, похоже
Alexander
03.04.2018
16:18:47
@vrutkovs да, не могу понять в чем проблема. Ошибки меняются в ходе replase RBAC для helm а
Vadim
03.04.2018
16:20:18
Vlad
03.04.2018
16:46:48
А зачем отключать rbac для gitlab-runner?
Я запускал с rbac: https://gitlab.com/charts/charts.gitlab.io/blob/master/charts/gitlab-runner/values.yaml
## For RBAC support:
rbac:
create: true