пїЅпїЅпїЅ пїЅпїЅпїЅпїЅ
По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
В этой серии статей мы обсуждаем темы администрирования RHEV 3.5. RHEV - это решение для виртуализации Red Hat Enterprise Virtualization, основанное на проекте oVirt (open-source Virtualization project). Red Hat Enterprise Virtualization - это комплексное решение управления виртуализацией для виртуализированных серверов и настольных компьютеров.
В этой статье мы обсуждаем среду RHEV и базовое использование. RHEV состоит из двух основных компонентов, таких как гипервизор и система управления.
RHEV-H - это гипервизор платформы RHEV, который используется для размещения виртуальных машин. В основе его лежит KVM и RHEL. RHEVM - это система управления средой, которая управляет гипервизорами среды. Он также используется для создания, перемещения, изменения и управления виртуальными машинами, размещенными на гипервизорах.
Особенности RHEV 3.5
Это решение с открытым исходным кодом основывается на ядре Red Hat Enterprise Linux с технологией гипервизора виртуальной машины на основе ядра (KVM).
Поддерживаемый предел до 160 логических процессоров и 4 ТБ для каждого узла и до 160 виртуальных процессоров и до 4 ТБ памяти на виртуальную машину.
Интеграция с OpenStack.
Поддерживаются ежедневные задачи, такие как автономное перемещение, высокая доступность, кластеризация и т. д.
Необходимые условия для использования
Мы будем работать на двух узлах: "гипервизоры" и "хосты" с одним менеджером и одним узлом хранения iscsi. Потом мы добавим один IPA-и DNS-сервер в нашу среду.
Мы планируем два сценария использования:
Физическое использование - реальная среда, поэтому вам понадобится как минимум три или более физических машины.
Виртуальное использование - тестовые лаборатории/среда, поэтому вам понадобится одна физическая машина с большими ресурсами, например, процессор i3 или i5 с оперативной памятью 8G или 12G, в дополнение к другому программному обеспечению виртуализации, например Vmware workstation.
В этой серии статей мы работаем над вторым сценарием:
Physical Host OS : Fedora 21 x86_64 with kernel 3.18.9-200
RHEV-M machine OS : RHEL6.6 x86_64
RHEV-H machines hypervisor : RHEV-H 6.6
Virtualization software : Vmware workstation 11
Virtual Network interface : vmnet3
Network : 11.0.0.0/24
Physical Host IP : 11.0.0.1
RHEV-M machine : 11.0.0.3
В будущих статьях мы добавим дополнительные компоненты, такие как ноды хранения и IPA-сервер, чтобы сделать среду максимально масштабируемой.Для RHEV-M позаботьтесь заранее об:
RHEL / CentOS6. 6 x86_64 new минимальная установка (чистая установка).
Убедитесь, что система обновлена.
Выделен статический IP-адрес.
Машине назначено имя и она доступна по FQDN, например
Обновите файл файл /etc/hosts с именем хоста и IP-адресом (убедитесь, что имя хоста резолвится).
Минимальные требования - 4G для памяти и 25 GB для жесткого диска.
Mozilla Firefox 37 - это рекомендуемый браузер для доступа к WUI.
Установка Red Hat Enterprise Virtualization Manager 3.5
1. Чтобы получить доступ к пакетам и обновлениям RHEV, вы должны получить бесплатную 60-дневную пробную подписку с официального сайта red hat, используя корпоративную почту отсюда: Red Hat Enterprise Virtualization 60-дневный пробный период
Примечние: после 60-дневного периода ваша виртуалка будет работать в нормальном режиме, однако без доступа к обновлениям системы, если таковые появятся.
2. Затем зарегистрируйте свою машину в RHN (Red Hat Network).
3. Далее установим пакет rhevm и его зависимости с помощью yum.
[root@rhevm ~]# yum install rhevm
4. Теперь пришло время настроить rhevm, запустив команду "engine-setup", которая проверит состояние rhevm и любые доступные обновления, делая это в интерактивном режиме и задавая вам вопросы следующего характера:
Вопросы, связанные с устанавливаемым продуктом
Пакеты
Конфигурация сети
Конфигурация базы данных
Конфигурация движка oVirt
Конфигурация PKI
Конфигурация Apache
Конфигурация системы
Предварительный просмотр конфигурации
Подсказка: предлагаемые значения конфигурации по умолчанию указаны в квадратных скобках; если предлагаемое значение является приемлемым для вас (а чаще всего так и бывает), нажмите Enter, чтобы принять это значение.Выполните команду и понеслась!
[root@rhevm ~]# engine-setup
1. Параметры продукта
Первое, о чем инсталлятор спросит вас, это установить и настроить движок на том же хосте. В рамках пробной инсталляции оставьте значение по умолчанию (да). Если вы хотите, чтобы прокси-сервер WebSocket был настроен этом же хосте, оставьте значение по умолчанию (да).
2. Пакеты
Скрипт проверит наличие любых обновлений. На этом этапе не требуется никакого пользовательского ввода.
3. Конфигурация сети
Далее скрипт автоматически настроит iptables. Мы пока не используем DNS, поэтому убедитесь, что имя хоста (как мы и говорили ранее) резолвится, дополнительно проверим /etc/hosts, как мы делали это ранее.
4. Конфигурация базы данных
Базой данных по умолчанию для RHEV3.5 является PostgreSQL. У вас есть возможность настроить его на том же хосте или на внешнем. В статье мы будем использовать локальный вариант и пусть скрипт настроит его автоматически.
5. Конфигурация движка oVirt
В этом разделе укажите пароль администратора и application mode для вашей инсталляции. Мы укажем Both:
6. Конфигурация PKI
RHEVM использует сертификаты для секьюрного подключения к хосту. Здесь указываем organization name для сертификата:
7. Конфигурация Apache
Для веб-интерфейса пользователя RHEVM, необходимо установить и настроить веб-сервер Apache. Инсталлятор дает возможность выполнить автоматическую настройку апач - сервера, ее мы и выберем:
8. Конфигурация системы
Среда RHEV содержит библиотеку ISO - файлов, в которой вы можете хранить множество ISO ОС - то есть это просто набор исо - файлов (образов) нужных операционных систем. Эта ISO библиотека называется также доменом ISO и этот домен является общей сетевой шарой. Эта шара будет находиться на том же хосте RHEVM и вы смонтировать его вручную или позволить скрипту настроить его автоматически.
9. Предварительный просмотр конфигурации
В этом разделе вы увидите все предыдущие настройки и убедитесь, что все в порядке.
Заключение
Это последний этап, который показывает дополнительную информацию о том, как получить доступ к панели администратора и запускает службы для работы продукта:
Подсказка: На этом этапе вы можете получить Warning (предупреждение), если ПО будет не хватать оперативной памяти. Будем честными: для тестовой среды это не очень важно, просто продолжайте работать. Однако на продуктивном контуре надо быть внимательным и прислушиваться к таким предупреждениям.
Чтобы открыть веб-интерфейс пользователя RHEVM откройте URL в броузере:
http://$your-ip/ovirt-engine
Затем выберите Administrator Portal и укажите свои учетные данные пользователя: admin и пароль, который вы ввели во время установки. Нажмите кнопку Login.
Обратите внимание, что вкладка hosts пуста, так как мы еще не добавили ни одного хоста/гипервизора в нашу среду.
Ранее мы уже рассказывали про регулировку громкости в Asterisk. Этот метод рабочий, но весьма статичен. Поэтому в голову пришла интересная мысль.
Представьте, вы совершаете звонок. И, неожиданно, ваш собеседник начинает "кричать" в трубку. Пусть кричит – наши нервы прошли и не такое, но дело в том, что громкость звонка задана жёстко в кастомном диалплане. Поэтому, ощущения от крика буду особенно острыми :)
А теперь, вообразите, что у вас есть возможность сделать собеседника "тише" кнопками телефонного аппарата. А потом, когда он успокоится, сделать снова громче. Интересно? Поехали.
Подготовка
Откроем FreePBX. Открыв модуль сервисных кодов (feature codes), мы обнаружим, что в нем можно только изменить существующие коды, но добавить новые нельзя.
Решение указанной в начале статьи задачи будет базироваться на встроенных функциях Asterisk. То есть мы не будем добавлять кастомный контекст.
Настройка
Открываем файл /etc/asterisk/globals_custom.conf. Этот файл позволяет переписать или добавить глобальные переменные, используемые Asterisk (как стандартные, так и ваши личные).
Если данного файла нет, то его нужно создать. Например, вот так:
touch /etc/asterisk/globals_custom.conf
chown asterisk:asterisk /etc/asterisk/globals_custom.conf
chmod 775 /etc/asterisk/globals_custom.conf
В файл добавляем следующую конструкцию:
DYNAMIC_FEATURES=VUp#VDown#MUp#MDown
Vol=0
Mic=0
Мы задали специальные функции, которые понадобятся нам далее. Сейчас будем закреплять комбинации цифр за кодами. Для этого открываем файл etc/asterisk/features_applicationmap_custom.conf и запишем в него следующее:
VUp => 52*,self,Macro,VolumeUp
VDown => 58*,self,Macro,VolumeDown
MUp => 54*,self,Macro,MicUp
MDown => 56*,self,Macro,MicDown
Мы закрепили за кодами выполнение макроса громкости, который мы напишем далее. Не пугайтесь - "странные" комбинации выбраны по причине того, что их просто запомнить, так как на клавиатуре телефона, это так называемый "крест", наподобие джойстика ;)
Go ahead. Приступаем к самим макросам. Для этого открываем файл /etc/asterisk/extensions_custom.conf и добавляе:
[from-internal-custom]
Set(__DYNAMIC_FEATURES=VUp#VDown#MUp#MDown)
Таким образом, мы подключаем добавленные коды в диалплан Asterisk, который генерирует FreePBX.
Не спешите закрывать файл extensions_custom.conf. В него же добавляем механизм увеличения громкости. То есть, макросы о которых мы писали ранее:
[macro-VolumeUp]
exten => s,1,Set(Vol=$[${Vol}+5])
same => n,Set(VOLUME(TX)=${Vol})
[macro-VolumeDown]
exten => s,1,Set(Vol=$[${Vol}-5])
same => n,Set(VOLUME(TX)=${Vol})
[macro-MUp]
exten => s,1,Set(Mic=$[${Mic}+5])
same => n,Set(VOLUME(RX)=${Mic})
[macro-MDown]
exten => s,1,Set(Mic=$[${Mic}-5])
same => n,Set(VOLUME(RX)=${Mic})
Можно выдохнуть. На этом правки закончены. Как вы могли заметить, почему-то "громкостей" несколько. Все достаточно просто. Это 2 макроса на увеличение и уменьшение громкости канала звука и, соответственно, канала микрофона.
Что нам все эти коды дают (по сравнению с жестко прописанными числами)? В любой момент разговора, если вы плохо (тихо) слышите собеседника, нужно набрать на телефоне 52* и громкость увеличится, так можно делать несколько раз пока уровень громкости собеседника не станет приемлемым. Это работает и наоборот: 58* и собеседник становится "тише".
Удобно, правда? :) Из плюсов - не надо прерывать звонок. Нет жёсткого ограничения громкости. Если разговор затягивается на длительное время, можно выставить комфортную слышимость.
Ну а второй макрос, спросите вы? Представьте: что делать, если собеседник жалуется, что вас тихо слышно? Нет проблем. Набираем 54* и собеседник начинает нас лучше слышать, то есть, мы увеличиваем громкость канала нашего микрофона!
git config
- это мощная команда Git. Вы можете использовать файл конфигурации Git для того, чтобы подстроить Git под себя.
Этот файл находится на уровне проекта, в котором был запущен Git (
/project/.git/config
), или на корневом уровне (
~/.gitconfig
). Если в нем не указаны никакие конфигурации, то это значит, что Git использует настройки по умолчанию.
Из этой статьи вы узнаете о некоторых полезных конфигурациях Git, которые помогут вам оптимизировать ваш процесс разработки. Все советы, которыми я здесь поделюсь, когда-то помогли мне. Существует также множество других вещей, которые вы сможете опробовать уже после того, как прочитаете эту статью.
Советы по конфигурациям Git
Ниже представлены несколько масштабных советов по конфигурациям Git.
1. Выберите для Git редактор по умолчанию
Когда вы пытаетесь сделать коммит в Git, то он по умолчанию открывает редактор
vi
, который выглядит вот так:
Этот редактор может оказаться не таким простым, и если вы хоть чем-то похожи на меня, то будете использовать тот редактор для написания коммитов, который вам больше нравится. В файле
~/.gitconfig
вам нужно добавить следующее:
[core]
editor = code --wait
или вы можете воспользоваться командой оболочки:
git config --global core.editor "code --wait"
Эта конфигурация указывает Git, что для операций по типу коммитов и тегов мы будем использовать свой редактор VSCode.
Что касается других редакторов, вам поможет следующая таблица:
Конфигурация редактора для Git
2. Очистка Git в процессе выборки
Знаете ли вы что делает команда очистки в процессе выборки?
Если кратко, то очистка в процессе выборки – это метод очистки, который, когда вы выполняете команду
git fetch --prune
, удаляет все устаревшие и давно ненужные ссылки в вашем каталоге
.git
.
Автоматизировать этот процесс можно не только с помощью параметра
--prune
, но и путем добавления в
~/.gitconfig
следующих строк:
[fetch]
prune = true
или с помощью следующей команды:
git config --global fetch.prune true
При этом очистка будет производиться каждый раз, когда вы будете выполнять команду
git fetch
.
3. Псевдонимы Git
В файле конфигурации Git вы можете добавить псевдонимы для некоторых длинных команд, которые вы используете регулярно. Например, для коммитов, тайников и т.д.
Предположим, что вы хотите создать псевдоним для добавления пустого коммита. В таком случае вам нужно добавить в файл конфигурации следующее:
[alias]
empty = "git commit --allow-empty"
или ввести в терминале следующую команду:
git config --global alias.empty "git commit --allow-empty"
И вы сможете использовать команду вот таким образом:
git empty "Empty commit"
Кроме того, вы можете добавить псевдонимы для команд, которые используются вне Git. Например, вот так можно создать псевдоним, который удаляет локальные ветки, которые перешли в разряд удаленных:
[alias]
delete-local-merged = "!git fetch && git branch --merged | egrep -v 'master' | xargs git branch -d"
Восклицательный знак «!» указывает на то, что Git должен запустить эту команду как команду оболочки, а не как команду
git *
.
Команду
git fetch
мы используем для псевдонима. После чего мы получаем объединенные ветки, передаем их команде
egrep
в качестве входных данных, фильтруем ветку main и удаляем ветки.
4. Настройка ветки по умолчанию
Когда вы инициализируете репозитрий (
git init
), веткой по умолчанию является ветка
master
. На сегодняшний день многие разработчики предпочитают, чтобы на этом месте была ветка
main
или какая-то другая.
При этом вам не нужно создавать новую ветку с именем
main
, удалять ветку
master
и использовать
main
как ветку по умолчанию. Это слишком долго. В файле конфигурации вы можете записать следующее и при инициализации Git установить, таким образом, ветку по умолчанию.
[init]
defaultBranch = main (или любое другое имя, которое вы хотите)
В таком случае команда
git init
сделает так, что веткой по умолчанию будет ветка
main
.
5. Демонстрация краткого статуса по умолчанию
По умолчанию команда
git status
демонстрирует вам подробно описанные изменения в вашем проекте. А именно вот в таком формате:
On branch [branch name]
Your branch is up to date with ...
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git restore ..." to discard changes in the working directory)
modified: ...
Untracked files:
(use "git add ..." to include in what will be committed)
...
no changes added to commit (use "git add" and/or "git commit -a")
Это довольно полезно, но иногда вам требуется лишь краткий отчет о состоянии репозитория. В этом вам поможет флаг
--short
, который необходимо добавить к команде
git status
. Результат выполнения такой команды будет следующий:
M [file]
?? [file]
«M» означает «modified», то есть «измененный», а «??» - неотслеживаемый. Мы можем сделать еще лучше, установив такой формат вывода как вывод по умолчанию. Для этого необходимо установить следующую конфигурацию:
[status]
short = true
Заключение
В этом списке мы рассмотрели пять способов, как можно оптимизировать процесс разработки за счет настройки стандартной работы Git, и это далеко не полный список.
