Вопросы для собеседования инженера по эксплуатации и обслуживанию Linux (7)

Вопросы для собеседования инженера по эксплуатации и обслуживанию 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 Есть несколько способов зайти в докер контейнер, в чем разница

  1. Используйте команду присоединения. имя контейнера прикрепления docker, присоединение похоже на vnc, и операция будет отображаться синхронно на нескольких интерфейсах сеанса одного и того же контейнера.Все операции, использующие этот метод для входа в контейнер, будут отображаться синхронно, и контейнер автоматически закроется после выхода используя exit, что не рекомендуется , нужно войти в контейнер с оболочкой окружения.
  2. Используйте команду exec. Когда работающий контейнер запускает новый процесс, вы можете выполнить одну команду и использовать этот метод для входа в тестовую среду контейнера.Используйте exit для выхода, но контейнер все еще работает, что рекомендуется .
  3. Используйте команду запуска. Команда запуска может создавать и вводить контейнер.
  4. Используйте ssh для контейнера. Необходимо установить ssh-сервер в образ (или контейнер), а пользователю задать пароль, что не рекомендуется .
  5. Используйте команду nsenter. Команде nsenter необходимо войти в контейнер через PID, и она по-прежнему нормально работает после выхода: но для предварительного получения PID контейнера необходимо использовать docker inspect. В настоящее время этот метод используется редко. пакет util-linux.

9 Общие инструкции Dockerfile

Просто выберите несколько, чтобы сказать, нет необходимости говорить все, вы можете сказать еще несколько, когда интервьюер спросит, есть ли у вас что добавить.

  • FROM: указать базовое изображение
  • LABEL: указать метаданные изображения
  • RUN: выполнение команд оболочки
  • ENV: установка переменных среды
  • КОПИРОВАТЬ: скопировать текст
  • ДОБАВИТЬ: копировать и распаковывать файлы
  • CMD: команда запуска контейнера
  • ENTRYPOINT: точка входа
  • ARG: параметры сборки
  • VOLUME: анонимный том
  • EXPOSE: открыть порт
  • WORKDIR: укажите рабочий каталог
  • ONBUILD: Инструкции для дочерних образов ссылаться на родительские образы
  • ПОЛЬЗОВАТЕЛЬ: укажите текущего пользователя
  • HEALTHCHECK: проверка здоровья
  • STOPSIGNAL: сигнал на выход из контейнера
  • ОБОЛОЧКА: указанная оболочка

10 Метод постоянного хранения данных контейнера

  1. Объем данных: прямое подключение каталога хоста к указанному каталогу контейнера.Этот метод рекомендуется и чаще используется .
    • Укажите каталог хоста или формат файла: -v <каталог или файл с абсолютным путем к хосту>:<каталог или файл контейнера>[:ro]
    • Анонимный том, указать только путь внутри контейнера: -v <путь внутри контейнера>
    • Назовите том: -v <имя тома>:<путь к каталогу контейнера>
  2. Контейнер тома данных: Косвенное использование пространства хоста, контейнер тома данных предназначен для монтирования каталога хоста в специальный контейнер тома данных, а затем позволяет другим контейнерам читать и записывать данные хоста через контейнер тома данных. метод обычно не используется .
    • --volumes-from <контейнер тома данных>

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

Исходная ссылка: вопросы интервью инженера по эксплуатации и обслуживанию Linux (7) .

Guess you like

Origin blog.csdn.net/qq_45520116/article/details/129480122