По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В этом руководстве мы расскажем, как установить KVM и как его использовать, чтобы создать виртуальные машины с такими дистрибутивами как RHEL, CentOS 7 и Fedora 21, основанными на RedHat. Что такое KVM? KVM (Kernel-based Virtual Machine) – это решение для полной виртуализации для Linux на оборудовании Intel 64 и AMD 64, которое включено в основное ядро Linux, начиная с версии 2.6.20. Аппаратные средства работают быстро и стабильно даже при больших нагрузках. Функции KVM KVM обладает большим количеством преимуществ и полезных функций, которые окажутся в Вашем распоряжении, если для установки виртуальной платформы Вы выберете данное программное обеспечение. Гипервизор KVM поддерживает следующие функции: Over-committing – с помощью этой функции можно обеспечить направление большего количества средств центрального процессора и памяти, чем доступно в системе. Thin provisioning – функция позволяет выделить гибкое хранилище и оптимизирует доступное пространство для каждой гостевой виртуальной машины. Disk I/O throttling – функция предоставляет возможность установить ограничение на запросы ввода-вывода диска, отправляемые с виртуальных машин на хост. Automatic NUMA balancing – функция улучшает работу приложений на аппаратных решениях NUMA. Virtual CPU hot add capability – данная функция предоставляет возможность увеличить процессорную память настолько, насколько это нужно работающей ВМ без простоев. Подготовительная работа Убедитесь, что Ваша система имеет расширение аппаратной виртуализации. Для хостов на базе Intel ЦП должен поддерживать расширение виртуализации [vmx]. Чтобы проверить наличие расширения, используйте следующую команду: # grep -e 'vmx' /proc/cpuinfo Для хостов на базе AMD ЦП поддерживает расширение виртуализации [svm]: # grep -e 'svm' /proc/cpuinfo Если вывод отсутствует, убедитесь, что в BIOS включена опция расширения виртуализации. Убедитесь, что модули KVM загружены в ядро (это должно быть загружено по умолчанию). # lsmod | grep kvm Вывод должен содержать kvm_intel для хостов на базе Intel и kvm_amd – на базе AMD. Вам также потребуются доступ уровня root или пользователь с sudo привилегиями, настроенными на Вашу систему. Также убедитесь, что Ваша система обновлена. # yum update Убедитесь, что Selinux в режиме Permissive. # setenforce 0 Шаг 1: Установка KVM Сначала мы установим пакеты qemu-kvm и qemu-img. Эти пакеты предоставляют KVM и image manager доступ на уровне пользователя. # yum install qemu-kvm qemu-img Теперь у Вас есть минимум требований, чтобы установить виртуальную платформу на вашем хосте. Но есть ещё полезные приложения, которые помогают в администрировании платформой: virt-manager (менеджер управления виртуальными машинами) предоставляет GUI-конструктор для управления виртуальными машинами. libvirt-client предоставляет инструмент CL для управления вашей виртуальной средой. Такая утилита называется virsh. С помощью команды virt-install, которую предоставляет программа virt-install, Вы можете создать виртуальную машину, используя CLI (интерфейс командной строки). С помощью библиотеки libvirt сервер и хост могут взаимодействовать с гипервизорами и хост-системами. Давайте установим эти инструменты с помощью следующей команды: # yum install virt-manager libvirt libvirt-python libvirt-client Для пользователей RHEL/CentOS7 также есть дополнительные группы пакетов, которые можно установить, например: Virtualization Client, Virtualization Platform и Virtualization Tools #yum groupinstall virtualization-client virtualization-platform virtualization-tools Демоном виртуализации, который управляет платформой, является libvirtd. Давайте перезапустим его. #systemctl restart libvirtd После того, как Вы перезапустили демона, проверьте его статус с помощью следующей команды: #systemctl status libvirtd Пример вывода libvirtd.service - Virtualization daemon Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled) Active: active (running) since Mon 2014-12-29 15:48:46 EET; 14s ago Main PID: 25701 (libvirtd) Теперь давайте перейдем к следующему разделу и создадим виртуальную машину. Шаг 2: Создание ВМ с помощью KVM Так как мы установили несколько полезных приложений для управления виртуальными платформами и создания виртуальных машин, одно из них –virt-manager – нам сейчас понадобится. Несмотря на то, что virt-manager является инструментом, основанным на графическом интерфейсе пользователя, из терминала мы можем запускать его так же, как и из GUI. #virt-manager GNOME GNOME Classic После того, как Вы запустите приложение, появится такое окно. По умолчанию менеджер напрямую подключен к localhost. Но Вы можете использовать тот же инструмент, чтобы выбрать другой хост удаленно. Из вкладки File выберите Add Connection и появится следующее окно. Поставьте галочку на Connect to remote host и впишите название или IP (Hostname) удаленного сервера. Если Вам нужно устанавливать соединение с удаленным сервером каждый раз, когда запускается менеджер, то поставьте галочку на Auto Connect. Давайте вернемся к localhost. Прежде чем создавать виртуальную машину, Вы должны решить, где будут храниться файлы. Другими словами, Вам необходимо создать том (виртуальный диск) для вашей виртуальной машины. Правой кнопкой мыши нажмите на localhost и выберите Details, а затем перейдите на вкладку Storage. Затем нажмите кнопку New Volume (Новый том) и введите название вашего нового виртуального диска (тома). В графу Max Capacity (Максимальная ёмкость) введите требующийся вам объем диска. Выбранный объем является реальным объемом Вашего диска, который сразу будет предоставлен с Вашего физического диска после завершения установки. Примечание: технология в области администрирования хранилищ называется thin provision (Тонкое обеспечение). Она используется для выделения только используемого объема хранилища, а не всего доступного объема. Например, Вы создали виртуальный диск размером 60 Гб, но используемого объема у Вас только 20 Гб. С помощью данной технологии жёсткий диск предоставит Вам только 20 Гб, а не 60. Другими словами, выделенный физический объем будет динамически распределяться в зависимости от фактического используемого объема. Знак нового диска появится в списке. Найти Ваш новый виртуальный диск Вы сможете по умолчанию с помощью команды /var/lib/libvirt/images. # ls -l /var/lib/libvirt/images -rw-------. 1 root root 10737418240 Jan 3 16:47 vm1Storage.img Наконец, мы готовы к созданию виртуальной машины. Нажмите на кнопку VM на главном экране, и появится окно. Выберите метод установки для создания ВМ. Мы пока выберем Local install media, а позже обсудим оставшиеся методы. Теперь мы должны выбрать, какой локальный носитель использовать. У нас есть два варианта: Физический CDROM/DVD ISO-образ Давайте выберем ISO-образ и введем его путь. Важно: к сожалению, для тех, кто использует RHEL или CentOS7, здесь есть баг. Он не даёт установить машину с использованием физического носителя CDROM/DVD. Опция просто будет серая: И если Вы наведете курсор, то появится сообщение об ошибке: physical cdrom passthrough not supported with this hypervisor (Физический CDROM не поддерживает данный гипервайзер). Больше информации можете узнать здесь. Снова вопрос про хранилище. Используем виртуальный диск, который мы недавно создали. Он скоро появится. На последнем шаге Вам необходимо дать название виртуальной машине. Если Вы хотите изменить что-то в конфигурации или сделать небольшую адаптацию, поставьте галочку на Customize configuration before install. Затем нажмите на finish и подождите несколько секунд, пока не появится контрольная консоль для вашей гостевой ОС. Готово! Заключение Вы узнали, что такое KVM, как управлять виртуальной платформой с помощью инструментов GUI, как создать виртуальную машину с помощью этого приложения и много других классных штук.
img
Привет! В статье расскажем о бесплатном способе передачи информации о звонящем в момент звонка из Битрикс24. Проверять мы будем лид и контакт. В качестве системы, куда мы будет отправлять данные будет уютный Telegram :) Погнали. Создаем Вебхук в Битрикс24 Переходим в Битрикс24 и открываем раскрывающееся меню в верхнем левом углу. Далее, выбираем «Вебхуки»: Добавляем Входящий вебхук, нажав на зеленую кнопку в правом верхнем углу Добавить вебхук. Делаем следующие настройки: Название - дайте имя. Например «Внешний доступ к REST API»; Описание - «cоответствие номера клиента и его имени»; Права доступа - необходимо выбрать «CRM (crm)»; Нажимаем «Сохранить». Для нас будет сгенерирован Вебхук. Переходим к настройке скрипта. Telegram - бот Перед продолжение настройки, вам необходимо создать Telegram – бота. О том, как это сделать читайте по кнопке: Создание бота Скрипт интеграции Из предыдущего шага, у вас должен быть идентификатор чата в Telegram, токен бота, вебхук и доменное имя вашего Битрикс24. Все, остальное дело скрипта: #!/usr/bin/php -q <?php #подключаем AGI - библиотеку; require('phpagi.php'); $agi = new AGI(); $cid = $agi->request['agi_callerid']; #от провайдера, номер на нашу АТС прилетает в формате 79ХХХХХХХХХ. В CRM номера записаны как 89ХХХХХХХХХ. Поэтому, мы стрипаем цифру спереди и подставлем 8ку; $phone = substr($cid, 1); $phone = "8$phone"; $phoneFieldset = "Коллеги, входящий звонок. Звонящий: "; #укажите служебные параметры: токен бота, идентификатор чата, хостовое имя CRM (то, что между https:// и до .bitrix24.ru) и вебхук, который мы получили ранее; $token = "333333333:MMMMMEEEEE_RRRIIIIOOOO_NNNNEEEETTTT"; $chat_id = "-1001001001001"; $crm_id = "имя_вашего_Битрикс24"; $webhook = "wblhahgytuwrnwer"; #проверяем существование лида по номеру; $bitrix_lead_url = "https://$crm_id.bitrix24.ru/rest/2/$webhook/crm.lead.list.json?filter[PHONE]=$phone&select[]=TITLE&select[]=NAME&select[]=LAST_NAME"; $btl = curl_init(); curl_setopt ($btl, CURLOPT_URL,$bitrix_lead_url); curl_setopt ($btl, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); curl_setopt ($btl, CURLOPT_TIMEOUT, 60); curl_setopt ($btl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt ($btl, CURLOPT_RETURNTRANSFER, 1); $bitrix_lead = curl_exec ($btl); curl_close($btl); $bitrix_lead_o = json_decode($bitrix_lead, true); $l_total = $bitrix_lead_o['total']; #проверяем существование контакта по номеру; $bitrix_contact_url = "https://$crm_id.bitrix24.ru/rest/2/$webhook/crm.contact.list.json?filter[PHONE]=$phone&select[]=TITLE&select[]=NAME&select[]=LAST_NAME"; $btc = curl_init(); curl_setopt ($btc, CURLOPT_URL,$bitrix_contact_url); curl_setopt ($btc, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); curl_setopt ($btc, CURLOPT_TIMEOUT, 60); curl_setopt ($btc, CURLOPT_FOLLOWLOCATION, 1); curl_setopt ($btc, CURLOPT_RETURNTRANSFER, 1); $bitrix_contact = curl_exec ($btc); curl_close($btc); $bitrix_contact_o = json_decode($bitrix_contact, true); $c_total = $bitrix_contact_o ['total']; #если найден лид, то: формируем массив и кидаем в сторону Telegram: имя, фамилия и идентификатор лида; if ($l_total >= 1) { $l_name = $bitrix_lead_o['result'][0]['NAME']; $l_title = $bitrix_lead_o['result'][0]['TITLE']; $l_l_name = $bitrix_lead_o['result'][0]['LAST_NAME']; $l_id = $bitrix_lead_o['result'][0]['ID']; $l_titleFieldset = "Входящий звонок от лида - "; $l_FnameFieldset = "Его имя - "; $l_linkFieldset = "Ссылка на лид - "; $l_fullname = "$l_name $l_l_name"; $l_link = "https://$crm_id.bitrix24.ru/crm/lead/show/$l_id/"; $arr = array( $l_titleFieldset => $l_title, $l_FnameFieldset => $l_fullname, $l_linkFieldset => $l_link, ); foreach($arr as $key => $value) { $txt .= "".$key." ".$value."%0A"; }; fopen("https://api.telegram.org/bot{$token}/sendMessage?chat_id={$chat_id}&parse_mode=html&text={$txt}","r"); } #если найден контакт, то: формируем массив и кидаем в сторону Telegram: имя, фамилия и идентификатор контакта; elseif ($c_total >= 1) { $c_name = $bitrix_contact_o ['result'][0]['NAME']; $c_c_name = $bitrix_contact_o ['result'][0]['LAST_NAME']; $c_id = $bitrix_contact_o ['result'][0]['ID']; $c_FnameFieldset = "Входящий звонок от контакта - "; $c_linkFieldset = "Ссылка на контакт - "; $c_fullname = "$c_name $c_c_name"; $c_link = "https://$crm_id.bitrix24.ru/crm/contact/show/$c_id/"; $arr = array( $c_FnameFieldset => $c_fullname, $c_linkFieldset => $c_link, ); foreach($arr as $key => $value) { $txt .= "".$key." ".$value."%0A"; }; fopen("https://api.telegram.org/bot{$token}/sendMessage?chat_id={$chat_id}&parse_mode=html&text={$txt}","r"); } else {}; Скачать скрипт По факту, от вас требуется изменить следующие переменные: $token - токен вашего бота. Как его получить указано в стате по ссылке «Создание телеграм бота» выше; $chat_id - идентификатор чата, в котором находится бот. Генерация так же указана в статье; $crm_id - хостовая часть вашего Битрикс24. Если у вас URL CRM company.bitrix24.ru, то указать нужно company; $webhook - вебхук. Мы показывали ранее, как его получить в Битрикс24 (у нас wblhahgytuwrnwer); Сохраняем скрипт как b24.php закидываем его в директорию /var/lib/asterisk/agi-bin. Адаптируем скрипт в unix – среде: dos2unix /var/lib/asterisk/agi-bin/b24.php chown asterisk:asterisk /var/lib/asterisk/agi-bin/b24.php chmod 775 /var/lib/asterisk/agi-bin/b24.php В диалплане (вставьте исполнение скрипта в транке, например): exten => _.,n,AGI(b24.php) Добавив в скрипт конструкцию вида $agi->set_variable("lookupcid", "$c_fullname"); для контакта или $agi->set_variable("lookupcid", "$l_fullname"); для лида, в диалплане мы сможем сделать следующее: Set(CALLERID(name)=${lookupcid}) мы получим имя звонящего в виде CallerID Name – например, на дисплее телефона. Можете создать тестового лида (или контакт) со своим номером телефона или дождаться звонка клиента. Наслаждаемся :)
img
Команда ping - это сетевой инструмент для проверки работоспособности удаленной системы. Другими словами, команда определяет, доступен ли определенный IP-адрес или хост. Ping использует протокол сетевого уровня, называемый Internet Control Message Protocol (ICMP), и доступен во всех операционных системах. С другой стороны, номера портов принадлежат протоколам транспортного уровня, таким как TCP и UDP. Номера портов помогают определить, куда пересылается Интернет или другое сетевое сообщение, когда оно приходит. В этом руководстве вы узнаете, как проверить связь с портом в Windows и Linux с помощью различных инструментов. Можно ли пропинговать конкретный порт? Сетевые устройства используют протокол ICMP для отправки сообщений об ошибках и информации о том, успешна ли связь с IP-адресом. ICMP отличается от транспортных протоколов, поскольку ICMP не используется для обмена данными между системами. Ping использует пакеты ICMP, а ICMP не использует номера портов, что означает, что порт не может быть опрошен. Однако мы можем использовать ping с аналогичным намерением - чтобы проверить, открыт порт или нет. Некоторые сетевые инструменты и утилиты могут имитировать попытку установить соединение с определенным портом и ждать ответа от целевого хоста. Если есть ответ, целевой порт открыт. В противном случае целевой порт закрывается или хост не может принять соединение, потому что нет службы, настроенной для прослушивания подключений на этом порту. Как пропинговать определенный порт в Linux? Вы можете использовать три инструмента для проверки связи порта в Linux: Telnet Netcat (NC) Network Mapper (nmap) Пинг определенного порта с помощью Telnet Telnet - это протокол, используемый для интерактивной связи с целевым хостом через соединение виртуального терминала. 1. Чтобы проверить, установлен ли уже telnet, откройте окно терминала и введите: telnet 2. Если telnet не установлен, установите его с помощью следующей команды Для CentOS/Fedora: yum -y install telnet Для Ubuntu: sudo apt install telnet 3. Чтобы пропинговать порт с помощью telnet, введите в терминале следующую команду: telnet [address] [port_number] Где [address] - это домен или IP-адрес хоста, а [port_number] - это порт, который вы хотите проверить. telnet google.com 443 Если порт открыт, telnet устанавливает соединение. В противном случае он указывает на сбой. 4. Чтобы выйти из telnet, нажмите Ctrl +] и введите q. Пинг определенного порта с помощью Netcat Netcat (nc) позволяет устанавливать соединения TCP и UDP, принимать оттуда данные и передавать их. Этот инструмент командной строки может выполнять множество сетевых операций. 1. Чтобы проверить, установлен ли netcat: Для Debian, Ubuntu и Mint: введите netcat -h Для Fedora, Red Hat Enterprise Linux и CentOS: ncat -h 2. Если netcat не установлен, выполните в терминале следующую команду: sudo apt install netcat 3. Чтобы пропинговать порт с помощью netcat, введите следующее: nc -vz [address] [port_number] Выходные данные информируют пользователя об успешном подключении к указанному порту. В случае успеха - порт открыт. Пинг определенного порта с помощью Nmap Nmap - это сетевой инструмент, используемый для сканирования уязвимостей и обнаружения сети. Утилита также полезна для поиска открытых портов и обнаружения угроз безопасности. 1. Убедитесь, что у вас установлен Nmap, введя nmap -version в терминал. Если Nmap установлен, вывод информирует пользователя о версии приложения и платформе, на которой он работает. 2. Если в вашей системе нет Nmap, введите следующую команду: Для CentOS или RHEL Linux: sudo yum install nmap Для Ubuntu или Debian Linux: sudo apt install nmap 3. После установки Nmap в системе используйте следующую команду для проверки связи определенного порта: nmap -p [port_number] [address] Выходные данные информируют пользователя о состоянии порта и типе службы, задержке и времени, прошедшем до завершения задачи. 4. Чтобы проверить связь с более чем одним портом, введите nmap -p [number-range] [address]. Синтаксис [number-range]- это диапазон номеров портов, которые вы хотите пропинговать, разделенные дефисом. Например: nmap -p 88-93 google.com Как пропинговать определенный порт в Windows? Проверить связь с портом в Windows можно двумя способами: Telnet PowerShell Пинг определенного порта с помощью Telnet Перед использованием telnet убедитесь, что он активирован: Откройте панель управления. Щелкните «Программы», а затем «Программы и компоненты». Выберите «Включение или отключение компонентов Windows». Найдите клиент Telnet и установите флажок. Щелкните ОК. Готово! Вы активировали клиент Telnet в системе. После завершения активации можно пропинговать порт с помощью telnet. Для этого: 1. Введите cmd в поиске в меню «Пуск». Щелкните на приложение Командная строка. 2. В окне командной строки введите telnet [address] [port_number] Где [address] - это домен или IP-адрес хоста, а [port_number] - это порт, который вы хотите проверить. Выходные данные позволяют узнать, открыт ли порт и доступен ли он, иначе отображается сообщение об ошибке подключения. Пинг определенного порта с помощью PowerShell PowerShell - это текстовая оболочка, которая по умолчанию поставляется с Windows. Чтобы проверить связь с портом с помощью PowerShell, выполните следующие действия: 1. Введите PowerShell в поиске в меню «Пуск». Щелкните приложение Windows PowerShell. 2. В окне командной строке PowerShell введите: Test-NetConnection [address] -p [port_number] Если порт открыт и соединение прошло успешно, проверка TCP прошла успешно. В противном случае появится предупреждающее сообщение о том, что TCP-соединение не удалось. Заключение Теперь вы знаете, как выполнить эхо-запрос и проверить, открыт ли порт, с помощью нескольких сетевых инструментов и утилит в Linux и Windows.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59