DevOps | Вопросы собесов
رفتن به کانال در Telegram
Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @sendme_ads
نمایش بیشتر5 566
مشترکین
+124 ساعت
-37 روز
-1030 روز
آرشیو پست ها
Старшеклассники, залетайте на PROD
Это олимпиада по промышленной разработке с призами от Т-Банка, Центрального университета и НИУ ВШЭ. Тут можно прокачаться в программировании на реальных ИТ-задачах.
Победители получат один из призов — грант или скидку на обучение в вузе или упрощенный отбор на стажировку в Т-Банке.
Для участия хватит логики и школьных знаний по информатике. Успей зарегистрироваться до 3 декабря.
Узнать больше
#реклама
prodcontest.ru
О рекламодателе
🤔 Что делает git clone?
Команда
git clone в системе управления версиями Git используется для создания копии удаленного репозитория на локальной машине. При выполнении команды git clone Git создает локальный репозиторий, содержащий все файлы и историю изменений удаленного репозитория. Это один из самых часто используемых способов начала работы с существующим проектом, хранящимся в удаленном репозитории.
🚩Аспекты работы
🟠Копирование удаленного репозитория
Команда git clone создает полную копию удаленного репозитория, включая все ветки, коммиты и файлы.
🟠Создание локального репозитория
На локальной машине создается новый каталог, в котором будет размещен локальный репозиторий. По умолчанию, этот каталог будет иметь то же имя, что и удаленный репозиторий.
🟠Настройка удаленного репозитория (remote)
После клонирования создается ссылка на удаленный репозиторий с именем origin, что позволяет легко получать обновления и отправлять изменения обратно в удаленный репозиторий.
🚩Основной синтаксис
git clone <repository-url> [<directory>]
🟠<repository-url>
URL удаленного репозитория, который нужно клонировать. Это может быть URL репозитория на GitHub, GitLab или любом другом Git-сервере.
🟠[<directory>]
Опциональный параметр, указывающий имя каталога, в который будет клонирован репозиторий. Если не указано, будет создан каталог с именем репозитория.
🚩Примеры использования
🟠Репозитория по HTTPS
Этот пример клонирует репозиторий repository пользователя username из GitHub в каталог с именем repository.
git clone https://github.com/username/repository.git
🟠Репозитория по SSH
Этот пример использует SSH для клонирования репозитория.
git clone git@github.com:username/repository.git
🟠Репозитория в конкретный каталог
Этот пример клонирует репозиторий в каталог my_directory вместо каталога по умолчанию.
git clone https://github.com/username/repository.git my_directory
Ставь 👍 и забирай 📚 Базу знаний🤔 Каково ваше видение идеального workflow CI/CD?
Идеальный CI/CD включает автоматическое тестирование, статический анализ кода, сборку и развертывание. Всё это должно быть интегрировано с системой контроля версий и триггериться при изменениях в репозитории. Такой подход обеспечивает надёжность и скорость доставки.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Лига пламенных сердец - Winline Матч Тура
Платформа с играми и тестами от Winline Матч Тура. Выигрывай футболки, станции или Playstation 5. Играй, зарабатывай очки и выигрывай призы. Собирай сердца, кликая или тапая по ним. Проверь свои знания в футболе ответив на 8 вопросов. Регистрируйся и начинай набирать очки.
Перейти на сайт
#реклама 16+
specials.sports.ru
О рекламодателе
🤔 Какой приоритет использования variables в Terraform?
1⃣Переменные по умолчанию (default values)
Переменные могут иметь значения по умолчанию, определенные в файлах конфигурации Terraform (
.tf файлы).
variable "example" {
description = "An example variable"
type = string
default = "default_value"
}
2⃣Переменные среды (Environment Variables)
Переменные можно задавать через переменные окружения. Для этого используется префикс TF_VAR_ перед именем переменной.
export TF_VAR_example="env_var_value"
3⃣Файлы переменных (terraform.tfvars и *.auto.tfvars)
Файл terraform.tfvars или файлы с расширением .auto.tfvars автоматически считываются Terraform и применяются при запуске.
`terraform.tfvars`
example = "tfvars_value"
`variables.auto.tfvars`
example = "auto_tfvars_value"
4⃣Файлы переменных, указанные явно (Explicit Variable Definition Files)
Вы можете указать файлы переменных явно с помощью флага -var-file при выполнении команд terraform plan или terraform apply.
terraform apply -var-file="custom.tfvars"
`custom.tfvars`.
example = "custom_tfvars_value"
5⃣Переменные командной строки (Command-line Variables)
Вы можете задать переменные непосредственно в командной строке с помощью флага -var.
terraform apply -var="example=command_line_value"
🚩Пример использования
Допустим, у вас есть следующая переменная в конфигурации Terraform - main.tf
variable "example" {
description = "An example variable"
type = string
default = "default_value"
}
output "example" {
value = var.example
}
Вы можете задать значение этой переменной различными способами, и приоритет будет следующим:
🟠Значение по умолчанию: default_value.
🟠Значение из переменной среды
export TF_VAR_example="env_var_value"
Значение из terraform.tfvars
example = "tfvars_value"
Значение из явно указанного файла
terraform apply -var-file="custom.tfvars"
example = "custom_tfvars_value"
Значение из командной строки
terraform apply -var="example=command_line_value"
Ставь 👍 и забирай 📚 Базу знаний🤔 Что такое entrypoint \ cmd?
ENTRYPOINT задаёт основную команду для запуска контейнера, а CMD предоставляет аргументы по умолчанию для этой команды. CMD также может быть переопределён при запуске контейнера.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Ищете надежного поставщика по стандартам ASME?
⚡Мы, компания СейлсСолюшен, предлагаем широкий ассортимент материалов по стандартам ASME для ваших нужд: детали трубопроводов, фланцы, фитинги, кованные заготовки и трубы.
✅Сертифицированные по международным стандартам и аккредитован ведущими российскими компаниями отрасли.
Перейти на сайт
#реклама
salessolution.ru
О рекламодателе
🤔 Какие используете централизованные средства обновления и мониторинга состояния сертификатов на эндпойнтах?
Централизованное управление и мониторинг состояния сертификатов на конечных точках (эндпойнтах) критически важно для обеспечения безопасности и соблюдения регуляторных требований. Для этой цели можно использовать различные инструменты и платформы, которые обеспечивают централизованное обновление, мониторинг и управление сертификатами.
🟠HashiCorp Vault
Это мощное средство для управления секретами и сертификатами. Оно поддерживает централизованное управление сертификатами и автоматическое обновление.
Функции:
Хранение и управление сертификатами.
Автоматическое обновление и ротация сертификатов.
API для интеграции с другими системами.
Управление доступом на основе политики.
🟠Certbot и Let's Encrypt
Это клиент для автоматического получения и обновления сертификатов от Let's Encrypt, бесплатного авторитета сертификации.
Функции:
Автоматическое получение и обновление SSL/TLS сертификатов.
Интеграция с веб-серверами (например, Apache, Nginx).
Скрипты и автоматизация для простоты управления.
🟠Venafi
Это платформа для защиты машинных идентификаторов, которая обеспечивает централизованное управление сертификатами.
Функции:
Централизованное управление жизненным циклом сертификатов.
Автоматическое обновление и ротация сертификатов.
Мониторинг состояния сертификатов и оповещения о проблемах.
Интеграция с различными облачными провайдерами и DevOps инструментами.
🟠AWS Certificate Manager (ACM)
Позволяет легко управлять сертификатами в облачной инфраструктуре AWS.
Функции:
Автоматическое обновление сертификатов.
Простая интеграция с AWS сервисами (например, Elastic Load Balancing, CloudFront).
Централизованное управление сертификатами в AWS.
🟠Microsoft Azure Key Vault
Azure Key Vault предоставляет возможности для централизованного управления сертификатами в облаке Microsoft Azure.
Функции:
Хранение и управление сертификатами.
Автоматическое обновление сертификатов.
Интеграция с другими сервисами Azure.
Управление доступом на основе ролей (RBAC).
🟠Google Cloud Certificate Manager
Google Cloud Certificate Manager помогает управлять сертификатами в инфраструктуре Google Cloud Platform.
Функции:
Управление и обновление сертификатов.
Интеграция с Load Balancers и другими сервисами GCP.
Мониторинг и оповещения о состоянии сертификатов.
🚩Пример настройки
1⃣Установка Certbot:
sudo apt-get update
sudo apt-get install certbot python3-certbot-nginx
2⃣Получение сертификата:
sudo certbot --nginx -d example.com -d www.example.com
3⃣Настройка автоматического обновления сертификатов:
sudo crontab -e
4⃣Добавление следующей строки в crontab для автоматического обновления:
0 0 * * * /usr/bin/certbot renew --quiet --no-self-upgrade
Ставь 👍 и забирай 📚 Базу знаний🤔 Какие существуют Probe?
Существуют три основных Probe в Kubernetes: Liveness Probe для проверки состояния контейнера, Readiness Probe для определения готовности к обработке запросов и Startup Probe для проверки успешного запуска контейнера.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
9 продуктов для работы с данными от СберТеха
Приглашаем в Телеграм-канал Data Platform V, где рассказываем о решениях для работы с данными от СберТеха и не только.
Что вас ждет:
⚡Знакомство с российскими СУБД и другими продуктами для работы с данными
⚡Последние обновления и улучшения (узнаете в числе первых!)
⚡Кейсы успешного внедрения и использования (реальные примеры с подробным разбором)
⚡Полезные статьи, новости и тренды в сфере разработки СУБД
⚡Приглашения на мероприятия с участием экспертов
Хотите разобраться лучше в инструментах для работы с данными и выбрать то, что принесет пользу вашему бизнесу?
Присоединяйтесь!
Подписаться
#реклама
О рекламодателе
🤔 Что такое user space и kernel space?
В операционных системах на базе Unix и Linux существует разделение между двумя важными областями памяти: пространством пользователя (user space) и пространством ядра (kernel space). Это разделение важно для обеспечения стабильности и безопасности системы.
🚩Kernel Space (Пространство ядра)
Пространство ядра - это область памяти, в которой работает ядро операционной системы и его расширения, включая драйверы устройств. Ядро имеет полный доступ к аппаратным ресурсам системы и может выполнять привилегированные операции.
🟠Полный доступ к аппаратуре:
Ядро имеет прямой доступ к памяти, процессору, устройствам ввода-вывода и другим аппаратным компонентам.
🟠Привилегированный режим выполнения:
Код, выполняемый в пространстве ядра, работает в привилегированном режиме процессора, что позволяет ему выполнять критически важные и потенциально опасные операции.
🟠Управление ресурсами:
Ядро управляет ресурсами системы, такими как память, процессорное время, файловые системы и сетевые соединения.
🟠Обработка системных вызовов:
Ядро обрабатывает системные вызовы от приложений, которые выполняются в пространстве пользователя. Эти вызовы включают операции ввода-вывода, управление памятью, управление процессами и другие.
🚩User Space (Пространство пользователя)
Пространство пользователя - это область памяти, в которой выполняются пользовательские приложения и процессы. Это пространство изолировано от пространства ядра для обеспечения безопасности и стабильности системы.
🟠Ограниченный доступ к аппаратуре:
Приложения в пространстве пользователя не имеют прямого доступа к аппаратным ресурсам. Все обращения к аппаратуре происходят через системные вызовы, которые передаются ядру.
🟠Непривилегированный режим выполнения:
Код, выполняемый в пространстве пользователя, работает в непривилегированном режиме процессора, что ограничивает его возможности и предотвращает выполнение опасных операций.
🟠Изоляция и безопасность:
Процессы в пространстве пользователя изолированы друг от друга и от пространства ядра. Это предотвращает одну программу от вмешательства в работу другой и защищает ядро от потенциально вредоносных действий.
🚩Взаимодействие между Kernel Space и User Space
Взаимодействие между пространством пользователя и ядра происходит через системные вызовы. Когда приложение в пространстве пользователя хочет выполнить операцию, требующую привилегий ядра (например, чтение файла или создание процесса), оно выполняет системный вызов. Ядро обрабатывает этот вызов и возвращает результат в пространство пользователя.
Примером системного вызова является функция
read() в языке программирования C, которая позволяет читать данные из файла. Тут open(), read(), и close() являются системными вызовами, которые передают управление от пространства пользователя к пространству ядра для выполнения операций с файлами.
#include <unistd.h>
#include <fcntl.h>
int main() {
int fd = open("example.txt", O_RDONLY);
if (fd == -1) {
// Ошибка при открытии файла
return 1;
}
char buffer[128];
ssize_t bytesRead = read(fd, buffer, sizeof(buffer));
if (bytesRead == -1) {
// Ошибка при чтении файла
return 1;
}
// Обработка данных
close(fd);
return 0;
}
Ставь 👍 и забирай 📚 Базу знаний🤔 В чём разница между контейнеризацией и виртуализацией?
Контейнеризация использует контейнеры для изоляции приложений и их зависимостей на уровне операционной системы, что делает контейнеры более лёгкими по сравнению с виртуальными машинами. Виртуализация, в свою очередь, создает полноценные виртуальные машины с собственными ОС поверх гипервизора, что требует больше ресурсов. Контейнеры запускаются на общем ядре ОС хоста, а виртуальные машины имеют свои ядра, что делает их независимыми, но более тяжёлыми. Контейнеры обеспечивают большую гибкость и скорость развертывания по сравнению с виртуальными машинами.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
+5
Новые бесплатные курсы в канале Selectel Newsfeed.
Подойдут всем: от новичков до продвинутых айтишников.
Вас ждут обзоры, инструкции и статьи, которые помогут разобраться в темах структурно и последовательно.
Вступайте в сообщество IT-специалистов в Telegram от Selectel.
Подписаться
#реклама 16+
О рекламодателе
🤔 В чем разница между linux и unix?
Разница между Linux и Unix заключается в их происхождении, разработке, лицензировании и архитектурных особенностях. Хотя они оба являются операционными системами, основывающимися на схожих концепциях, они имеют несколько ключевых различий.
🚩Происхождение и история
🟠Unix
Происхождение: Unix был разработан в AT&T Bell Labs в конце 1960-х и начале 1970-х годов Кеном Томпсоном, Деннисом Ритчи и другими.
История: Unix стал основой для многих других операционных систем, включая различные коммерческие и академические версии, такие как BSD (Berkeley Software Distribution), AIX (от IBM), HP-UX (от Hewlett-Packard), Solaris (от Sun Microsystems) и другие.
🟠 Linux
Происхождение:Linux был разработан Линусом Торвальдсом в 1991 году как бесплатная и открытая альтернатива Unix.
История: Linux основан на идеях и стандартах Unix, но он не содержит исходного кода Unix. Linux стал популярным благодаря своей открытой модели разработки и поддержке со стороны сообщества.
🚩Лицензирование
🟠Unix
Лицензия: Unix традиционно был коммерческой операционной системой, распространяемой по проприетарной лицензии. Каждая версия Unix имела свои собственные лицензионные условия и коммерческие модели.
🟠Linux
Лицензия: Linux распространяется под лицензией GNU General Public License (GPL), что делает его свободным и открытым программным обеспечением. Это позволяет пользователям свободно использовать, изменять и распространять Linux.
🚩Разработка и поддержка
🟠Unix
Разработка: Разработка Unix велась различными коммерческими и академическими организациями. Каждая версия Unix разрабатывалась и поддерживалась своим собственным вендором.
Поддержка: Поддержка Unix зависела от вендора, который предоставлял коммерческую поддержку для своей версии системы.
🟠Linux
Разработка: Linux разрабатывается сообществом разработчиков по всему миру. Основной веткой ядра Linux управляет Линус Торвальдс и его команда, но различные дистрибутивы (например, Debian, Ubuntu, Fedora, CentOS, и т.д.) добавляют свои собственные компоненты и поддержку.
Поддержка: Linux поддерживается как сообществом, так и коммерческими организациями (например, Red Hat, Canonical, SUSE), предоставляющими платную поддержку и услуги.
🚩Архитектурные особенности и использование
🟠Unix
Архитектура: Unix системы часто следуют определенным стандартам, таким как POSIX, и имеют стабильное, проверенное временем ядро и архитектуру.
Использование: Unix традиционно используется в крупных корпоративных средах, на серверах и мейнфреймах, в научных и инженерных приложениях.
🟠Linux
Архитектура: Linux также следует стандартам POSIX и имеет модульную архитектуру, которая позволяет пользователям и разработчикам легко добавлять новые функции.
Использование: Linux используется повсеместно — от серверов и суперкомпьютеров до встраиваемых систем и мобильных устройств (например, Android). Он также широко используется в настольных системах благодаря множеству дистрибутивов.
Ставь 👍 и забирай 📚 Базу знаний
– Помощь с pet-проектом
– Составление roadmap
– Общая консультация
– Проведение код-ревью и mock-собеседования
– Помощь с трудоустройством
Все это и многое другое может Ментор. Он обеспечит вам необходимый boost, ускорит и упростит вход в IT.
🔥 Здесь размещен список менторов, и многие из них предлагают бесплатную первую консультацию
– Помощь с pet-проектом
– Составление roadmap
– Общая консультация
– Проведение код-ревью и mock-собеседования
– Помощь с трудоустройством
Все это и многое другое может Ментор. Он обеспечит вам необходимый boost, ускорит и упростит вход в IT.
🔥 Здесь размещен список менторов, и многие из них предлагают бесплатную первую консультацию
🤔 Без какой инструкции не может существовать докер файл?
FROM — это ключевая инструкция в Dockerfile, без которой файл не может существовать. Она указывает базовый образ, от которого начинается сборка контейнера. Любой Dockerfile должен начинаться с этой инструкции.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
+9
Помощь в трудоустройстве в IT-сфере!
В России из-за дефицита айтишников запустили бесплатную программу по обучению IT-специалистов. Теперь любой желающий может попробовать себя в IT с полного нуля и начать обучение бесплатно!
Узнайте про дальнейшее трудоустройство в ведущие IT-компании для восполнения кадрового дефицита.
Для этого нужно:
- Перейти по ссылке
- Заполнить анкету и ответить на вопросы (занимает менее 3 минут)
- На основании ваших ответов вы сразу узнаете, подходит ли вам сфера IT и сможете ли вы в ней работать
Перейти на сайт
#реклама 16+
urban-university.ru
О рекламодателе
🤔 Какую информацию хранит i нода?
I-нода (или индексный узел, inode) в файловой системе UNIX и подобных ей (например, в Linux) является структурой данных, которая хранит информацию о файлах и каталогах. I-нода не содержит имени файла, но хранит метаданные, необходимые для управления файлом. Вот основная информация, которую хранит i-нода:
🟠Идентификатор (индекс) i-ноды
Уникальный идентификатор, по которому можно однозначно определить файл в пределах файловой системы.
🟠Тип файла:
Определяет, является ли объект файлом, каталогом, символической ссылкой, устройством и т.д.
🟠Права доступа:
Содержит информацию о правах доступа к файлу для владельца, группы и других пользователей (чтение, запись, выполнение).
🟠Ссылки (link count):
Количество жестких ссылок на этот файл, то есть сколько раз этот файл упоминается в различных каталогах.
🟠Идентификатор пользователя (UID):
Указывает владельца файла.
🟠Идентификатор группы (GID):
Указывает группу, к которой принадлежит файл.
🟠Размер файла:
Размер файла в байтах.
🟠Временные метки:
ctime (Change Time): Время последнего изменения i-ноды (метаданных).
mtime (Modification Time): Время последнего изменения содержимого файла.
atime (Access Time): Время последнего доступа к файлу.
🟠Расположение данных:
Прямые указатели: Указывают на блоки данных непосредственно.
Одноуровневые непрямые указатели: Указывают на блоки, которые содержат прямые указатели.
Двухуровневые непрямые указатели: Указывают на блоки, которые содержат одноуровневые непрямые указатели.
Трехуровневые непрямые указатели: Указывают на блоки, которые содержат двухуровневые непрямые указатели.
i-нод номер: 12345 Тип: Файл Права доступа: rw-r--r-- Ссылки: 1 UID: 1000 GID: 1000 Размер: 2048 байт ctime: 2023-07-31 12:34:56 mtime: 2023-07-31 12:00:00 atime: 2023-07-31 11:30:00 Прямые указатели: [2, 3, 4, ...] Одноуровневый непрямой указатель: [5] Двухуровневый непрямой указатель: [6] Трехуровневый непрямой указатель: [7]Ставь 👍 и забирай 📚 Базу знаний
🤔 Что порождает init процесс?
`init` — это первый процесс, который запускается ядром операционной системы после её загрузки.
Он порождается непосредственно ядром как процесс с идентификатором PID 1 и отвечает за инициализацию системы, запуск всех остальных процессов и управление ними.
`init` остаётся родительским процессом для всех орфанных процессов, обеспечивая их завершение или управление.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
