@kubernetes_ru

Страница 61 из 958
Тимур
21.09.2016
10:58:18
))

Maxim
21.09.2016
10:58:20
evilmartians.com

кстати про демонсеты

коллеги, а кто-нибудь прометеевский node-exporter в контейнере запускает?

Google
Maxim
21.09.2016
11:06:12
или все по-старинке, на хосте?

kay
21.09.2016
11:45:23
я запускаю

Maxim
21.09.2016
11:45:48
а чего с https://github.com/prometheus/node_exporter/issues/66

?

или не мешает?

kay
21.09.2016
11:48:47
не мешает

мне вот что интересно

как заставить prometheus использовать tls secrets для проверки etcd?

маунтить volume не вариант. должно работать из k8s secrets

Maxim
21.09.2016
11:54:07
$ curl --cacert ca.pem -H 'Authorization: Bearer улюлю' https://kubernetes.default.svc.kubernetes.local/metrics |grep -i etcd|wc -l 335

я вот так делаю

kay
21.09.2016
11:55:36
не то, но у меня есть идейка. надо обдумать

kubectl exeс и kubelet выдает следующее: error: error executing remote command: error executing command in container: operation timeout: context deadline exceeded

Google
kay
21.09.2016
12:01:55
ни у кого не было?

вместе с этими логами еще вот это: kubelet[17106]: E0921 12:01:01.644896 17106 generic.go:197] GenericPLEG: Unable to retrieve pods: operation timeout: context deadline exceeded kubelet[17106]: E0921 12:01:33.178902 17106 kubelet.go:927] Container garbage collection failed: operation timeout: context deadline exceeded

ах да... docker...

опять падла повис

@pipopolam у меня кстати трейс другой

Maxim
21.09.2016
12:08:41
чота он зачастил

а стораж-енжин какой?

kay
21.09.2016
12:09:25
вот мой strace: $ strace -q -y -v -p 16445 wait4(16452,

Maxim
21.09.2016
12:10:47
да тоже самое, походу

тоже ждет, пока девайс какой-нить разлочится

или мьютекс

kay
21.09.2016
12:11:19
docker info | grep -i stor Storage Driver: devicemapper WARNING: Usage of loopback devices is strongly discouraged for production use. Use --storage-opt dm.thinpooldev to specify a custom block storage device. WARNING: No swap limit support

Maxim
21.09.2016
12:11:27
агада

kay
21.09.2016
12:11:28
всё дефолтно

Maxim
21.09.2016
12:11:37
вот тоже самое было и у горелика

Maxim Filatov оно еще чот меня дискуражит про лупбэк-девайсы, но я не вполне понимаю, о чем оно Alexander Morozov @bregor ну правильно дискуражит Эта борода ваще не работает Maxim Filatov ачочо? расскажите Alexander Morozov @bregor короче пару лет назад редхат объявил что не работает И они там даже фиксить ничего не будут Maxim Filatov что не работает? Pavel Forkert лупбеки https://docs.docker.com/engine/userguide/storagedriver/device-mapper-driver/ Maxim Filatov опа неожиданно ну вообще это он так из официального пакета работает из https://apt.dockerproject.org/repo Alexander Morozov Ну потому что настройки этого стораджа на админе То есть на тебе

@kay_rus ^^^

kay
21.09.2016
12:15:14
т.е. надо бы задать дефолтненький overlayfs?

Maxim
21.09.2016
12:15:17
короче, ведущие собаководы советуют переключаться на Overlay2, либо девайсмаппер с raw-lvm

Alexander Morozov - один из коре-девелоперов доскера

Google
Maxim
21.09.2016
12:16:00
с ним сложно спорить

kay
21.09.2016
12:16:36
а в чем разница между overlay и overlay2?

Maxim
21.09.2016
12:16:53
один из костылей, другой - из ядра

kay
21.09.2016
12:17:19
т.е. рекомендуется overlay2. ок. записал.

Ivan
21.09.2016
12:19:20
висячему docker’у можно сделать kill -USR1, он тогда свой стектрейс в логи срыгнёт

kay
21.09.2016
12:20:05
многовато сругнул

Maxim
21.09.2016
12:20:05
Агада, про это я тоже уже писал

Давай я это Морозову отдам

Фигачь гист

Ivan
21.09.2016
12:21:32
тут товарищи тоже нарвались на проблемку с докером, пока дебажим. В основном goroutine 1758792 [semacquire, 61 minutes]: sync.runtime_Semacquire(0xc82044f574) /usr/local/go/src/runtime/sema.go:47 +0x26 sync.(*Mutex).Lock(0xc82044f570) /usr/local/go/src/sync/mutex.go:83 +0x1c4 github.com/docker/docker/daemon.(*Daemon).reducePsContainer(0xc8200ac000, 0xc8215e5c20, 0xc8212c5d40, 0xc823f6d3d0, 0x0, 0x0, 0x0) /usr/src/docker/.gopath/src/github.com/docker/docker/daemon/list.go:187 +0x49 github.com/docker/docker/daemon.(*Daemon).reduceContainers(0xc8200ac000, 0xc82272a800, 0xc823f6d3d0, 0x0, 0x0, 0x0, 0x0, 0x0) /usr/src/docker/.gopath/src/github.com/docker/docker/daemon/list.go:170 +0x1a5 github.com/docker/docker/daemon.(*Daemon).Containers(0xc8200ac000, 0xc82272a800, 0x0, 0x0, 0x0, 0x0, 0x0) /usr/src/docker/.gopath/src/github.com/docker/docker/daemon/list.go:91 +0x76 github.com/docker/docker/api/server/router/container.(*containerRouter).getContainersJSON(0xc82082c880, 0x7f08bc72a080, 0xc824082f90, 0x7f08c094aa88, 0xc8239db5f0, 0xc824375ce0, 0xc824082f00, 0x0, 0x0) …

понять надо кто первым этот container.Lock() сделал

kay
21.09.2016
12:23:36
@pipopolam скинул в личку

Maxim
21.09.2016
12:25:45
передал

ждем, пока в этой ихней калифорнии утро наступит

kay
21.09.2016
12:33:47
эвоночто. голый дистр не содержит linux-image-extra. а там как раз aufs сидит. не найдя этот модуль, docker решает использовать devicemapper

Maxim
21.09.2016
12:39:34
агада

Ivan
21.09.2016
12:43:10
мне тут чтобы вместо devicemapper’а overlay заюзать пришлось добавить --storage-driver=overlay2 в опции докера

Maxim
21.09.2016
12:43:25
ну да

это expected behaviour ;)

@kay_rus а ты для ноде_експортер'а юзаешь hostNetwork?

Google
kay
21.09.2016
12:59:36
да

Maxim
21.09.2016
12:59:43
чорт

kay
21.09.2016
12:59:53
ну извиняй =)

Maxim
21.09.2016
12:59:59
гггг

блин, чот у меня ENV не работает

env: - name: HOST_IP valueFrom: fieldRef: apiVersion: v1 fieldPath: status.hostIP ... args: - -web.listen-address=${HOSTIP}:9100

kay
21.09.2016
13:16:23
HOST_IP != HOSTIP

Maxim
21.09.2016
13:16:39
да это я криво начепятал

там в манифесте все совпадает

Admin
ERROR: S client not available

kay
21.09.2016
13:17:40
The following information is available to a Pod through the downward API: The pod’s name The pod’s namespace The pod’s IP A container’s cpu limit A container’s cpu request A container’s memory limit A container’s memory request

nodeip там нет

Fike
21.09.2016
13:17:53
если честно, когда в последний раз пробовал valueFrom (в 1.3.5, кажется), они не заполнялись (по крайней мере в UI, не помню, долез ли я до конкретного контейнера)

kay
21.09.2016
13:20:27
есть то оно есть

но dawnard не поддерживет

щасм покажу почему

ты меня заинтриговал.

кажется это оно https://github.com/kubernetes/kubernetes/blob/6a9a93d46954f69c8736a51cf6a8f073a962ad25/pkg/api/validation/validation.go#L1320

Google
kay
21.09.2016
13:31:34
попробуй spec.nodeName

я тут недавно похожей ерундой занимался. нужно было передавать информацию о pod'е в flexvolume https://github.com/kubernetes/kubernetes/pull/30694

Maxim
21.09.2016
13:39:40
хехе

с моим пасом: * spec.template.spec.containers[0].env[0].valueFrom.fieldRef.fieldPath: Invalid value: "status.hostIP": error converting fieldPath: field label not supported: status.hostIP

с твоим: * spec.template.spec.containers[0].env[0].valueFrom.fieldRef.fieldPath: Unsupported value: "spec.nodeName": supported values: metadata.name, metadata.namespace, status.podIP

supported values прям богат :(

kay
21.09.2016
13:43:15
ну оно берется как раз отсюда: https://github.com/kubernetes/kubernetes/blob/6a9a93d46954f69c8736a51cf6a8f073a962ad25/pkg/api/validation/validation.go#L1320

Maxim
21.09.2016
13:49:41
вот жеж

а в чем суть кастрации-то?..

kay
21.09.2016
13:51:56
вот либо так. запускаешь внутри контейнера: curl -s $(ip addr show dev eth0 | grep -o '[0-9]\+\.[0-9]\+\.[0-9]\+\.' | sed 's/$/1/'):10255/stats/summary/ | awk -F'[: "]' '/nodeName/ {print $9}'

оно тебе скажет имя ноды

как ip получить - хз

Maxim
21.09.2016
13:52:35
hostname -I

и отгрепать нужный ;)

но это чот херня какая-то

kay
21.09.2016
13:52:55
hostname скажет IP пода

можно конечно вместо ip addr show dev eth0 использовать hostname -I

кстати overlay2 мне не помог. тоже висит

Maxim
21.09.2016
13:57:17
о, Морозов очнулся

сказал, что получил трейс

kay
21.09.2016
13:57:29
могу новый прислать с overlay2

Maxim
21.09.2016
13:57:36
давай

Страница 61 из 958