ar
Feedback
DevOps | Вопросы собесов

DevOps | Вопросы собесов

الذهاب إلى القناة على Telegram
5 497
المشتركون
-724 ساعات
-127 أيام
-1630 أيام
أرشيف المشاركات
🤔 Что показывает load average? Load average показывает среднее количество процессов, ожидающих выполнения на ядре процессора за последние 1, 5 и 15 минут. Он включает в себя процессы, которые активны и находятся в очереди на выполнение, или ожидают ресурсов, таких как диск или сеть. Load average помогает оценить нагрузку на систему: значение, превышающее количество ядер, может указывать на перегрузку системы. Высокий load average без соответствующей активности процессора может свидетельствовать о блокировке ресурсов. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Каким образом диплоили приложение с помощью openshift? Деплой в OpenShift выполняется через контейнерное изображение, которое загружается в репозиторий. Затем приложение разворачивается с помощью команд oc или через веб-интерфейс, после чего OpenShift управляет контейнерами, обеспечивая масштабирование и обновления без простоя. 🚩Шаги 1⃣Установка и настройка OpenShift CLI (oc) Установите OpenShift CLI (oc), чтобы взаимодействовать с кластером OpenShift.
# Скачать и установить OpenShift CLI
wget https://mirror.openshift.com/pub/openshift-v4/clients/ocp/latest/openshift-client-linux.tar.gz
tar -xvf openshift-client-linux.tar.gz
sudo mv oc /usr/local/bin/
2⃣Создание проекта Создайте новый проект в OpenShift, который будет использоваться для развертывания вашего приложения.
# Войти в OpenShift
oc login https://<openshift-cluster-url> --token=<your-token>

# Создать проект
oc new-project my-project
3⃣Подготовка Dockerfile или S2I (Source-to-Image) Создайте Dockerfile для вашего приложения или используйте S2I для автоматической сборки образов.
FROM node:14

WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .

EXPOSE 8080
CMD ["node", "server.js"]
4⃣Создание и настройка билда Создайте BuildConfig для сборки вашего образа Docker.
# Создать BuildConfig из Dockerfile
oc new-build --strategy=docker --binary --name=my-app

# Запустить билд
oc start-build my-app --from-dir=. --follow
Если вы используете S2I
# Создать BuildConfig с использованием S2I
oc new-app nodejs:14~https://github.com/username/my-app.git --name=my-app
5⃣Развертывание приложения Создайте DeploymentConfig для развертывания вашего приложения.
# Создать DeploymentConfig из ранее созданного BuildConfig
oc new-app my-app

# Или, если используется S2I
oc new-app nodejs:14~https://github.com/username/my-app.git --name=my-app
6⃣Настройка маршрутизации (Routes) Создайте Route для доступа к вашему приложению извне.
# Создать маршрут
oc expose svc/my-app

# Проверить созданный маршрут
oc get routes
Пример деплоя с полным процессом
# Вход в OpenShift
oc login https://<openshift-cluster-url> --token=<your-token>

# Создание проекта
oc new-project my-project

# Создание билда
oc new-build --strategy=docker --binary --name=my-app
oc start-build my-app --from-dir=. --follow

# Развертывание приложения
oc new-app my-app

# Настройка маршрута
oc expose svc/my-app

# Проверка статуса маршрута
oc get routes
Ставь 👍 и забирай 📚 Базу знаний

😂 На одном кодинге уже давно не вывезешь, перспектива 2024 года - Информационная Безопасность Ловите два канала на тему ИБ и
😂 На одном кодинге уже давно не вывезешь, перспектива 2024 года - Информационная Безопасность Ловите два канала на тему ИБ и хакинга Арсенал Безопасника - Проект по кибербезопасности - сборник лучших инструментов и утилит по OSINT, хакингу и деанону Бункер Хакера - Все что необходимо, для того чтобы начать свой путь в безопасности - инструменты, книги, справочники, гайды и ресурсы.

🤔 Что такое зомби процессы? Зомби-процессы — это процессы, которые завершились, но их запись в таблице процессов остаётся, так как родительский процесс не обработал их код завершения. Они занимают минимальные системные ресурсы, но их наличие может указывать на проблемы в управлении процессами родительским процессом. Зомби-процессы можно устранить только завершением родительского процесса или с помощью сигналов. Наличие большого количества зомби-процессов может привести к исчерпанию доступных PID в системе. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Что за команда truncate? Это команда в Linux, которая используется для изменения размера файла. С ее помощью можно как увеличивать, так и уменьшать размер файла. При уменьшении размера файла данные, находящиеся за новой границей, будут потеряны, а при увеличении — файл будет дополнен нулями. 🚩Возможности команды 🟠Создание новых файлов Если указанный файл не существует, команда truncate создаст его с нулевым размером или с заданным размером. 🟠Уменьшение размера файлов При уменьшении размера файла данные, находящиеся за новой границей, будут потеряны. 🟠Увеличение размера файлов При увеличении размера файла он будет дополнен нулями до указанного размера. Синтаксис команды truncate
truncate [OPTIONS] FILE...
🚩Параметры 🟠-s, --size=SIZE: Задает размер файла. Размер может быть указан в байтах или с использованием суффиксов (K, M, G, T, P, E, Z, Y). 🟠-r, --reference=RFILE: Задает размер файла на основе другого файла (RFILE). 🚩Создание файла с заданным размером Создание файла размером 1 МБ
truncate -s 1M myfile   
Создание файла размером 512 байт
truncate -s 512 myfile   
🚩Увеличение размера существующего файла Увеличение файла до 2 ГБ
truncate -s 2G myfile   
🚩Уменьшение размера существующего файла 🟠Уменьшение файла до 100 КБ:
truncate -s 100K myfile  
🚩Установка размера файла на основе другого файла Установка размера файла myfile на размер файла referencefile
truncate -r referencefile myfile   
🚩Практические примеры 🟠Пример 1 Создаст пустой файл с именем emptyfile.
truncate -s 0 emptyfile
🟠Пример 2 Увеличит размер файла logfile на 500 МБ.
truncate -s +500M logfile
🟠Пример 3 Уменьшит размер файла largefile на 100 КБ.
truncate -s -100K largefile
Ставь 👍 и забирай 📚 Базу знаний

📺 Уникальная база записей IT собеседований 180+ записей реальных собеседований на программиста, тестировщика, аналитика и прочие IT профы. Записи собесов от ведущих компаний: Сбер, Яндекс, ВТБ, Тинькофф, Озон, Wildberries и т.д. 🎯 Переходи по ссылке и присоединяйся к базе, чтобы прокачать свои шансы на успешное трудоустройство! У тебя есть запись собеседования? Мы готовы ее купить и заплатим до 3000 руб. за каждую

🤔 Что такое inode? Inode — это структура данных в файловых системах Unix, которая хранит информацию о файле, включая его метаданные (размер, права доступа, время изменения), но не сам контент файла или его имя. Каждый файл или директория имеет свой собственный inode, и доступ к содержимому файла осуществляется через указатели inode. Inode не хранит информацию о самих данных файла, только о его расположении на диске. Число inode ограничено при создании файловой системы, что может повлиять на её емкость. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Как будете решать проблему если у вас коллега постоянно удаляет файлы rm rf но файлы не исчезают и место на диске не освобождается? Это может быть связано с тем, что файлы все еще открыты каким-либо процессом. В таких случаях система не освобождает пространство до тех пор, пока процесс не завершится. Вот шаги для диагностики и решения этой проблемы: 1⃣Проверка использования диска Используйте команду df для проверки использования дискового пространства.
df -h   
Проверьте, сколько места занимают файлы в проблемной директории.
du -sh /path/to/directory   
2⃣Поиск процессов, держащих удаленные файлы открытыми Найдите процессы, которые держат открытыми удаленные файлы.
lsof | grep deleted   
COMMAND   PID  USER   FD   TYPE DEVICE SIZE/OFF    NODE NAME
myprocess 1234 user   10r   REG  8,1   12345678 567890 /path/to/deleted/file (deleted)     
3⃣Завершение процессов Найдите процесс, держащий файл открытым, по PID (идентификатор процесса) из вывода lsof. Завершите процесс, чтобы освободить место на диске.
kill -9 <PID>    
kill -9 1234     
4⃣Проверка освобожденного пространства После завершения процесса, повторно проверьте использование дискового пространства.
df -h   
Убедитесь, что место в директории освободилось.
du -sh /path/to/directory   
🚩Примеры Поиск удаленных файлов
lsof | grep deleted   
Завершение процесса
kill -9 <PID>   
Ставь 👍 и забирай 📚 Базу знаний

Перец на канале «Записки необычного препода» делает невозможное! А именно — встраивает мышление на английском взрослым людям. Как обычно пытаются научить «думать на языке»? Методом «бери больше, кидай дальше». Слушайте песни, смотрите фильмы, читайте книги в оригинале, и оно само как-нибудь запустится. Тут всё совсем не так. Тут происходит встраивание языка на кардинально других принципах. В результате вы ощущаете грамматику и слова «изнутри». Так, как бы вы их ощущали, будь вы носителем английского языка. Почитать подробнее про эту технологию можно тут. Есть конкретный механизм мышления. Он состоит из визуального слоя, слоя смыслов и слоя слов. Механизм разбивается на элементы. Каждый элемент тренируется отдельно. Оттренированные элементы стыкуются друг с другом с помощью специальных упражнений. Здесь: - Пошаговая технология; - Разбор механик мышления на языке; - Простота — любое сложное упражнение должно быть разбито на простые. - Измеримость — все упражнения тренируются до норматива (как правило в секундах). Норматив гарантирует освоение упражнения на уровне навыка. - Сумма упражнений неизбежно приводит к мышлению на языке. Так же, как правильно собранные вместе детали создают автомобиль. Вот, например: - как найти английские артикли в русском; - как освоить что угодно в 10 раз быстрее; - как взломать английскую грамматику. Подписывайся, чтобы узнать больше.

🤔 Что такое Prometheus? Prometheus — это система мониторинга и оповещения с открытым исходным кодом, которая собирает метрики с различных источников, храня их в виде временных рядов данных. Он поддерживает гибкий язык запросов PromQL для анализа собранных метрик и построения графиков. Prometheus активно используется для мониторинга инфраструктуры и приложений, а также интегрируется с системами алертинга, такими как Alertmanager. Он особенно полезен для мониторинга микросервисов и облачных приложений. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Обучение на Frontend-разработчика. С нуля за 9 месяцев. На курсе вы получите все навыки, необходимые для старта в профессии Frontend-разработчика. Персональный наставник middle/senior уровня. 14 проектов, лайвкодинг, хакатоны, репетиции техсобеседования. Освоите JavaScript, React, TypeScript Официальный диплом и сертификат школы. Поддержка наставника по JS в течение 3-х месяцев после диплома. Гарантия трудоустройства. Если вы не устроитесь, вернём деньги. Это закреплено в договоре п. 6.14 Узнать больше #реклама 16+ result.school О рекламодателе

🤔 Как проверяете свободное место на диске? 🟠df disk freе показывает объем свободного и используемого пространства на файловой системе.
df -h  
-h: Показывает информацию в человекочитаемом формате (например, 1K, 234M, 2G).
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        50G   20G   30G  40% /
tmpfs           1.9G  1.2M  1.9G   1% /dev/shm 
🟠du disk usage показывает использование дискового пространства файлами и директориями. Это полезно для поиска крупных файлов и директорий.
du -sh /var/log/* 
-s: Показывает общий размер каждой аргументированной директории. -h: Человекочитаемый формат.
12M /var/log/apache2
4.0K /var/log/boot.log
56M /var/log/kern.log  
🟠lsblk Показывает информацию о блочных устройствах, включая диски и их разделы.
lsblk  
Вывод команды
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0   50G  0 disk
├─sda1   8:1    0   50G  0 part /
sdb      8:16   0  100G  0 disk
└─sdb1   8:17   0  100G  0 part /mnt/data  
🟠ncdu NCurses Disk Usage — интерактивная командная утилита для анализа дискового пространства.
ncdu /  
Вывод команды
--- / ---
.  16.0 GiB [##########] /usr
.   8.0 GiB [#####     ] /var
.   4.0 GiB [##        ] /home  
🟠btrfs filesystem df Используется для файловых систем Btrfs и показывает использование дискового пространства.
sudo btrfs filesystem df /mnt  
Вывод команды
Data, single: total=10.00GiB, used=8.54GiB
System, DUP: total=32.00MiB, used=16.00KiB
Metadata, DUP: total=1.00GiB, used=532.25MiB  
Ставь 👍 и забирай 📚 Базу знаний

Программист — лекарство от больных тимлидов, тупых багов и тех самых митов в 10 утра ☠️ Здесь собирают лучшие мемы про айтишников, чтобы спасти вашу психику от died'осов на работе. Идеально зачиллить вечерком и скинуть друзьям: @progeri

🤔 В чём разница между контейнеризацией и виртуализацией? Контейнеризация использует контейнеры для изоляции приложений и их зависимостей на уровне операционной системы, что делает контейнеры более лёгкими по сравнению с виртуальными машинами. Виртуализация, в свою очередь, создает полноценные виртуальные машины с собственными ОС поверх гипервизора, что требует больше ресурсов. Контейнеры запускаются на общем ядре ОС хоста, а виртуальные машины имеют свои ядра, что делает их независимыми, но более тяжёлыми. Контейнеры обеспечивают большую гибкость и скорость развертывания по сравнению с виртуальными машинами. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

🤔 Какие утилиты в linux обычно используете для траблшутинга? 🟠`top` и `htop` Эти утилиты показывают информацию о системных процессах в реальном времени, включая использование CPU, памяти и дискового ввода-вывода.
top
htop  
🟠`ps` Показывает список активных процессов.
ps aux  
🟠`netstat` и `ss` Показывают сетевые соединения, таблицы маршрутизации, интерфейсы и другую сетевую информацию
netstat -tuln
ss -tuln
🟠`lsof` Показывает открытые файлы и порты.
lsof
lsof -i :80  
🟠`df` и `du` Показывают информацию о дисковом пространстве. df показывает общий объем использования диска, а du - использование дискового пространства отдельными файлами и директориями.
df -h
du -sh /var/log/*  
🟠`ping` и `traceroute` Используются для диагностики сетевых проблем. ping проверяет доступность хоста, а traceroute показывает путь пакетов к хосту.
ping google.com
traceroute google.com 
🟠`curl` и `wget` Используются для отправки HTTP-запросов и загрузки файлов с веб-серверов. Полезны для проверки доступности веб-сервисов.
curl -I https://www.example.com
wget https://www.example.com/file.zip  
🟠`journalctl` Используется для просмотра системных журналов, управляемых systemd.
journalctl -xe
journalctl -u nginx.service  
🟠`dmesg` Показывает сообщения ядра. Полезно для диагностики аппаратных и загрузочных проблем.
dmesg | grep error  
🟠`strace` Трассирует системные вызовы и сигналы. Полезно для диагностики проблем с приложениями.
strace -p <PID>  
🟠`tcpdump` Анализатор сетевых пакетов. Полезно для диагностики сетевых проблем.
tcpdump -i eth0 
🟠`vmstat` и `iostat` vmstat показывает статистику виртуальной памяти, процессов и CPU. iostat показывает статистику ввода-вывода на устройстве.
vmstat 1
iostat 1  
Ставь 👍 и забирай 📚 Базу знаний

⚡️ Вся база знаний по IT в одном месте! 🧑‍💻 IT База — краткие разборы самого важного из мира IT. Сотни мастхев-ресурсов, каждый день новые материалы по работе и подготовке к собеседованиям. Подойдёт как новичкам, так и состоявшимся айтишникам; 🖥 Frontend База — всё для фронтенд разработчиков. Готовые решения для проектов, полезные курсы по JS/HTML/CSS, готовые роадмапы для комфортного освоения в профессии и дальнейшего развития; 👣 Backend База — самое важное для бэкендеров. Всё о работе с PHP, MySQL, MongoDB, Golang и Rust в одном месте, плюс полные курсы и лайфхаки для работы на каждый день; 🖥 База Знаний — склад полезных курсов и материалов, где легко найти что-то нужное по хэштегам. Если вам что-то интересно про IT, то оно уже лежит на Базе, проверяйте. Успей подписаться, чтобы не потерять!

🤔 В чём отличие Deployment от Delivery? Continuous Deployment подразумевает автоматический выпуск каждой успешной сборки в продакшн. Continuous Delivery предполагает автоматическую подготовку к выпуску, но для выпуска требуется ручное одобрение. Deployment обеспечивает более быстрый и непрерывный процесс, в то время как Delivery фокусируется на стабильности. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

eXpress - стандарт корпоративных коммуникаций Видеоконференции. Защищенный корпоративный мессенджер. Смартаппы для доступа к корпоративным системам и сервисам компании. Все в одном приложении! Получить предложение #реклама 16+ express.ms О рекламодателе

🤔 С какими самыми частыми ошибками сталкивались на линуксе? 🟠Ошибки при обновлении и установке пакетов Конфликты зависимостей или поврежденные пакеты. 1⃣Использование команды для исправления сломанных зависимостей.
sudo apt-get install -f   
2⃣Очистка кэша пакетов и повторная установка.
sudo apt-get clean
sudo apt-get update  
🟠Проблемы с сетью Нет доступа к интернету или неправильная настройка сети. 1⃣Проверка состояния сетевых интерфейсов.
ip a    
2⃣Перезапуск сетевого сервиса.
sudo systemctl restart NetworkManager    
3⃣Проверка конфигурации DNS
cat /etc/resolv.conf    
🟠Проблемы с правами доступа Недостаточно прав для выполнения команды или доступа к файлу. 1⃣Использование команды sudo для выполнения команд с привилегиями суперпользователя.
sudo <command>    
2⃣Изменение прав доступа к файлу или директории.
sudo chmod 755 /path/to/directory
sudo chown user:user /path/to/file    
🟠Проблемы с загрузкой системы Система не загружается или застревает на экране загрузки. 1⃣Восстановление загрузчика GRUB.
sudo grub-install /dev/sda
sudo update-grub    
2⃣Проверка и исправление файловой системы.
sudo fsck /dev/sda1    
🟠Проблемы с пространством на диске Недостаточно места на диске для выполнения операций. 1⃣Проверка использования дискового пространства.
df -h    
2⃣Очистка временных файлов и кэша.
sudo apt-get clean
sudo rm -rf /var/cache/apt/archives/*    
🟠Проблемы с разрешениями для NFS Нет доступа к файловой системе NFS. 1⃣Проверка статуса NFS сервера и клиента.
sudo systemctl status nfs-server
sudo systemctl status nfs-client    
2⃣Перезапуск NFS сервиса.
sudo systemctl restart nfs-server
sudo systemctl restart nfs-client    
🟠Проблемы с зависимостями Python Проблемы с установкой пакетов Python из-за конфликтов версий. Использование виртуальных окружений для изоляции зависимостей.
python3 -m venv myenv
source myenv/bin/activate
pip install <package>    
🟠Проблемы с SELinux Блокировка доступа к файлам или портам из-за правил SELinux. 1⃣Просмотр логов SELinux для диагностики.
sudo ausearch -m avc -ts recent    
2⃣Временное переключение SELinux в режим permissive.
sudo setenforce 0    
🟠Проблемы с загрузкой модулей ядра Модуль ядра не загружается или вызывает ошибку. 1⃣Проверка списка загруженных модулей.
lsmod    
2⃣Загрузка модуля вручную.
sudo modprobe <module>    
🟠Проблемы с настройкой фаервола Неправильные правила фаервола блокируют трафик. 1⃣Просмотр текущих правил фаервола.
sudo iptables -L    
2⃣Добавление или изменение правил.
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT    
Ставь 👍 и забирай 📚 Базу знаний

Представь: суббота, никакой рабочей суеты – только ты и онлайн-воркшоп с практикой в Linux. За 7 часов ты узнаешь, как самост
Представь: суббота, никакой рабочей суеты – только ты и онлайн-воркшоп с практикой в Linux. За 7 часов ты узнаешь, как самостоятельно развернуть облачное хранилище на базе NextCloud и настроить его под отказоустойчивость и безопасность. А рядом будут менторы из K2 Cloud, чтобы ответить на все вопросы. Переходи по ссылке и успевай зарегистрироваться до 21-го октября