Каталог статей
- Вопросы для собеседования инженера по эксплуатации и обслуживанию Linux (7)
-
- 1 Каковы наиболее часто используемые модули ansible
- 2 Расскажите о структуре каталогов, организованной ansible с помощью ролей
- 3 пространства имен докеров шесть пространств имен
- 4 Роль контрольных групп
- 5 Роль runc
- 6 часто используемых команд докера
- 7 Что такое движки хранения докеров и в чем разница
- 8 Есть несколько способов зайти в докер контейнер, в чем разница
- 9 Общие инструкции Dockerfile
- 10 Метод постоянного хранения данных контейнера
Вопросы для собеседования инженера по эксплуатации и обслуживанию Linux (7)
Желаю всем удачи в поиске работы, которую вы хотите.
Непрерывное обучение не будет устранено.
Земля не взрывается, мы не берем отпуск.
Возможности всегда резервируются для тех, кто готов.
Давай, бей рабочих!
1 Каковы наиболее часто используемые модули ansible
- пинг
- Команда
- Оболочка
- Скрипт
- Копировать
- Принести
- Файл
- Ням
- Услуга
- Пользователь
- Группа
- Lineinfile
- Заменять
- Настраивать
2 Расскажите о структуре каталогов, организованной ansible с помощью ролей
.travis.yml
README.md
defaults/
main.yml
files/
handlers/
main.yml
meta/
main.yml
tasks/
main.yml
templates/
tests/
inventory
test.yml
vars/
main.yml
3 пространства имен докеров шесть пространств имен
- Пространство имен MNT (монтирование): обеспечивает возможности изоляции для точек монтирования дисков и файловых систем.
- Пространство имен IPC (межпроцессное взаимодействие): обеспечивает возможности изоляции для межпроцессного взаимодействия, включая семафоры, очереди сообщений и общую память.
- Пространство имен UTS (система разделения времени UNIX): обеспечивает возможности изоляции ядра, имени хоста и доменного имени.
- PID Namesapce (идентификация процесса): обеспечивает возможности изоляции процесса.
- Сетевое пространство имен (сеть): обеспечивает возможности сетевой изоляции, включая сетевые устройства, сетевые стеки, порты и т. д.
- Пространство имен пользователя (пользователь): предоставление возможностей изоляции пользователей, включая пользователей и группы.
4 Роль контрольных групп
cgroups , название которой происходит от аббревиатуры control groups , — это функция ядра Linux для ограничения, контроля и разделения верхнего предела ресурсов, которые может использовать группа процессов, включая ЦП, память, диск, пропускную способность сети и т. д. Кроме того, также можно установить приоритет процесса, измерить ресурсы и управлять ресурсами (например: приостановить и возобновить операции, такие как процессы).
5 Роль runc
Runc — это среда выполнения контейнера и стандартный клиент с открытым исходным кодом для запуска контейнеров. Он построен на основе стандарта OCI (Open Container Consortium) и может использоваться не только для контейнеров Linux, но и для контейнеров Windows. Функцией Runc является запуск контейнера как отдельного процесса в Linux и Windows, и им можно управлять через командную строку или интерфейс RPC. Он может управлять жизненным циклом контейнера, таким как создание, запуск, остановка, уничтожение и т. д.
6 часто используемых команд докера
Просто выберите несколько, чтобы сказать, нет необходимости говорить все, вы можете сказать еще несколько, когда интервьюер спросит, есть ли у вас что добавить.
- build: собрать образ из Dockerfile
- commit: создать новый образ из изменений в контейнере
- cp: копировать файлы/папки между контейнером и локальной файловой системой.
- создать: создать новый контейнер
- события: получать события в реальном времени с сервера
- exec: запустить команду в работающем контейнере
- history: показать историю зеркалирования
- изображения: список изображений
- import: импорт содержимого из архива для создания образа файловой системы.
- информация: просмотр общесистемной информации
- inspect: возвращает низкоуровневую информацию об объектах Docker.
- загрузить: импортировать изображение из архива или стандартного ввода
- login: авторизуйтесь на складе Docker
- logs: получить журналы контейнера
- ps: список контейнеров
- pull: вытащить образ или репозиторий из репозитория
- push: отправить изображение или репозиторий на склад
- rm: удалить один или несколько контейнеров
- rmi: удалить одно или несколько зеркал
- run: запустить команду в новом контейнере
- save: сохранить одно или несколько изображений в tarball (потоковое вещание на стандартный вывод по умолчанию)
- тег: создайте тег TARGET_IMAGE, который ссылается на SOURCE_IMAGE
- версия: просмотр информации о версии Docker.
7 Что такое движки хранения докеров и в чем разница
- AUFS (другой UnionFS) — это своего рода Union FS, драйвер хранилища на уровне файлов.Простое понимание AUFS заключается в совместном монтировании многоуровневых файловых систем в единую файловую систему.Эта файловая система может накладывать и изменять слои файлов. по слоям. , только верхний слой доступен для записи, а все нижние слои доступны только для чтения, что соответствует Docker, верхний слой — это слой контейнера, а нижний слой — это слой изображения.
- Оверлей также является своего рода Union FS.По сравнению с многоуровневой AUFS, оверлей имеет только два уровня: верхнюю файловую систему и нижнюю файловую систему, представляющие уровень контейнера Docker (верхний) и уровень изображения (нижний) соответственно. Когда файл необходимо изменить, используйте CopyW, чтобы скопировать файл с нижнего уровня, доступного только для чтения, на верхний уровень, доступный для записи, и результат также будет сохранен на верхнем уровне.
- Сопоставитель устройств предоставляет механизм инфраструктуры сопоставления логических устройств с физическими устройствами. Упомянутые выше AUFS и OverlayFS представляют собой хранилище на уровне файлов, а сопоставитель устройств — это хранилище на уровне блоков. Все операции выполняются непосредственно с блоками, а не с файлами. Поскольку версии ядра CentOS 7.2 и RHEL7.2 не поддерживают overlay2, драйвер хранилища по умолчанию поддерживает только 100 ГБ емкости данных, а производительность не очень хорошая.Текущая более новая версия CentOS уже поддерживает overlay2, поэтому рекомендуется использовать overlay2. , Этот механизм хранения устарел в Docker Engine 18.09.
- ZFS(Sun-2005)/btrfs(Oracle-2007): в настоящее время широко не используется.
- vfs: используется в тестовой среде, подходит для ситуаций, когда нельзя использовать копирование при записи. Этот драйвер хранилища имеет низкую производительность и, как правило, не рекомендуется для использования в рабочей среде.
8 Есть несколько способов зайти в докер контейнер, в чем разница
- Используйте команду присоединения. имя контейнера прикрепления docker, присоединение похоже на vnc, и операция будет отображаться синхронно на нескольких интерфейсах сеанса одного и того же контейнера.Все операции, использующие этот метод для входа в контейнер, будут отображаться синхронно, и контейнер автоматически закроется после выхода используя exit, что не рекомендуется , нужно войти в контейнер с оболочкой окружения.
- Используйте команду exec. Когда работающий контейнер запускает новый процесс, вы можете выполнить одну команду и использовать этот метод для входа в тестовую среду контейнера.Используйте exit для выхода, но контейнер все еще работает, что рекомендуется .
- Используйте команду запуска. Команда запуска может создавать и вводить контейнер.
- Используйте ssh для контейнера. Необходимо установить ssh-сервер в образ (или контейнер), а пользователю задать пароль, что не рекомендуется .
- Используйте команду nsenter. Команде nsenter необходимо войти в контейнер через PID, и она по-прежнему нормально работает после выхода: но для предварительного получения PID контейнера необходимо использовать docker inspect. В настоящее время этот метод используется редко. пакет util-linux.
9 Общие инструкции Dockerfile
Просто выберите несколько, чтобы сказать, нет необходимости говорить все, вы можете сказать еще несколько, когда интервьюер спросит, есть ли у вас что добавить.
- FROM: указать базовое изображение
- LABEL: указать метаданные изображения
- RUN: выполнение команд оболочки
- ENV: установка переменных среды
- КОПИРОВАТЬ: скопировать текст
- ДОБАВИТЬ: копировать и распаковывать файлы
- CMD: команда запуска контейнера
- ENTRYPOINT: точка входа
- ARG: параметры сборки
- VOLUME: анонимный том
- EXPOSE: открыть порт
- WORKDIR: укажите рабочий каталог
- ONBUILD: Инструкции для дочерних образов ссылаться на родительские образы
- ПОЛЬЗОВАТЕЛЬ: укажите текущего пользователя
- HEALTHCHECK: проверка здоровья
- STOPSIGNAL: сигнал на выход из контейнера
- ОБОЛОЧКА: указанная оболочка
10 Метод постоянного хранения данных контейнера
- Объем данных: прямое подключение каталога хоста к указанному каталогу контейнера.Этот метод рекомендуется и чаще используется .
- Укажите каталог хоста или формат файла: -v <каталог или файл с абсолютным путем к хосту>:<каталог или файл контейнера>[:ro]
- Анонимный том, указать только путь внутри контейнера: -v <путь внутри контейнера>
- Назовите том: -v <имя тома>:<путь к каталогу контейнера>
- Контейнер тома данных: Косвенное использование пространства хоста, контейнер тома данных предназначен для монтирования каталога хоста в специальный контейнер тома данных, а затем позволяет другим контейнерам читать и записывать данные хоста через контейнер тома данных. метод обычно не используется .
- --volumes-from <контейнер тома данных>
Вышеупомянутые вопросы интервью являются просто личным резюме. Пишите все, что вы думаете, без какого-либо порядка. Если что-то не так с письмом, пожалуйста, прокомментируйте и оставьте сообщение, и я исправлю его вовремя.
Исходная ссылка: вопросы интервью инженера по эксплуатации и обслуживанию Linux (7) .