LINUX.ORG.RU

Фирма Sun придумала всё это, потому что посчитала неправильным под каждый удалённый сервис (вызов удалённой процедуры) выделять отдельный фиксированный порт. Сейчас от этого остался только NFS, а раньше было больше.

Когда на сервере запускается демон nfsd он может начать слушать порт 2049, а получить какой-нибудь другой порт, если 2049 занят. Он сообщает об этом запущенному на том же сервере rpcbind'у, который всегда слушает порт 111. Клиент сначала обращается к rpcbind'у на сервере, узнаёт, запущен ли nfsd и на каком порту, и после этого уже обращается к nfsd.

mky ★★★★★
()
Ответ на: комментарий от mky

так хорошая же идея, не? Я например люблю юзать Netflix Eureka, которая работает как DNS, но умеет отдавать не только IP но и порт

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

Идея хорошая, но как-то не прижилось. ИМХО, правильнее когда информацию о портах получают прямо с того сервера, где запущены службы (демоны), чем, с какого-то другого сервера, допустим с DNS, через SRV-записи.

А с другой стороны, отсутствие фиксированых портов — проблема в настройке firewall'ов.

mky ★★★★★
()
Ответ на: комментарий от Deleted

Гуглится, что из-за бага, только начиная с версии 3.14 ядра линукса реально заработал nfs v4 без rpcbind. На серверах ядра не часто обновляют, да и nfs 3 ещё используются, есть ведь всякие медиаценты и прочие клиенты, умеющие только v3.

А может у кого вобще ещё NIS живой...

mky ★★★★★
()
Ответ на: комментарий от mky

а это из-за отсутствия девопса идея не приживается. Порты тоже может открывать скрипт

правильная идея для одного случая: когда у тебя три фиксированных сервера, и ты их админишь.

а вот если у тебя автоматически выделяются виртуалки в собственном опенстеке или Амазоне, ты задолбаешься самостоятельно знать, где что находится (и информация эта будет протухать каждые полчаса). Нужна автоматика, которая сама будет знать, кого куда отправить, и какие порты где открыть.

эту автоматику нужно написать самостоятельно) Отркытие портов и прочее можно сделать тупо на Ansible, автоматический service discovery - вот как раз через Eureka

Eureka лучше, чем DNS по той причине, что DNS как правило админят админы, а это проблема для автоматики. В Эврике же, новые сервисы при своём запуске самостоятельно там регистрируются

Еще идея - обычно все сервисы в кластере лучше объединять в DMZ относительно друг друга, и тогда никакие порты прописывать и не надо, фаервол не нужен. А вот снаружи кластер уже нужно окружить забором и выставить наружу только 80 порт

stevejobs ★★★★☆
()
Последнее исправление: stevejobs (всего исправлений: 2)
Ответ на: комментарий от stevejobs

Порты тоже может открывать скрипт

Скрипт может открывать порты только на сервере, а фильтрация трафика зачастую настраивается на маршрутизаторах, особенно во времена появления rpcbind, когда firewall для ОС Solaris был отдельным пакетом за отдельные деньги. Точнее, теоретически в скрипт можно понаписать ключей/паролей от маршрутизаторов, но это как бы клинический случай.

В DNS есть механизм обновлений, разве что DNS-сервера не позволяют настраивать какой клиент какие записи может обновлять и какие ip-адреса туда прописывать. Но может кто уже и написал подобный «гибкий» DNS-сервер.

Автоматизацию я не признаю, начиная с dhcp, а уж всякие виртуалки, облака и микросервисы вобще для меня не существуют, я динозавр :). В фирме мне с избытком хватает другой работы руками, чтобы админить не более трёх серверов.

и выставить наружу только 80 порт

И как через 80 порт пускать NFS?

rpcbind/NFS это, скорее не к интернету, где всё сейчас через web, а к корпоративной сети на 1-100к машин, когда админы серверов давно уже перестали представлять, кто где и что делает, и откуда и куда лезет вирусня и т.д. Но нужно обеспечивать доступ по разным протоколам и передачу больших объёмов данных.

mky ★★★★★
()
Ответ на: комментарий от stevejobs

так хорошая же идея, не?

Идея хорошая, но на безопасность они забили, поэтому и не прижилось - мало кому понравится, когда вся инфа о конфигурации сети передаётся кому попало, включая логины-пароли юзеров открытым текстом.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от mky

Точнее, теоретически в скрипт можно понаписать ключей/паролей от маршрутизаторов, но это как бы клинический случай.

используя Ansible, ты централизованно хранишь файловые ключи от всей сети, и после этого Ansible использует их для беспарольного подключения по SSH, гуляет и настраивает что ему нужно. Это совершенно нормальный мэйнстримовый способ

если ты всё-таки считаешь себя сисадмином серверной инфраструктуры, очень советую учиться пользоваться автоматизацией. В самом ближайшем будущем классические сисадмины, которые руками что-то делают в консольке юникса, будут истреблены как класс =) (я в свою очередь стараюсь учиться другим способом программирования, т.к. обычным корпоративным программистам скоро тоже будет звезда)

И как через 80 порт пускать NFS?

обычно есть два основных домена безопасности: внутрисеть и веб

по вебу обычные пользователи могут смотреть на веб-морду и звать HTTP API типа REST или SOAP. Вот там должен быть 80, 443, 465 и всё. Важно что этот домен относится как «к людям из интернета», так и к «людям внутри локальной сети предприятия».

работу вебморды обеспечивают сервисы внутри внутрисети. Вот там уже можно размещать всякие небезопасные штуки типа NFS, или тупо раздать всем файловые ключи и общаться по SSL или еще как-то так. Во внутрисети уже можно сделать DMZ. Важно что в этом домене не могут работать люди, только приложения.

stevejobs ★★★★☆
()
Ответ на: комментарий от no-such-file

логины-пароли юзеров открытым текстом

моё литсо... (( кто пустил школьников программировать такую важную штуку..

stevejobs ★★★★☆
()
Ответ на: комментарий от no-such-file

читни уже что такое rpcbind и зачем он нужен, чтобы больше так не позориться. хронического школьника stevejobs это тоже касается.

anonymous
()
Ответ на: комментарий от stevejobs

Вот там должен быть 80, 443, 465 и всё ... и прочее блаблабла и dmz

Это и так хз сколько десятков лет как делают в нормальных конторах, а хипстеры только начинают открывать прописные истины.

anonymous
()
Ответ на: комментарий от stevejobs

кто пустил школьников программировать такую важную штуку

Дык это было в такие бородатые времена, когда ещё никто не парился. rsh был не многим лучше, root с паролем root был обычным делом.

no-such-file ★★★★★
()
Ответ на: комментарий от stevejobs

логины-пароли юзеров открытым текстом

моё литсо... (( кто пустил школьников программировать такую важную штуку..

т.е. существование ftp до сих пор, вас не смущает?

anc ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.