Почему сильные специалисты остаются без откликов и какую роль в этом играет резюме

Разберём, почему даже опытные кандидаты могут долго не получать приглашений, какие ошибки чаще всего встречаются в резюме и как представить свой опыт так, чтобы его заметили. Рынок труда изменился, но многие продолжают искать работу по старой схеме Конкуренция среди кандидатов заметно выросла. Работодатели стали осторожнее подходить к найму, внимательнее выбирать кандидатов и чаще отказывать ещё до первого разговора. Поэтому сегодня недостаточно просто иметь хороший опыт. Важно уметь понятно показать его ценность.

Как практиковаться начинающему DevOps-инженеру: путь от Linux до Kubernetes

Одна из главных сложностей начинающего DevOps-инженера — отсутствие понятного плана практики. Можно пройти несколько курсов, изучить основы Linux, посмотреть уроки по Docker и Kubernetes, но всё равно не понимать, что именно делать руками и как соединить отдельные технологии в цельный проект. Хорошая практика DevOps — это не набор случайных команд. Гораздо полезнее создать небольшую инфраструктуру и постепенно развивать её: сначала развернуть сервер, затем запустить приложение, автоматизировать его доставку, добавить контейнеризацию, мониторинг, логирование и Kubernetes.

Как читать htop и не пугаться всех этих цифр

На протяжении долгого времени я не до конца понимал htop. Я думал, что средняя загрузка [load average] в 1.0 означает, что процессор загружен на 50%, но это не совсем так. Да и потом, почему именно 1.0? Затем я решил во всём разобраться и написать об этом. Говорят, что лучший способ научиться новому — попытаться это объяснить. htop на Ubuntu Server Ниже скриншот htop, который я буду рассматривать в статье.

Простой способ создать OpenVPN сеть

Многие в наше тяжелое время слежения всего и вся хотят немного обезопасить себя от внешнего воздействия. Одним из выходов из этой ситуации является VPN сеть до какой-нибудь VDS. Под катом один из простейших способов создать такую сеть. Всё будем поднимать на Debian. Вводные данные test - имя нашего сервера 192.168.10.254 - “внешний” IP сервера 192.168.1.254 - “внутренний” IP сервера 192.168.1.0/24 - “внутрення” сеть сервера 192.168.2.254 - OpenVPN адрес сервера 192.168.2.0/24 - OpenVPN сеть 192.168.11.0/24 - “внутренняя” сеть клиента user - пользователь, который сможет забрать ключи и конфиги с сервера

Настройка OSPF для нескольких областей

Топология сети: В данной работе займемся настройкой нескольких областей в OSPF (мультизоновый OSPF). Router-ID настроим в соответствии с номерами маршрутизаторов. Изначально интерфейсы маршрутизаторов настроены в соответствии с топологией, объявим сети роутеров в нужные области. Делается это аналогично тому, как добавляются сети в area 0, только area_id указывается иной: R1: R1# conf t Enter configuration commands, one per line. End with CNTL/Z. R1(config)#router ospf 1 R1(config-router)#router-id 1.1.1.1 R1(config-router)#network 1.0.0.0 0.255.255.255 area 0

Настройка скорости и дуплекса сетевой карты в Linux через ethtool

Команда ethtool в Linux позволяет изменять параметры сетевого интерфейса, такие как скорость передачи данных, режим дуплекса и автоопределение. Пример команды: sudo ethtool -s eth0 speed 1000 duplex full autoneg on Эта команда устанавливает скорость 1 Гбит/с, полный дуплекс и активирует автоопределение.

Настройка OSPF для одной области

Топология сети: Для того, чтобы настроить процесс маршрутизации OSPF на узлах, необходимо сначала создать процесс OSFP и указать его номер: Router(config)#router ospf process_ID Параметр process_ID может принимать значения от 1 до 65535. Итак, интерфейсы маршрутизаторов настроены в соответствии с приведенной топологией, теперь надо настроить OSPF. Возьмем номер процесса равным 1. Для того, чтобы объявить подключенные сети, необходимо в режиме настройки OSPF указать объявляемую сеть при помощи команды network:

Настройка ABR и ASBR

Топология сети: Схема данной статьи аналогична предыдущей, за исключением интерфейса E0/0 на R2. Он участвует в процессе маршрутизации EIGRP 100. Итак, интерфейсы на маршрутизаторах настроены в соответствии с топологией, теперь поднимем OSPF на роутерах (в качестве Router-id используем ip-адрес с порядковым номером роутера) R1: R1#conf t Enter configuration commands, one per line. End with CNTL/Z. R1(config)#router ospf 1 R1(config-router)#router-id 1.1.1.1 R1(config-router)#network 1.0.0.0 0.255.255.255 area 0 R1(config-router)#network 10.0.0.0 0.255.255.255 area 1 R1(config-router)#end R2:

OSPF: все о DR и BDR

Немного теории Итак, настало время поговорить о DR (Designated Router) и BDR (Backup Designated Router) в протоколе OSPF. Возьмем простенькую сеть из четырех маршрутизаторов, подключенных друг с другом через широковещательную сеть 192.168.1.0/24: Интерфейсы роутеров, подключенных к данному сегменту сети, находятся в общем адресном пространстве 192.168.1.0/24 (последняя цифра соответствует номеру маршрутизатора). Теперь представим, что у нас установлена full-mesh (каждый с каждым) связность по протоколу OSPF между роутерами:

Памятка по docker CLI

Базовые команды Запуск контейнера в фоне docker run -d nginx Запуск контейнера с shell docker run -it ubuntu bash Запуск контейнера, удаляющегося после остановки docker run --rm ubuntu bash Экспорт порта контейнера docker run -p 80:80 -d nginx Задать имя контейнера docker run --name frontend nginx Запустить остановленный контейнер docker start frontend Остановить контейнер docker stop frontend Управление контейнерами Показать работающие контейнеры docker ps Показать работающие и остановленные контейнеры docker ps -a Показать метаданные контейнера docker inspect c31337 Показать доступные локально образы docker images Удалить все остановленные контейнеры docker rm $(docker ps --filter status=expired -q) Показать все контейнеры со специальной меткой docker ps --filter label=traefik.backend Показать конкретные метаданные контейнера docker inspect -f '{{ .NetworkSettings.IPAddress }}' c31337 Запустить ничего не делающий контейнер docker run -d busybox /bin/sh -c "while true; do sleep 2; done" Сборка образа На основе Dockerfile в текущей директории docker build --tag my-image . «Жёсткая» пересборка docker build --no-cache my-image . Преобразовать контейнер в образ docker commit c31337 my-image Удалить все неиспользуемые образы docker rmi $(docker images -q -f "dangling=true") Отладка Зайти в работающий контейнер docker exec -ti c31337 bash Просмотр логов запущенного контейнера docker logs -f c31337 Показать экспортированные порты docker port c31337 Диски Создать локальный диск docker volume create --name my-volume Монтирование диска при старте контейнера docker run -v my-volume:/data nginx Удалить диск docker volume rm my-volume Показать все созданные диски docker volume ls Сети Создать локальную сеть docker network create my-net Подключить контейнер к сети при старте docker run -d --net my-net nginx Подключить работающий контейнер к сети docker network connect my-net c31337 Отключить работающий контейнер от сети docker network disconnect my-net c31337 Управление Docker Machine Запустить Docker Machine docker-machine start machine_name Остановить Docker Machine docker-machine stop machine_name Настроить Docker на работу с удалённой Docker Machine eval "$(docker-machine env machine_name)" Работа с Dockerfile Сборка образа из файла Dockerfile, учитывая, что мы находимся в папке, где лежит этот файл:

© solizarevich. Некоторые права защищены.

Использует тему Chirpy для Hugo

Популярные теги