Size: a a a

2020 September 06

N

Navern in DevOps
то придется пойти и разобраться
источник

СХ

Старый Хрыч... in DevOps
Alexander 😼 Chistyakov
При этом откуда-то из интернета скачиваются какие-то байты, ну каман
В стэковерфлоу, наверняка, есть ответ на тему откуда и какие
есть, но на память на собесе они это не помнят, более того, сейчас вопрос про джойны задай и половина будет в ступоре
источник

AC

Alexander 😼 Chistyak... in DevOps
Старый Хрыч
есть, но на память на собесе они это не помнят, более того, сейчас вопрос про джойны задай и половина будет в ступоре
Ты так говоришь, как будто когда-то было иначе
источник

A

Alexander in DevOps
Alexander 😼 Chistyakov
Прежде чем начать отвечать на вопросы в стиле "не работает X", надо, наверное, задать вопрос "а как и почему я в этой ситуации оказался?"
Так вот - как я оказался в ситуации, когда хост нельзя перезагрузить?
Проснулся уже на собеседовании в момент, когда мне задали этот вопрос?
Ну, во-первых, если на собесе любые предлагаемые проблемы лечить ребутом, то собес ты вряд ли пройдёшь. А, во-вторых, прям сию же минуту же без подготовки хост может быть вполне нежелательно перезагружать из-за потери части трафика или какого-то прогресса по выполняемой задаче. Но при этом плановая перезагрузка будет вполне норм.
источник

СХ

Старый Хрыч... in DevOps
Alexander 😼 Chistyakov
Ты так говоришь, как будто когда-то было иначе
было, в 90е и до 2005😂🤣вон чумовой динозавтр всё это знает
источник

A

Alexander in DevOps
Navern
я конкретно про сетевые неймспейсы говорил, да
Вообще, к файлам можно любые ns-ы привязывать, просто на практике этим обычно пользуются докер и iproute2 для netns-ов.
источник

AC

Alexander 😼 Chistyak... in DevOps
Alexander
Ну, во-первых, если на собесе любые предлагаемые проблемы лечить ребутом, то собес ты вряд ли пройдёшь. А, во-вторых, прям сию же минуту же без подготовки хост может быть вполне нежелательно перезагружать из-за потери части трафика или какого-то прогресса по выполняемой задаче. Но при этом плановая перезагрузка будет вполне норм.
Действительно, чего это я
Ты прав
источник

AC

Alexander 😼 Chistyak... in DevOps
Старый Хрыч
было, в 90е и до 2005😂🤣вон чумовой динозавтр всё это знает
Нет, так никогда не было
источник

DS

Dmitry Sergeev in DevOps
Alexander
Вообще, к файлам можно любые ns-ы привязывать, просто на практике этим обычно пользуются докер и iproute2 для netns-ов.
Я вот смотрю на хосте воркера куба ip netns list, а он мне ничего не выводит.
через strace смотрю шо он делает, а он балально смотрит на /var/run/netns
То есть видимо просто файлики там создает для себя, а реально все netns, только по процессам можно увидеть (ps -o netns). И без процессов это просто файлики в /run/netns.

Выше в чате писали про утилиту lsns, смотрю strace по lsns -t net, lsns -t mnt, и он банально смотрит ns'ы по пидам в /proc.

Раз уж началась тема про namespace's линукса, объясните
1) как файлы вообще связаны могут быть с netns (я просто не понял причем тут файлы, netns это разве не сетевые интерфейсы, таблицы маршрутизации и тому подобное)
2) выше была речь про mountns, как он может быть привязан к файлу? Когда это абстракция для процесса, как mountns может существовать без процесса?
источник

A

Alexander in DevOps
Dmitry Sergeev
Я вот смотрю на хосте воркера куба ip netns list, а он мне ничего не выводит.
через strace смотрю шо он делает, а он балально смотрит на /var/run/netns
То есть видимо просто файлики там создает для себя, а реально все netns, только по процессам можно увидеть (ps -o netns). И без процессов это просто файлики в /run/netns.

Выше в чате писали про утилиту lsns, смотрю strace по lsns -t net, lsns -t mnt, и он банально смотрит ns'ы по пидам в /proc.

Раз уж началась тема про namespace's линукса, объясните
1) как файлы вообще связаны могут быть с netns (я просто не понял причем тут файлы, netns это разве не сетевые интерфейсы, таблицы маршрутизации и тому подобное)
2) выше была речь про mountns, как он может быть привязан к файлу? Когда это абстракция для процесса, как mountns может существовать без процесса?
docker inspect-ом смотри же. Докер кладёт файлы не туда же, где их ищет iproute2
источник

DS

Dmitry Sergeev in DevOps
Alexander
docker inspect-ом смотри же. Докер кладёт файлы не туда же, где их ищет iproute2
ну так это просто файлики, в которых docker хранит инфу о ns. Но сами то ns (реальные) это ns'ы в процессе запущенном. Если нет процесса, то нет ns'а
источник

A

Alexander in DevOps
Dmitry Sergeev
Я вот смотрю на хосте воркера куба ip netns list, а он мне ничего не выводит.
через strace смотрю шо он делает, а он балально смотрит на /var/run/netns
То есть видимо просто файлики там создает для себя, а реально все netns, только по процессам можно увидеть (ps -o netns). И без процессов это просто файлики в /run/netns.

Выше в чате писали про утилиту lsns, смотрю strace по lsns -t net, lsns -t mnt, и он банально смотрит ns'ы по пидам в /proc.

Раз уж началась тема про namespace's линукса, объясните
1) как файлы вообще связаны могут быть с netns (я просто не понял причем тут файлы, netns это разве не сетевые интерфейсы, таблицы маршрутизации и тому подобное)
2) выше была речь про mountns, как он может быть привязан к файлу? Когда это абстракция для процесса, как mountns может существовать без процесса?
По поводу вопросов:
1) namespace можно привязать к файлу (точнее, сделать bind mount), тогда появляется постоянный объект, привязывающий неймспейс
2) можно любой ns
источник

A

Alexander in DevOps
Можешь глянуть man unshare и обратить внимание на то, что у любого флага для неймспейса может быть параметр
источник

N

Navern in DevOps
Dmitry Sergeev
ну так это просто файлики, в которых docker хранит инфу о ns. Но сами то ns (реальные) это ns'ы в процессе запущенном. Если нет процесса, то нет ns'а
ns можно привязать к файлу и тогда наличие процесса не является обязательным. По крайней мере сетевой можно, про остальные не в курсе
источник

DS

Dmitry Sergeev in DevOps
Alexander
По поводу вопросов:
1) namespace можно привязать к файлу (точнее, сделать bind mount), тогда появляется постоянный объект, привязывающий неймспейс
2) можно любой ns
2) а можно пример? Создать файл в mountns процесса, а потом килнуть процесс и наглядно показать mountns файла?
источник

N

Navern in DevOps
Dmitry Sergeev
2) а можно пример? Создать файл в mountns процесса, а потом килнуть процесс и наглядно показать mountns файла?
источник

N

Navern in DevOps
# ip netns add netns1
This command creates a new network namespace called netns1. When the ip tool creates a network namespace, it will create a bind mount for it under /var/run/netns; that allows the namespace to persist even when no processes are running within it and facilitates the manipulation of the namespace itself. Since network namespaces typically require a fair amount of configuration before they are ready for use, this feature will be appreciated by system administrators.
источник

DS

Dmitry Sergeev in DevOps
Navern
ns можно привязать к файлу и тогда наличие процесса не является обязательным. По крайней мере сетевой можно, про остальные не в курсе
а как это делается на низком уровне без ip netns ?
источник

A

Alexander in DevOps
Dmitry Sergeev
2) а можно пример? Создать файл в mountns процесса, а потом килнуть процесс и наглядно показать mountns файла?
Ты можешь сам это сделать командой unshare примерно так
unshare --mount=/path/to/file sleep 300
источник

DS

Dmitry Sergeev in DevOps
Alexander
Ты можешь сам это сделать командой unshare примерно так
unshare --mount=/path/to/file sleep 300
но это же sleep запустит
источник