По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Здравствуй дорогой друг! В этой статье мы хотим рассказать про базовую настройку отслеживания статического маршрута Static Route Tracking, используя IP SLA. В современной сетевой среде избыточность является одним из наиболее важных аспектов, будь то на стороне локальной сети LAN или на стороне глобальной сети WAN. В этой статье мы рассмотрим избыточность WAN с несколькими каналами WAN, оканчивающимися на одном маршрутизаторе. Лучший и самый простой способ достижения избыточности WAN на устройствах Cisco - это использовать надежные резервные статические маршруты с отслеживанием IP SLA. IP SLA - это функция, включенная в программное обеспечение Cisco IOS, которая позволяет администраторам анализировать уровни обслуживания для IP приложений и сервисов, проверять QoS на соответствие параметрам, и помогать обнаруживать и локализовать неисправности. IP SLA использует технологию активного мониторинга трафика (когда тестовые пакеты добавляются в активное соединение) для мониторинга непрерывного трафика в сети. Маршрутизаторы Cisco предоставляют собой так называемые IP SLA Responder'ы, которые обеспечивают точность измеренных данных в сети. IP SLA собирает информацию об задержке, джиттере, потере пакетов, их пути, последовательности отправки и многого другого. С IP SLA маршрутизаторы и коммутаторы выполняют периодические измерения. Количество и тип доступных измерений огромны, и в этой статье мы рассмотрим только функцию ICMP ECHO. Сам по себе IP SLA - очень большая тема для обсуждения. Настройка Рассмотрим следующую схему с двумя провайдерами. На рисунке наше устройство Cisco подключено к двум каналам WAN - ISP1 и ISP2. Наиболее распространенная настройка, которую мы используем в повседневной жизни, - это настройка маршрутов по умолчанию на маршрутизаторе Cisco, указывающих на соответствующие IP-адреса следующего хопа (next-hop), как показано ниже: R1(config)# ip route 0.0.0.0 0.0.0.0 2.2.2.2 R1(config)# ip route 0.0.0.0 0.0.0.0 3.3.3.3 10 Как вы могли заметить административное расстояние для дополнительного маршрута, указывающего на ISP2, увеличено до 10, чтобы он стал резервным каналом. Вышеуказанная конфигурация с двумя плавающими статическими маршрутами частично выполняет наше требование, поскольку она будет работать только в сценарии, когда интерфейсы маршрутизаторов, подключенные к каналу WAN, находятся в состоянии UP/UP или DOWN/DOWN. Но во многих ситуациях мы видим, что, хотя линки остаются работоспособными, но мы не можем достичь шлюза, это обычно происходит, когда проблема находится на стороне провайдера. В таких случаях IP SLA становится лучшим другом инженера. Используя IP SLA, Cisco IOS получает возможность использовать эхо-запросы ICMP для идентификации, когда канал WAN отключается на удаленном конце, и, следовательно, позволяет инициировать резервное соединение с альтернативного порта. IP SLA настроен на пинг цели, такой как общедоступный IP-адрес или адрес в корпоративной сети, или ваш IP-адрес следующего хопа на маршрутизаторе ISP. Пинги маршрутизируются только с основного интерфейса. Пример конфигурации IP SLA для генерации пинга icmp, нацеленного на IP-адрес следующего перехода ISP1: R1(config)# ip sla 1 R1(config)# icmp-echo 2.2.2.2 source-interface FastEthernet0/0 R1(config)# timeout 1000 R1(config)# threshold 2 R1(config)# frequency 3 R1(config)# ip sla schedule 1 life forever start-time now Обратите внимание, что команды Cisco IP SLA меняются в зависимости от версии IOS, и чтобы узнать точную команду для вашей версии IOS, проверьте документацию Cisco. Вышеприведенные команды предназначены для IOS 12.4(4) T, 15.(0)1M и более поздних выпусков. Приведенная выше конфигурация определяет и запускает IP SLA. ICMP-echo отправляет эхо-пакет ICMP на IP следующего хопа 2.2.2.2 каждые 3 секунды, как определено параметром “frequency”. “Timeout” устанавливает время (в миллисекундах), в течение которого операция SLA Cisco IOS IP ожидает ответа от своего пакета запроса. “Threshold” устанавливает порог, который генерирует событие реакции и хранит хронологическую информацию для операции SLA Cisco IOS IP. После определения операции IP SLA наш следующий шаг - определить объект, который отслеживает SLA. Это можно сделать с помощью IOS Track Object, как показано ниже: R1(config)# track 1 ip sla 1 reachability Приведенная выше команда создает трек, который будет отслеживать состояние операции IP SLA. Если от IP-адреса следующего хопа нет откликов на пинг, трек отключится и начнет работать, когда SLA начнет снова получать пинг-ответ. Чтобы проверить состояние трека, используйте команду show track, как показано ниже: R1# show track Track 1 IP SLA 1 reachability Reachability is Down 1 change, last change 00:03:19 Latest operation return code: Unknown Последним шагом в конфигурации надежного статического маршрута IP SLA является добавление оператора отслеживания к маршрутам по умолчанию, указывающим на маршрутизаторы ISP, как показано ниже: R1(config)# ip route 0.0.0.0 0.0.0.0 2.2.2.2 track 1 R1(config)# ip route 0.0.0.0 0.0.0.0 3.3.3.3 10 Добавив после адрес ключевое слово track и его номер, мы указываем, что только если состояние настроенного трека будет Up. Следовательно, если статус трека Down, то вторичный маршрут будет использоваться для пересылки всего трафика. Готово! Мы успешно настроили автопереключение между двумя провайдерами при помощи IP SLA с icmp-echo
img
На интервью по проектированию ИТ-систем кандидату нужно не только показать глубокие технические знания, но и предложить эффективные решения с нуля в ограниченное время. Такое собеседование считается одними из самых сложных среди технических. Кандидату могут предложить спроектировать интерфейс мессенджера, новостной ленты или поисковика. Объемные задачи могут пугать и сбивать с толку. В этой статье мы рассмотрим наиболее распространённые ошибки на собеседованиях и дадим рекомендации, как их избежать, чтобы произвести лучшее впечатление на работодателя.  Что ищет интервьюер? Для начала давайте поговорим о том, что хотят знать о вас интервьюеры. Когда интервьюеры задают вам вопрос о проектировании ИТ-системы, они ищут не только работающее решение и хорошие коммуникативные навыки. Интервьюеры хотят получить ответы на следующие вопросы:  Сколько различных решений может методично предложить этот человек?  Может ли он провести анализ «за» и «против» различных подходов?  Какова глубина его ответов?  Думает ли этот человек о сроке службы системы и о том, как она будет развиваться по мере появления новых пользователей и данных?  Может ли он объяснить различные сценарии на конкретных примерах? Важно отметить, что не каждый интервьюер оценит ваши сильные стороны по приведенным выше вопросам! Рассматривайте их как общие рекомендации. Ошибка № 1. Нет понимания функциональных и нефункциональных требований Выяснение функциональных и нефункциональных требований к системе — одна из первых вещей, которые вы должны выяснить у интервьюера. Функциональные требования включают в себя основные функции, предлагаемые системой, и необходимы для создания конечного продукта, отвечающего ожиданиям конечных пользователей. Эти требования необходимы для того, чтобы ваша система функционировала. Нефункциональные требования сосредоточены на ожидаемой производительности и на том, насколько ваш конечный продукт соответствует ожидаемым стандартам. Эти требования не являются необходимыми для функционирования вашей системы. Вопросы на собеседовании по проектированию системы часто бывают намеренно расплывчатыми, и вы обязаны найти информацию, необходимую для реализации вашего проекта. Когда кандидаты переходят к разработке решения, не задав достаточно уточняющих вопросов, они могут сделать предположения о том, как должна функционировать и работать система. Если ваш интервьюер не предлагает достаточно информации, не стесняйтесь спросить: «Каковы функциональные и нефункциональные требования к системе, которую мы проектируем?» Потратьте время, чтобы выяснить, какие именно компоненты должна включать ваша система и каковы ее ожидаемые характеристики. Ошибка №2. Не выявлены неисправности, точки отказа и решения Вероятно, следует учредить награду для первого человека, который разработает систему, которая никогда не дает сбоев. Практически во всех системах есть «узкие места», и во всех системных конструкциях может быть какая-то неисправность или уязвимость, которая может привести к полному отказу системы. Конечно, «полный отказ системы» может быть несколько драматичным, но он призван подчеркнуть важность знания слабых мест вашей системы. Как разработчик системы, вы должны уметь находить решение для непереходных, постоянных проблем, иначе система откажет сама. Зная эти недостатки, вы сможете заранее спланировать меры по обеспечению отказоустойчивости и возвращению системы в режим 100-процентной готовности. Обязательно представьте решение (или несколько решений) для точек отказа, чтобы показать интервьюеру, что вы рассматриваете проект со всех возможных сторон. Учет неисправностей и точек отказа может открыть дискуссию о том, станет ли пропускная способность проблемой в будущем. Если вы обнаружили, что конструкция вашей системы может выйти из строя при интенсивных нагрузках, спросите интервьюера, какая нагрузка предполагается для этой системы, прежде чем думать о том, как сделать систему более масштабируемой. Примечание: Некоторые из самых больших (и наиболее распространенных) уязвимостей системы, которые следует искать, связаны с обработкой и вводом данных пользователем (например, лазейки в системе безопасности, SQL-инъекции). Ошибка №3. Не учтены компромиссы для различных решений Существует бесчисленное множество возможных решений, которые вы могли бы предложить на вопрос собеседования по проектированию системы, и, скорее всего, вы не сможете учесть компромиссы для всех из них. Однако не стоит совершать ошибку, не учитывая никаких компромиссов. У каждой системы есть сильные и слабые стороны. Обязательно учитывайте масштабируемость, доступность, ремонтопригодность и надежность различных решений. Ошибка №4. Недостаточная или излишняя коммуникация Во время собеседования интервьюер оценит вашу способность общаться с другими людьми. Насколько хорошо вы умеете работать в команде? Если вы все время молчите, не задавая вопросов и не обращаясь к интервьюеру за обратной связью, это может создать впечатление, что вы не склонны к сотрудничеству или независимы до крайности. С другой стороны, вы рискуете доминировать в разговоре или перегружать собеседника неактуальной информацией. Обе эти проблемы можно решить с помощью практики. Когда вы практикуетесь в решении проблем проектирования систем, попробуйте провести себя или кого-то другого через ваше решение. Даете ли вы им достаточно времени, чтобы задать вопросы? Ясны ли ваши объяснения и лаконичны ли они? Наконец, убедитесь, что вам удалось выполнить следующее:  Определить проблему  Выявить все ограничения  Определить функции, необходимые для разработки системы  Определить наиболее важные компоненты для установления приоритетов Ошибка №5. Отсутствуют обоснования дизайнерских решений Потратьте время на то, чтобы тщательно сформулировать мыслительный процесс, лежащий в основе ваших решений. Вы должны быть в состоянии объяснить, почему вы приняли то или иное проектное решение, и точка. Неспособность обосновать проектное решение - одна из самых серьезных ошибок, которые можно допустить на собеседовании по разработке системы, поскольку это может создать впечатление, что вы не знаете, что делаете. Помните, что одна из главных целей интервьюера - выяснить ход ваших мыслей и понять, как вы принимаете решения. Они будут задавать вам вопросы о том, почему вы выбрали одну технологию, а не другую, или о других аспектах вашей системы. Они хотят знать, что, по вашему мнению, является наиболее подходящим решением для данной проблемы и почему. По этой причине крайне важно ознакомиться с как можно большим количеством различных технологий и моделей проектирования систем. Один из способов научиться говорить об этих технологиях и дизайнах - объяснить их нетехническому человеку так, чтобы они были понятны. Ошибка №6. Пропуск высокоуровневого проектирования Переход сразу к деталям — одна из важных ошибок, которая может привести к понижению уровня. Так, например, если вы подали заявку на должность старшего специалиста SWE, а на собеседовании дали ответы на вопросы среднего уровня, вам могут предложить должность этого уровня. Поэтому сначала обсудите детали проектирования системы высокого уровня. Важно убедиться, что в начале собеседования вы не переходите сразу к низкоуровневым аспектам проектирования системы. Высокоуровневый дизайн (HLD) предполагает преобразование потребностей клиента в решение, которое включает в себя общий дизайн системы, архитектуру программного обеспечения, базы данных, платформы, сервисы, компоненты и модули. На этом уровне вы продумываете взаимосвязь между различными частями системы. Низкоуровневое проектирование (LLD) сосредоточено на компонентах вашего проектного решения и обычно включает подробное описание каждого компонента, функциональной логики работы различных модулей и другие спецификации для удовлетворения потребностей вашего клиента или бизнеса. Примечание: опытные системные дизайнеры уделяют внимание не только различным программным компонентам и их взаимодействию друг с другом, но и всему сроку жизни системы и ее развитию. Они будут думать о том, как сделать системы более эффективными, устойчивыми и масштабируемыми.
img
Понятие собственного хостинга по всем критериям не является революционным, но оно определенно дает большую свободу и гибкость. Системные администраторы и программисты уже довольно давно изучают способы размещения своих продуктов в качестве самостоятельных приложений. По сути, собственный хостинг был единственным пригодным подходом по той лишь причине, что поставщики облачных услуг не были еще столь популярны.  У многих людей до сих пор возникают вопросы, связанные с тем, должны ли они размещать свои продукты самостоятельно, ведь относительно недавно произошел резкий скачок популярности соответствующих веб-компаний. Если вы хотите разместить свой собственный реестр контейнеров для Docker Hub, Harbor – это лучшее решение. Фонд CNCF уже поддержал его сразу после того, как он был впервые создан в рамках компании VMware.  Сейчас все это продолжает существовать в качестве приложения с открытым исходным кодом, пытаясь предоставить клиентам максимум функциональных возможностей и оставаясь при этом бесплатным. Как бы там ни было, в этой статье вы узнаете, что такое Harbor, для чего он нужен, в чем заключаются его функции, как его можно установить и многое другое. Так что, давайте начнем. Что такое Harbor? Существует высококлассный метод сопровождения и хранения docker-контейнеров, который называется Harbor. Компания VMware – выдающийся производитель виртуальных машин, создала Harbor, а позже передала ее в фонд CNCF, который считается крупнейшим открытым проектом. В свою очередь, проект Harbor был разработан на базе языка программирования Harbor. Разработчики и добровольцы поработали над улучшением последнего и устранением угроз нарушения безопасности.  И то, и другое требовали вовлечения некоторого числа программистов со всего мира. Это могло привести к тому, что программа могла стать тем или иным образом несогласованной. В рамках реестра контейнеров Harbor все особенно старались сделать свои продукты более безопасными, нежели в их предыдущих версиях. Harbor был создан в облаке. Более того, он способен проверять детали образов на наличие уязвимостей, а не просто их хранить. Кроме того, Harbor позволяет программистам проверять образы, которые они загружают в реестр, с помощью собственных ключей, демонстрируя таким образом их легитимность.  Для чего нужен Harbor? Возможно, вы до сих пор не понимаете, почему же стоит выбрать именно Harbor, а не какое-нибудь другое решение. Впрочем, есть множество моментов, которые выделяют его на фоне остальных программ. Самое очевидная причина -  ваше желание контролировать реестр от и до и возможность его настройки под себя. Несмотря на то, что некоторые поставщики предоставляют большое количество параметров, вам зачастую все же приходится выбирать один из доступных методов развертывания, предлагаемых поставщиком. Если же вы используете свою собственную платформу, то вы можете контролировать то, как реализуются объекты. Наряду с этим, у Harbor есть ряд уникальных характеристик, которых больше ни у кого нет. А вот наличие раздельных записей для разработки, гарантии качества и производства является довольно типичным. Harbor допускает все это, но при этом упрощает процесс их взаимозависимой обработки. Кроме того, вы можете продвигать образы в несколько этапов за счет его гибкости, которая позволяет синхронизировать образы между источниками. Процесс установки Размещение вашего сервера Kubernetes на AWS или GCP – это распространенный вариант в рамках коммерческих сценариев, но для обучения это довольно сложно. Здесь мы будем использовать Minikube – продукт, который предназначен для частного запуска кластеров Kubernetes. После того, как вы установите minikube, запустите новую сеть с помощью следующих команд: $ minikube start --vm-driver virtualbox Даже при том, что на завершение команды вам потребуется больше времени, вы получите функционирующий стек технологий. А теперь для того, чтобы активировать расширения для входа, которые помогут вам подключить свою конфигурацию Harbor, вы должны выполнить следующую команду: $ minikube addons enable ingress На этом этапе minikube уже должен быть настроен. После чего, будет установлен шаблон Helm для Harbor, но только после того, как вы добавите в Helm исходный код: $ helm repo add harbor https://helm.goharbor.io После того, как вы создадите источник, вы можете развернуть чарт Helm. Для этого вам нужно выполнить следующее: $ helm install my-release harbor/harbor На данном этапе вы должны дождаться, что все модули начнут работать. Для того, чтобы в этом убедиться, запустите команду  kubectl get pods . Однако вы можете заметить, что у некоторых модулей есть сбои в работе. Это неизбежно, поскольку они взаимозависимы. Для того, чтобы они все заработали, нужно примерно 15-20 минут. А как только они получат IP-адрес для кластера minikube, вы должны запустить команду  minikube ip . С помощью этого IP-адреса вы должны изменить свой документ /etc/hosts. По умолчанию URL-адрес следующий:  http://core.harbor.domain , но когда вы вводите его в адресную строку браузера, вы должны быть уверены в том, что он связывается с вашим кластером. Для этого, добавьте в /etc/hosts следующие две строчки:   core.harbor.domain   notary.harbor.domain Так вы сможете зайти на сайт  http://core.harbor.domain с помощью стандартных имени пользователя и пароля.  имя пользователя: admin пароль: Harbor12345 Настройка клиента Docker Теперь развертывание Harbor функционирует, и вы можете его использовать. Это не означает, что вы можете использовать его только в качестве реестра. Для того, чтобы реестр был доступен, вам в любом случае следует настроить учетные данные Harbor в вашей системе. Для того, чтобы использовать minikube, вам нужно установить сервер Docker. Если вы используете Linux или OS X, то можете попробовать следующее:   После чего параметры среды вашего компьютера будут настроены на обращение к серверу Docker. Следующее, что вам нужно – это сертификаты. Они находятся в секретах Kubernetes: kubectl -n harbor get secrets harbor-ingress -o jsonpath="{.data['ca\.crt']}" | base64 -D > harbor-ca.crt [Примечание: используется base64 –D, а вот base64 –d будет использоваться в Linux.] Теперь у вас есть файл данных harbor-ca.crt, в том числе и сертификат. Так что, первым делом вы должны скопировать учетные данные в виртуальную машину minikube для того, чтобы развернуть ее на сервере Docker: $ scp -o IdentitiesOnly=yes -i $(minikube ssh-key) harbor-ca.crt docker@$(minikube ip):./harbor-ca.crt После того, как вы передадите сертификат, вы можете установить его через виртуальную машину minikube. Сделать это можно вот так: $ minikube ssh $ sudo mkdir -p /etc/docker/certs.d/core.harbor.domain $ sudo cp harbor-ca.crt /etc/docker/certs.d/core.harbor.domain Для того, чтобы вернуться к своему обычному терминалу, запустите команду exit. Раз уж учетные данные настроены, вы можете войти в систему и отправить образ docker для того, чтобы убедиться, что все исправно работает: $ docker login core.harbor.domain --username=admin --password Harbor12345 # Fetch the image stored in the Docker Hub { # Извлекаем образ, который хранится в Docker Hub } $ docker pull nginx # As the image is not ready for pushing, tag it and proceed { # Так как образ еще не готов к отправке, отметьте его тегом и идите дальше } $ docker tag nginx core.harbor.domain/library/nginx:latest # Complete pushing the image to registry { # Завершите отправку образа к реестр } $ docker push core.harbor.domain/library/nginx:latest Топ-4 функции Единая UAA-авторизация : Harbor, VMware, Tanzu Application Service для виртуальных машин (TAS для виртуальных машин) и TKGI могут совместно использовать UAA-аутентификацию.  Функциональная совместимость с LDAP/AD (Active Directry) : для того, чтобы управлять идентификацией, Harbor подключается к бизнес-системам LDAP/AD. RESTful API : для простоты связи с внешними сетями у большей части административных функций есть RESTful API. Повторное создание проектов : Harbor поддерживает тиражирование проектов, позволяя, таким образом, копировать источники из одной учетной записи Harbor в другую. Заключение Если вы проделали весь этот путь, то это значит, что Harbor установлен и работает, и вы можете начать использовать его в качестве своего собственного персонального реестра. Кроме того, у вас есть полный контроль над тем, как будет использоваться ваш реестр и как он будет реализован. К тому же, вы можете пользоваться всеми возможностями этой программы, в том числе функцией обнаружения атак и дублирования образов контейнеров. 
ОСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59