По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В предыдущей статье мы рассмотрели развертывание сервера с помощью Terraform в Amazon облаке. Мы использовали для развертывания файл с кодом, где описали полностью наш сервер и добавили скрипт на скриптовом языке bash, чтобы создалась HTML страничка с IP адресом сервера. Сам скрипт: user_data = <<EOF #!/bin/bash apt -y update apt -y install apache2 myip=`curl http://169.254.169.254/latest/meta-data/local-ipv4` echo "<h2>WebServer with IP: $myip</h2><br> Build by Terraform!" > /var/www/html /index.html sudo service httpd start chkconfig httpd on EOF Помещение подобного скрипта в код для поднятия инстанса, не очень хорошая практика, обычно для этого используются внешние статические файлы. На это есть несколько причин, одна из них разделение ролей в команде, например. Один человек пишет Terraform код, а другой скрипты для серверов на bash если это Linux сервер или на PowerShell если сервер разворачивается под управлением операционной системой Windows. Еще одной причиной является информационная безопасность точки зрения, которой не корректно вставлять скрипт внутри терраформ кода. Для начала создадим новую директорию Lesson-3 с помощью команды mkdir Lesson-3. Теперь, создадим новый файл WebServer.tr, командой nano webserver.tr и вставим рабочий код: Далее мы можем вырезать те данные которые у нас пойдут в скрипт и сохраняем файл. Создадим еще один файл назовем его user_data.sh. Создается файл достаточно просто - nano user_data.sh. В данный файл мы вставляем вырезанный кусок скрипта. Очень важно, обратите внимание! Файл должен начинаться с #!/bin/bash данная строка указывает, что для исполнения данного файла должен использоваться скриптовый язык bash. Сохраняем. На самом деле расширение файла, создаваемого не важно, т.к мы будем использовать функцию в Terraform которая берет контент из файла и делает вставку в код, автоматически подхватывая скрипт. Далее переходим к редактированию основного файла из которого мы вырезали скрипт. Открываем его любым текстовым редактором опять - nano webserver.tr. И нам теперь необходимо вставить функцию, которая возьмет данные из файла. В общем виде данная функция будет выглядеть следующим образом: user_data = file(“./dir/myfile.txt”) В нашем случае строчка модифицируется, т.к файл лежит в той же директории, что и Terraform файл user_data = file(“user_data.sh”). Теперь, чтобы проверить, как это работает мы должны сделать первоначальную инициацию Terraform, командой terraform init. Terraform, как обычно скачает все, что ему необходимо для работы. Далее проверяем, что у нас получилось и посмотрим, какие изменения Terraform произведет. В результате мы можем видеть, что, как и в прошлый раз будет создано 2 элемента. Сервер и Группа безопасности. Далее для запуска сервера мы можем использовать стандартную команду terraform apply и на вопрос системы отвечаем утвердительно. Можно сразу увидеть, что процесс создания сервера и группы безопасности начался. Как видите процесс занял совсем небольшое время. В данном случае не более одной минуты. Если мы зайдем в консоль мы можем убедится, что инстанс поднялся. Находим присвоенный амазоном белый ip адрес, который нам позволит из интернета проверить работоспособность нашего сервера и использование статического файла в качестве нашего скрипта, т.е убедится, что у нас все заработало. И последний шаг, проверяем что наш веб сервер доступен из глобальной сети. Обращаемся к нему, через браузер по протоколу http. В данном случае - http://18.157.187.102/. Вот мы можем увидеть вот такую картину. Не забудьте выключить и удалить все не нужные вам ресурсы в Амазон, во избежание лишних затрат. Статические внешние файлы играют большую роль в написание Terraform кода, потому что они используется практически во всех проектах и постоянно нужна в работе.
img
Cisco IOS-XE - операционная система на базе Linux, которую Cisco представила в 2008 коду в продуктах ASR и Catalyst. Является усовершенствованной версией более старой IOS и имеет ряд функциональных изменений. Cisco IOS-XE добавляет поддержку симметриченой многопроцесорной архитектуры и отдельных пространств памяти. Все функции системы теперь выполняются как отдельные процессы, и это дает много преимуществ. Теперь мы можем использовать многопроцессорность – это означает, что рабочая нагрузка процессов может быть разделена между несколькими процессорами. Когда один процесс выходит из строя, он не положит вам всю систему. Звучит хорошо, не так ли? :) Программное обеспечение IOS-XE больше не является «большим» файлом, в котором есть все – у него есть отдельные подпакеты. Можно обновить отдельный подпакет, а не обновлять все. Однако, помимо своих Linux-подходов, где IOS работает как отдельный процесс, Cisco IOS-XE в основном похожа на традиционную Cisco IOS. Какие продукты поддерживают IOS-XE? Enterprise switches: Catalyst 9500 Catalyst 9400 Catalyst 9300 Catalyst 3850 Catalyst 3650 Aggregation/edge routers: ASR 1013 ASR 1009-X ASR 1006-X ASR 1006 ASR 1004 ASR 1002-HX ASR 1001-HX ASR 1002-X ASR 1001-X ASR 900 NCS 4200 Branch routers: 4451 ISR 4431 ISR 4351 ISR 4331 ISR 4321 ISR 4221 ISR 1000 ISR Virtual Routing ISRv: ISRv CSR1000v Converged Broadband Routers: CBR Series IOS XE это еще одна операционная система от Cisco? Нет, Cisco IOS XE представляет собой непрерывную эволюцию программного обеспечения Cisco IOS для поддержки платформ следующего поколения. Сама Cisco IOS XE устанавливается на ASR-1000 с 2008 года, а Cisco IOS XE 3 SG устанавливается на Catalyst 4500-E Series с октября 2010 года. Он обеспечивает улучшенную архитектурную стратегию программного обеспечения, сохраняя при этом все преимущества и привычный интерфейс управления IOS. Какие преимущества IOS XE над IOS Существует несколько преимуществ перехода от IOS к IOS XE, которым будут пользоваться конечные пользователи. IOS XE поможет снизить общую стоимость владения многими решениями Cisco, предлагая расширенную интеграцию служб для повышения функциональности в сети. Кроме того, она поддерживает несколько ядер процессора, плоскость управления и разделение плоскости данных, и абстракцию платформы. Cisco IOS XE содержит Cisco IOS Release 15 внутри себя. Программное обеспечение Cisco IOS работает как процесс в Cisco IOS XE в так называемых демонах (daemon) IOS или IOSd. Нужно ли заново обучаться работе с IOS XE? Нет, Cisco IOS XE выглядит так же, как и традиционное программное обеспечение Cisco IOS. Изменены только несколько команд, такие как «show processor» и «show memory», которые были расширены для учета многоядерных процессоров, которые теперь поддерживает Cisco IOS XE. В целом, если вы знаете, как управлять программным обеспечением Cisco IOS, то вы знаете, как управлять Cisco IOS XE. Каковы долгосрочные перспективы Cisco IOS XE? Большинство платформ следующего поколения будут переноситься на Cisco IOS XE в ближайшие годы. Могут ли мои текущие коммутаторы и маршрутизаторы быть обновлены до Cisco IOS XE? Нет. Чтобы упростить переход, Cisco IOS XE будет представлена только после выхода новых поколений аппаратных платформ. Обновление существующей платформы без обслуживания не будет обеспечено. Аналогично, любая платформа, на которой работает Cisco IOS XE, не будет поддерживать работу с Cisco IOS. Каким образом функции распределяются между IOS и IOS XE? Так как Cisco IOS XE содержит IOSd в Cisco IOS, все функции, созданные в IOS, также появятся в IOS XE и наоборот. Только новые интегрированные сервисы и функции, созданные за пределами IOSd, не будут использоваться совместно с выпуском Cisco IOS. Однако эти интегрированные сервисы могут быть внедрены на платформе Cisco IOS с использованием дочерних карт Integrated Services, которые будут доступны на основе “платформа – платформа” Какие сервисы будут представлены в Cisco IOS XE и насколько открытой будет эта платформа для интегрированных сторонних служб и приложений? Службы, которые традиционно управляются standalone приложениями или серверами, теперь будут интегрированы в среду Cisco IOS XE. На сегодняшний день примеры включают в себя Сisco Unified Border Element (CUBE) и Session Border Controller (SBC), но этот список со временем будет пополняться.
img
Конфигурация вашей сетевой карты напрямую влияет, насколько эффективно взаимодействуют ваши сервера. Необходимо понимать, как настройки автосогласования, скорости и дуплекса влияют на передачу данных, чтобы успешно поддерживать сетевое соединение. А также расскажем про дополнительные фичи, которые помогут находить и устранять сетевые неполадки. В этой статье вы узнаете, как изменить настройки скорости, дуплекса и автосогласования в Linux с помощью команд ethtool. Что такое полудуплекс, полный дуплекс и автосогласование? Полудуплексный режим (Half-duplex) позволяет устройству отправлять или получать пакеты по очереди. Устройство, установленное в этот режим, не может выполнять оба действия одновременно. Когда режим устройства находится в полнодуплексном режиме (Full-duplex), он также может отправлять и получать пакеты одновременно. Автосогласование (Auto-Negotiation) - это механизм, с помощью которого устройство автоматически выбирает наиболее эффективный режим передачи на основе характеристик своих аналогов. Рекомендуется оставить автосогласование включенным, поскольку оно позволяет устройствам выбирать наиболее эффективные средства для передачи данных. Что такое дуплексное несоответствие? Такое происходит когда устройство с включенным автосогласованием подключается к устройству, которое не использует автосогласование. Конец соединения с активным автосогласованием все еще может определить скорость другого конца, но не может правильно определить дуплексный режим. Как правило, конец соединения с автоматическим согласованием будет использовать полудуплекс, тогда как другой конец может быть в дуплексном режиме. Эта ситуация считается дуплексным несоответствием (duplex mismatch). Несоответствие дуплекса не прекращает связь полностью. Передача отдельных пакетов и небольших объемов данных не вызывают больших проблем. Однако при отправке большого объема данных с любого конца скорость значительно падает. Соединение работает, но производительность снижается, поскольку скорость передачи данных асимметрична и может привести к потере пакетов. Как использовать команду Ethtool для настройки параметров сетевого адаптера Ethtool - это команда конфигурации платы сетевого интерфейса, которая позволяет вам получать информацию и изменять настройки сетевого адаптера. Эти настройки включают скорость, дуплекс, автосогласование и многие другие параметры. Помимо этого, ethtool используется для: Получения идентификационной и диагностической информации Получения расширенной статистики устройства Контроля контрольной суммы Контроля размеров кольца DMA и модерации прерываний Контроля выбора очереди приема для устройств с несколькими очередями Обновления прошивки во флеш-памяти Для установки ethtool используйте следующие команды: yum install ethtool [в Fedora, CentOS, RHEL] sudo apt-get install ethtool [в Ubuntu, Debian] Чтобы продолжить, вам нужно знать имя вашей сетевой карты. Чтобы найти имя вашей сетевой карты, введите в командном терминале следующую команду: ifconfig Вывод покажет нам имя сетевой карты устройства. enp0s3 Link encap:Ethernet HWaddr 00:1A:2B:3C:4D:5E Теперь, когда вы определили имя устройства, проверьте текущие настройки скорости, автосогласования и дуплексного режима с помощью команды: ethtool имя_устройства. В нашем конкретном примере команда выглядит так: ethtool enp0s3 Выходные данные показывают, что текущая скорость равна 1000 Мбит/с, что дуплекс находится в режиме «Full», и что автосогласование включено. Изменение настроек сетевого адаптера Команда ethtool –s может использоваться для изменения текущих настроек путем определения значений скорости speed, дуплекса duplex и автосогласования autoneg в следующем формате: sudo ethtool –s [device_name] speed [10/100/1000] duplex [half/full] autoneg [on/off] Например, чтобы установить скорость 1000 Мбит/с, дуплексный режим - «полный», а автоматическое согласование - «включено», команда будет выглядеть так: sudo ethtool –s enp0s3 speed 1000 duplex full autoneg on Команда ethtool [имя_устройства] необходима для подтверждения того, что изменения были применены. Сохранение настроек Изменения, сделанные с помощью Ethtool, по умолчанию отменяются после перезагрузки системы. Чтобы применить пользовательские настройки при каждой загрузке системы, отредактируйте файл для интерфейса устройства: vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 Добавьте нужные значения в виде строки в конце файла, используя следующий синтаксис: ETHTOOL_OPTS="speed [100|1000|10000] duplex [half|full] autoneg [on|off]” Например: ETHTOOL_OPTS="speed 1000 duplex full autoneg on” Сохраните изменения и выйдите из файла. Теперь изменения применяются после каждой перезагрузки и являются постоянными, если файл не будет изменен снова. Просмотр статистики интерфейса Если вы хотите получить статистику о вашей сетевой карте, введите команду: sudo ethtool -S имя_устройства Вывод этой команды будет выглядеть так: NIC statistics: rx_packets: 108048475 tx_packets: 125002612 rx_bytes: 17446338197 tx_bytes: 113281003056 rx_broadcast: 83067 tx_broadcast: 1329 rx_multicast: 3 tx_multicast: 9 rx_errors: 0 tx_errors: 0 tx_dropped: 0 multicast: 3 collisions: 0 rx_length_errors: 0 rx_over_errors: 0 rx_crc_errors: 0 rx_frame_errors: 0 rx_no_buffer_count: 0 rx_missed_errors: 0 tx_aborted_errors: 0 tx_carrier_errors: 0 tx_fifo_errors: 0 tx_heartbeat_errors: 0 tx_window_errors: 0 tx_abort_late_coll: 0 tx_deferred_ok: 0 tx_single_coll_ok: 0 tx_multi_coll_ok: 0 tx_timeout_count: 0 tx_restart_queue: 2367 rx_long_length_errors: 0 rx_short_length_errors: 0 rx_align_errors: 0 tx_tcp_seg_good: 0 tx_tcp_seg_failed: 0 rx_flow_control_xon: 0 rx_flow_control_xoff: 0 tx_flow_control_xon: 0 tx_flow_control_xoff: 0 rx_long_byte_count: 17446338197 rx_csum_offload_good: 107876452 rx_csum_offload_errors: 2386 rx_header_split: 0 alloc_rx_buff_failed: 0 tx_smbus: 0 rx_smbus: 0 dropped_smbus: 0 rx_dma_failed: 0 tx_dma_failed: 0 Использование приведенной выше команды - отличный способ устранения проблем с конкретной сетевой картой. Физическое расположение конкретного сетевого адаптера Вот действительно полезный трюк, который предлагает ethtool: допустим у вас есть сервер с несколькими сетевыми картами, и одна из них работает со сбоями, но вы не уверены, какая именно это карта. Вы можете использовать ethtool, чтобы заставить мигать индикатор сетевого адаптера, чтобы определить, какой сетевой адаптер вам нужен. Скажем, если вы хотите мигать светодиодом устройства Ethernet enp0s3 в течение 15 секунд - команда для этого будет выглядеть так: sudo ethtool -p enp0s3 15 Светодиод начнет мигать, чтобы вы знали, с какой картой вы имеете дело. Тестирование сетевой карты Команда ethtool предлагает пару удобных тестов, которые вы можете запустить на сетевой карте: Online - тесты nvram и тест ссылок Offline - тестирует регистр, память, loopback, прерывание Давайте запустим онлайн-тест на нашей сетевой карте. Эта команда выглядит так: sudo ethtool -t enp0s3 online После выполнения команда покажет нам результаты: Учтите, что некоторые устройства не поддерживают offline тестирование. Информация о драйвере Чтобы узнать имя драйвера и связанную информацию о драйвере используйте: ethtool -i eth0 Вывод: driver: via-rhine version: 1.5.0 firmware-version: bus-info: 0000:00:06.0 supports-statistics: no supports-test: no supports-eeprom-access: no supports-register-dump: no supports-priv-flags: no Заключение Следуя этому руководству, вы успешно изменили настройки своей сетевой карты с помощью команд ethtool. Вы также лучше поняли, как режимы автосогласования и дуплекса влияют на производительность сервера. И заодно узнали пару интересных функций команды ethtool.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59