Если я использую что-то вроде гитолита для управления доступом, насколько хорошо выполняется масштабирование authorized_keys? То есть, если я скажу 50 000 пользователей, какова будет производительность (я полагаю, не очень хорошо). Какие есть альтернативы?
Обновить: Я решил провести небольшое тестирование (что я должен был сделать в первую очередь). Я написал простой скрипт для генерации ключей SSH и добавления их в файл authorized_keys. Мой компьютер не так быстр, поэтому я сгенерировал только 8061 ключ, а затем добавил свой в конец, файл оказался размером 3,1 МБ. Затем я добавил репозиторий git с одним файлом и трижды запустил git clone:
With 8,061 keys (Mine is at the end of the file)
real 0m0.442s
real 0m0.447s
real 0m0.458s
With just a single key:
real 0m0.248s
real 0m0.264s
real 0m0.255s
Производительность намного лучше, чем я думал. Меня все еще очень интересуют любые альтернативы, которые могут быть Быстрее эффективнее для большой группы ключей 50 000+.
Вы действительно можете увидеть эффективность на GitHub относительно того, насколько это быстро. Вы не создадите серьезного узкого места с таким количеством ключей.
Хотя как задокументировано в их блоге с 2009 г., они изменили способ получения ключей ssh из базы данных. Совет шляпы: @Jeremey
Но, вы создали более 8k ключей, вы можете снова протестировать с 50k ключами.
Эти ключи не обязательно должны быть действующими ключами, просто напишите генератор и запишите файл, а затем добавьте свой в конец.