Мы — долго запрягаем, быстро ездим, и сильно тормозим.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
www.lissyara.su
|
|
Установка VirtulaBox:
|
Для того, чтобы можно было работать в гостевых системах с USB необходимо установить стандартное (базовое) расширение (и пока единственное): скачиваем Oracle VM VirtualBox Extension Pack, соответствующий нашей версии и устанавливаем его через консоль управления. Например, для текущей версии 4.3.16:
|
Интересно, что при установке через консоль никаких вопросов о согласии с лицензией не поступает. :)
После этого необходимо пользователя, под которым необходима работа расширения, добавить в группу vboxusers:
|
И после этого выйти/войти этим пользователем из системы, если на момент добавления в эту группу профиль был загружен.
б) Сжатие и конвертирование виртуальных дисков (VDI)
Перед сжатием желательно освободить побольше места на виртуальном диске гостевой системы и заполнить свободноме место нулями: если гостевая ОС - Linux, то для этого существует программа zerofree (у неё ограничение ext2/ext3 по манам: на ext4 не проверял); если гостевая ОС - FreeBSD, то можно воспользоваться программой zeroer.
В принципе лучшим, наверное, вариантом, будет
|
По окончании "зануления" (отвалится с ошибкой, т.е. всё свободное место "забито" нулями - удалить файл /tmp/ZEROZERO. Возможен "казус", если работает дедубликация блоков данных на файловой системе или уплотнение пустых блоков.
После "зануления" всего свободного пространства на диске гостевую систему выключают (желательно ещё создать "снимок") и сжимают VDI-файл возможностями VirtualBox:
|
В моём случае из более ем 13 Гб осталось чуть более 8 Гб, что не может не радовать. А если ВМ экспортировать в OVA формате и потом восстановить - ещё очень сильно ужмётся. :)
Иногда (например, при импорте конфигурации из образа в OVA-формате) виртуальный "жёсткий диск" будет в формате VMDK и такой образ утилита VBoxManage откажется сжимать. Поэтому предварительно (ну или вообще, при любой необходимости) VMDK надо сконвертировать в VDI. Для этого так же надо воспользоваться утилитой VBoxManage:
|
Общий вид команды (если понадобится конвертировать другие форматы):
|
Для целей конвертации можно воспользоваться и qemu:
|
Общий вид команды (если понадобится конвертировать другие форматы):
|
Так же, при необходимости можно воспользоваться VMWare vCenter Converter. В добавок к возможности преобразования виртуальных машин из одного формата в другой, Converter от VmWare может клонировать систему реальной физической машины в виртуальный образ.
P.S. Для KVM: драйвера для гостевой Венды находятся здесь.
в) Управление VirtualBox с консоли
Команды для управления виртуальной машины Virtualbox с помощью утилиты vboxmanage (или VBoxManage - это два симлинка на VBox, но напрямую вызов VBox не работает).
Создание виртуальных машины и диска к ней:
|
Основные настройки сделаны. Все остальные (звук и пр.) можно так же произвести через VBoxManage.
Просмотр детальной информации об определенной виртуальной машине:
|
Список из всех существующих виртуальных машин (имена и UUID):
|
Запуск виртуальных машин:
|
Ключ --type=headless необходим, если управляем ВМ в консоли удалённо: гостевая ОС будет запущена, без отображения графического интерфейса.
Останов (через ACPI и "жёстко") работы виртуальной машины:
|
Останов с сохранение состояния:
|
Весь список команд доступен через vboxmanage без опций.
Дополнительная информация: ссылка 1, ссылка 2.
1 - проброс устройств узла
В общем случае это проброс PCI-устройства по номеру на шине:
|
Так же бывает необходимо пробросить жёсткий диск узла или его раздел "как есть":
|
Вместо указания диска можно указать только необходимый раздел /dev/sdf2.
Но для того, чтобы присоединять диски и разделы, пользователь, из под которого запущен VirtualBox, должен иметь на это права. Есть два варианта:
1) запускать VirtualBox из-под root-а;
2) добавить пользователя в группу disk:
|
В Fedora "фокус" с группой disk работает, но в других дистрибутивах такого может не быть.
г) Включение локальной консоли ВМ с консоли
Узнаем список виртуальных машин:
|
Выключаем необходимую нам ВМ любым способом и запускаем в headless режиме:
|
При этом, порт консоли будет 3390.
|
И теперь подключаемся к ней:
|
где XX.XX.XX.XX адрес сервера, где запущен VirtualBox.
После завершения работ, запустите виртуальную машину в нормальном режиме.
д) Возможные проблемы и решения
ПРОБЛЕМА 1 - 3D для Gnome 3 (shell)
Описание: после установки Fedora в виртуальную машину в VirtualBox при загрузке Gnome-shell отказывается работать как надо и работает в fallback-режиме. Даже после настройки виртуальной машины, включения 3D, установки видео-памяти в 128 Мб, установки гостевого софта от vbox, glxgears и glxinfo показывают наличие 3D, но Gnome-shell отказывается этот 3D признавать.
Решение: проблема из-за SELinux. Для решения запускаем от root’а в этой гостевой машине:
|
После перезагрузки всё будет работать. Оригинал взят у elemc.
ПРОБЛЕМА 2 - запуск после смены ядра Linux
После смены ядра (чаще всего при обновлении системы) необходимо под данное ядро собрать модуль VirtualBox-а.
В версии 5.1 и новее пересборка производится командой:
|
В версиях с 5.0 до 5.1 такие команды:
|
Но в версии 5.0.10 данная команда не работала.
До 5-й версии модуль ядра перекомпилировался скриптом vboxdrv:
|
Т.е. иногда варианты пересборки меняются и, возможно, в будущих версиях будет снова что-то изменено.
2. Виртуализация KVM
а) Установка
Что-то не захотел ставиться Parallel Desktop 4 на свеже установленную Russian Fedora Remix 13 x86_64.
Поэтому решил разобраться с имеющимися средствами виртуализации в Федоре (поддерживаемые ОС и уровни этой самой поддержки).
Для начала необходимо их установить:
|
Установили сразу всё, входящее в группу "Виртуализация". А "всё" - это KVM (QEMU) со всеми сопутствующими библиотеками и утилитами.
Но в Fedora 20 русского именования группы уже нет. Да и лучше ставить только то, что реально необходимо. Поэтому можно воспользоваться таким списком установочных пакетов:
|
Чтобы не перегружаться, а сразу воспользоваться всеми прелестями виртуализации, необходимо подгрузить соответствующие модули ядра:
|
для систем на процессоре Intel и AMD соответственно. Это связано с разными технологиями виртуализации на процессорах этих фирм (для проверки это существуют свои флаги: 'vmx' - Intel, 'svm' - AMD).
После этого можно проверить, подгрузились ли они:
|
Должны отобразиться два модуля, запущенные чуть ранее.
Если у нас каталог с ВМ будет размещён не в /var/lib/libvirt/images (или он будет дополнительным к основному), то для него надо установить правильный контекст SELinux:
|
Дополнительная информация по виртаулизации доступна на сайте Fedora Project. И немного полезного о настройке.
б) Отмена запроса пароля и работа от пользователя
Для того, чтобы KVM (например, при запуске virt-manager) при запуске не требовал пароль:
|
Возможно понадобится создать файл /etc/polkit-1/localauthority/50-local.d/50-org.libvirt-group-access.pkla следующего содержания:
|
После чего надо данному файлу выставить права, идентичные правам соседних файлов.
Чтобы ВМ работали у нас от непривилегированного пользователя, в файле /etc/libvirt/qemu.conf скорректируем следующие параметры:
|
Поскольку у нас будут использоваться tun-устройства, нужно выставить capability CAP_NET_ADMIN, сделать это можно как для отдельного исполняемого файла, так и для пользователя в целом, или настроить чтобы libvirt не сбрасывал нужные права для qemu/kvm.
Выставляем для отдельного файла:
|
Или выставляем для пользователя в целом в файле /etc/security/capability.conf:
|
Или выставляем соответствующую настройку в /etc/libvirt/qemu.conf:
|
Добавим пользователя в группу kvm (в libvirt мы его уже добавили):
|
в) Настройка сети: мост (bridge) и объединение (bond)
Базовое необходимое действие по настройке сети для доступа гостевых систем к сети - настройка моста (bridge). При установке пакетов KVM в системе создался мост virbr0, но он предназначен для "внутренней сети" для гостевых систем. Нам же нужен мост, который будет обеспечивать доступ к внешней (относительно хоста) сети. Учитывая, что для серверных применений важно обеспечить резервирование сетевого подключения, объединим (bind) имеющиеся в сервере (у меня так) два интерфейса в один: bind0.
Настройку можно производить и Network Manager-ом, устанавливаемым в Fedora "по умолчанию", но воспользуемся "старым и добрым" network.service.
Поэтому сначала остановим и отключим (удалим, если надо) Network Manager:
|
Так же я для собственного удобства отключаю переименование сетевых интерфейсов udev-ом. Получаем "старые" имена сетевых интерфейсов: ethX.
Теперь скорректируем файл конфигурации физического интерфейса и создадим для "моста". Содержание файлов интерфейсов:
1) физического eth0 (файл /etc/sysconfig/network-scripts/ifcfg-eth0):
|
2) физического eth1 (файл /etc/sysconfig/network-scripts/ifcfg-eth1):
|
3) "объединения" bond0 (файл /etc/sysconfig/network-scripts/ifcfg-bond0):
|
Данная конфигурация "объединения" назнает интерфейс eth0 активным, а eth1 будет работать в режиме "горячей замены".
4) "моста" bridge0 (файл /etc/sysconfig/network-scripts/ifcfg-bridge0):
|
И последнее: для нормальной работы сети надо ещё указать шлюз "по умолчанию". В ifcfg-bridge0 мы прописали GATEWAY, но в случае проблем (возможно этот параметр используется только Metwork Manager - не выяснял) можно указать вручную:
|
Тоже самое с DNS: при необходимости можно (или даже сразу нужно это сделать) вписать адреса серверов в /etc/resolv.conf.
По неясным для меня причинам после данных действий не заработала сеть. Пришлось воспользоваться утилитой brctl, чтобы это понять:
$ brctl show bridge name bridge id STP enabled interfaces bridge0 8000.000000000000 no virbr0 8000.525400c22026 yes virbr0-nic |
Т.е. оказалось, что физ.интерфейс bond0 не в составе моста, хотя в его файле конфигурации прописано BRIDGE="bridge0".
Добавим в мост наш интерфейс:
|
Запускаем сетевой сервис:
|
Если всё в порядке - сервис сразу запустится. Иногда возникают проблемы из-за того, что параметры интерфейсов в файлах /etc/sysconfig/network-scripts/ifcfg-* были NetworkManager-ом списаны некорректно (для network.service).
Failed to start LSB: Bring up/down networking |
Проверяем "пингом" работу интерфейса.
Состояние "бондинга" проверяется через /proc:
|
Настройка bonding в Linux
Linux Bonding
libvirt: Network interfaces
libvirt: Network management architecture
Setting guest network
Networking
Bridge
Network Bridge
Виртуализация с KVM на Fedora 17 Server
Настройка KVM в CentOS 6
Работа с виртуальными машинами KVM. Клонирование виртуальных машин
г) Создание виртуальной машины
Виртуальные машины (ВМ) в терминах KVM называются доменами. Поэтому в дальнейшем этот термин будет использоваться именно в таком значении.
д) Проброс устройств в гостевую систему
№1 - "Классический" проброс
При необходимости пробросить физическое устройство в гостевую систему (мне понадобилось пробросить Fibre Channel карту в гостевую с FreeNAS) необходимо воспользоваться технологией IOMMU (Input/Output Memory Management Unit). Оно же AMD-Vi в случае AMD и VT-d в случае Intel.
К сожалению стоит признать: хотя IOMMU внедряется в 2009 года (а в Sun SPARC и DEC Alpha она была "со староглиняных времён"), но на многих десктопных системных платах эта технология либо не работает, либо работает некорректно. :(
Но мы отталкиваемся от того, что у нас всё таки всё нормально и материнка и процессор поддерживают IOMMU.
Для начала необходимо включить поддержку IOMMU в BIOS/UEFI платы.
Затем (или перед тем) дополним в загрузчике параметры ядра следующими новыми:
1) включение поддердки IOMMU:
|
Я воспользовался вторым вариантом.
2) переключение устройства с собственного драйвера на драйвер-заглушку pci-stub:
|
Числа в данном параметре берутся из вывода команды
|
В каталоге /etc/modprobe.d создаём файл kvm_iommu_map_guest.conf следующего содержания:
|
и перегружаем систему.
После загрузки проверяем, а доступен ли IOMMU для Linux (здесь и далее убираю метки времени в начале строк из dmesg):
|
Для переблокировки пробрасываемого устройства вот такой скрипт (если проброс будет нужен постоянно, то этот скрип надо в автозапуск):
|
Подробности
1) Chapter 15. PCI passthrough
2) How to assign devices with VT-d in KVM
3) Dual Boot two Linux versions, GRUB_CMDLINE_LINUX?
4) 890FXA-GD70 IOMMU Causes Freezing
5) KVM проброс PCI
6) Первый тестовый проброс устройств на ASUS M5A97PRO
7) Статьи на umVirt.Ru
8) Buggy AMD-Vi firmware and patches?
№2 - Проброс с помощью технологии VFIO
Загрузи модули ядра vfio:
|
Подробности:
1) Проброс видеокарты в гостевую ОС из гипервизора KVM с помощью технологии VFIO;
2) Проброс видеокарты;
3) Pci passthrough.
№3 - Проброс и управление видеокартой
При необходимости управлять видеокартой (включать/выключать питание и пр.) необходимо проверить, включён ли данный функционал в ядре (если нет - придётся пересобирать):
|
Дополнительно:
1) Проброс видеокарты в KVM из под ubuntu
2) Проброс видеокарты в виртуальную машину
3) Looking Glass (A KVMFR (KVM Frame Relay) Implementation)
№4 - Ошибки и решения
а) проблемы включения IOMMU на платформе AMD
Если при проверке включения IOMMU в выводе присутствуют сообщения вида:
|
необходимо в параметры ядра добавить
|
Т.е. для платформы AMD надо чуть больше параметров для конфигурирования IOMMU.
б) журнал запуска и работы домена (ВМ):
|
Если гостевая была удалена, то журнал её работы - остаётся.
е) Конфигурирование
Для конфигурирования надо, прежде всего, подключиться к управляемому хосту. Подключение к libvirtd:
|
Чтобы каждый раз не вводить хост подключения "по умолчанию", его можно указать в переменной окружения, например, для bash:
|
И после этого команда подключения упрощается (но, хотя и описан такой способ, у меня не сработал):
|
Для редактирования конфигурации "вручную", исправив соответствующий XML-файл не надо применять прямое редактирование, т.к. система не примет исправленный файл.
Правильно использовать virsh:
|
XML-файл откроется в vi и по окончании редактирования будет перечитан системой.
QXL: WDDM драйвер видео (для Win8)
VirtIO для Windows
Installing Virtio Drivers in Windows XP Setup
ё) Настройка гостевой, требующей EFI
OVMF
Загрузка виртуальных linux-машин с диска без разделов
Как загрузить Debian в KVM с OVMF?
ж) Управление
Просмотр списка зарегистрированных ВМ (доменов):
|
Зпуск и останов ВМ (домена) "Windows_7":
|
Управление виртуализацией на основе libvirt
Virsh — управление виртуальными машинами KVM
Глава 15. Управление виртуальными машинами с помощью virsh
Управление виртуальными машинами с помощью virsh
Domain XML format
з) Протокол SPICE (Simple Protocol for Independent Computing Environments)
SPICE (home)
VirtIO for Windows
SPICE guest tools
Windows Virtio Drivers
SPICE – протокол доставки виртуального рабочего стола
Специи для виртуалки
Тонкая настройка виртуальной машины с поддержкой SPICE
и) РАЗНОЕ
Конфигурирование и управление можно производить без использования libvirt, обращаясь напрямую к QEMU. Например, таким скриптом:
|
Подготовка хост-машины
Web Virtual Manager
Руководство по виртуализации (Справочное руководство по виртуализации в Fedora)
Установка виртуальных машин KVM под ubuntu server
Установка и настройка KVM под управлением CentOS 6
Example Sharing Host files with the Guest
Создание новой виртуальной машины за одну минуту или «vagrant up!»
oVirt
oVirt - Live Snapshots
Features/Virt Live Snapshots
Виртуализация с KVM на Fedora 17 Server
Виртуальная видеокарта QXL на реальном железе
libguestfs - tools for accessing and modifying virtual machine disk images
File exchange between host and VM
Documentation/9psetup
VM Snapshot UI with virt-manager
О снапшотах на форуме
О снапшотах на другом форуме
Запуск Windows под Linux KVM
Enabling QEMU Guest Agent anddddd FSTRIM (AGAIN), его можно указать в переменной окружения, например, для bash:
|
И после этого команда подключения упрощается (но, хотя и описан такой способ, у меня не сработал):
|
Для редактирования конфигурации
3. Контейнерная виртуализация
а) systemd-nspawn
В случае Scientific Linux / CentOS 7 в системе уже есть поддержка, а для Fedora необходимо доустановить пакет systemd-container:
|
Утилиты управления:
|
Особенности: контейнеры должны быть размещены на файловой системе BTRFS, т.е. "по умолчанию" эта ФС должна быть смонтирована (если сама ОС установлена не на BTRFS) в каталог /var/lib/machines/.
Примеры использования
Товарищ lemenkov так устанавливал CouchDB:
|
Пример размещён здесь.
Дополнительная информация
Systemd и контейнеры: знакомство с systemd-nspawn
systemd-nspawn (ArchLinux)
б) Docker
1 - Установка на CentOS 7/8
Возможно понадобится доустановить Python 3 (например, для docker-compose). Тогда надо добавить репозиторий IUS (Inline with Upstream Stable) Community:
|
Для практической работы лучше использовать последнюю версию из официального источника. Существуют два вариант: Community Edition (CE) - бесплатный, Enterprise Edition (EE) - платный. Ориентируемся на CE:
|
ВАЖНО!!! Вероятно из-за того, что на момент написания этой инструкции для CentOS 8 не был создан отдельный репозиторий и используются пакеты для CetnOS 7 - последние версии docker-ce не устанавливаются на 8 версию ОС: требуется container.io более новый, чем доступен для CentOS 8 (вероятно сделаны ограничения в самой ОС разработчиками). Поэтому для установка используется параметр --nobest.
При установке будет создана группа docker, члены которой без sudo смогут работать к Docker-ом. Поэтому добавим в эту группу пользователя, под которым будем работать с контейнерами:
|
Запускаем:
|
Наслаждаемся результатом.
При необходимости работать сервису docker через контейнер создадим файл /etc/systemd/system/docker.service.d/http-proxy.conf с такими строками:
|
Естественно, указав вместо proxy_URL:port адрес и порт действующего proxy-сервера.
2 - Управление контейнерами
2.1 - Утилитой docker
Скачивание образа контейнера:
|
Здесь tomcat - название контейнера; latest - тег (своего рода - вариант образа). Если не указывать тег, то по умолчанию ищется контейнер с тегом latest.
Запуск контейнера из образа tomcat в фоне (-d) с пробросом из контейнера на узловой адрес порта 8080 (-p, проброс всех портов: -P), c именем контейнера (--name):
|
При запуске Докер выдал длинное 16-ричное 32-байтное число, которое является уникальным именем контейнера. Но при запуске мы указали ещё более удобное человекочитаемое имя: tomcattest. Так же используется сокращённое имя из 6 первых байт выданного 32-байтного числа - 73d255f74b5e.
Подключение к запущенному контейнеру (все три варианты имени равнозначны):
|
Просмотр образов, установленных в системе:
|
Просмотр контейнеров в системе:
|
Останов и запуск контейнера:
|
Удаление контейнера:
|
2.2 - Утилитой docker-compose
Утилита docker-compose позволяет более гибко управлять контейнерами (используя DockerAPI).
Установка docker-compose:
|
Параметры, которые для docker надо было указывать в командной строке, для docker-compose указываются в конфигурационном файле docker-compose.yaml (или yml).
Пример файла docker-compose.yaml:
|
Запуск созданной конфигурации производится в там же каталоге, где расположен файл docker-compose.yaml (т.е. по умолчанию утилита ищет данный файл в каталоге запуска). Либо прямым указанием соответствующего файла docker-compose.yaml:
|
В docker-compose.yaml указаны параметры сборки образов контейнеров, но по умолчанию сборка не производится. Для сборки необходимо для запуска контейнера добавить сборки:
|
Все иные действия с работающими контейнерами производятся утилитой docker-compose в каталоге с соответствующим docker-compose.yaml или указанием необходимого конфигурационного файла и только с теми контейнерами, которые описаны в этом файле.
Просмотр информации о запущенных контейнерах конфигурации:
|
Остановка контейнеров конфигурации:
|
3 - Сборка и публикация контейнеров
Сборка образа производится командой
|
Система автоматически ищет файл Dockerfile - описание процесса сборки. Например:
|
Следует учесть, что при сборке на каждую операцию система создают промежуточный контейнер, которые удаляются, но при сбоях могут остаться в системе. Поэтому надо просматривать периодически списки контейнеров в системе и удалять ненужные.
После сборки в системе появится образ с именем project/common и тегом tomcat. Теперь его можно отправить в репозиторий:
|
Всё, теперь образ собран и опубликован в репозитории.
4 - Установка локального репозитория
Исходя из документации:
|
Есть множество иных образов систем web-управления, размещённых в Docker Hub. Например, konradkleine/docker-registry-frontend, а так же Portus, panamax.io, portainer.io и множество других.
5 - Мониторинг системой Zabbix
Мониторинг системы Docker в общем случае настраивается достаточно легко.
Устанавливаем NetCat:
|
Добавляем пользователя zabbix в группу docker:
|
Создаём файл конфигурации /etc/zabbix/zabbix_agentd.d/docker.conf для агента Zabbix:
|
Создадим файл скрипта /etc/zabbix/scripts/docker_container_status.sh:
|
И установим на него права права:
|
Настраиваем SELinux:
|
Создаём файл zabbix-agent_docker.te:
|
Возможно что-то можно упростить (по указаниям в файле) - проверю при настройке на следующем сервере.
Обрабатываем созданный файл:
|
Другой вариант: если у нас уже были неудачные попытки - обрабатываем аудит:
|
В Zabbix создаём шаблон, куда добавляем такие элементы данных:
1) версия docker:
Имя: Docker service version
Тип: Zabbix agent
Ключ: docker.service.version
Тип информации: Текст
2) статус сервиса docker:
Имя: Docker service status
Тип: Zabbix agent
Ключ: docker.service.status
Тип информации: Текст
3) проверка контейнера с именем <НАИМЕНОВАНИЕ>:
Имя: Check container <НАИМЕНОВАНИЕ>
Тип: Zabbix agent
Ключ: docker.container.status[<НАИМЕНОВАНИЕ_КОНТЕЙНЕРА>]
Тип информации: Текст
<НАИМЕНОВАНИЕ_КОНТЕЙНЕРА> - имя контейнера, назначенное при запуске. Можно по номеру, но номера для контейнера меняются.
Соответственно, описываем все необходимые контейнеры. Можно сделать "обнаружение", но тогда будут проблемы с временными, тестовыми и иными контейнерами, не являющиеся необходимыми для мониторинга.
Перегружаем агента для принятия изменений:
|
Предлагаю разделить шаблон на два: в первом будут базовые параметры, а во втором - мониторинг всех необходимых контейнеров. Ко второму же будет подключён первый. Добавлять к контролируемому серверу следует только второй шаблон: первый подключится, как зависимость.
Если всё сделано верно, то добавив наш шаблон в узел контролируемого сервера мы получил полноценный мониторинг.
6 - Проблемы и решения
№1 Просмотр и удаление старых и неиспользуемых контейнеров
Просмотр:
|
Удаление:
|
Для подкоманды prune можно использовать опции -a -f, чтобы вся зачистка происходила сразу, без интерактивных запросов. И вписать команды очистки в /etc/crontab:
|
Теперь в 2 часа каждый понедельник система будет зачищена от неиспользуемых объектов Docker-а.
№2 Проблема с отображением названий в Zabbix
При переносе Zabbix с VDS на выделенный сервер столкнулся с проблемой что после свежей установки Zabbix на графиках перестали отображаться названия графиков и описание значений.
Долго ломал голову что это может быть пока не получил ответ от одного из постояльцев форума zabbix.com, который указал на раздел документации при установке zabbix-server:
Пакет zabbix-frontend-php в процессе установки настроит шрифт, который используется на генерируемых изображениях. Если вы обновили пакет из любого другого репозитория и на графиках или картах сети отсутствует текст, пожалуйста проверьте, установлен ли пакет ttf-dejavu-core и попытайтесь выполнить команду dpkg-reconfigure zabbix-frontend-php.
Сложно сказать наверняка что это было, но починилось все после того как выполнил:
|
После этого обратился к своему zabbix-server по IP и выполнил повторную установку, подключил к базе – все заработало и графики стали рисоваться как положено.
№3 '???' вместо кириллицы при работе через SSH
При подключении консолью к серверам вместо в mc вместо кириллицы могут отображаться знаки ????.
Проблема решается достаточно просто (Debian/Ubuntu):
|
После этого выбираю в настройках RU_ru.UTF-8.
Далее иду в настройки ssh клиента и комментирую строку:
|
После этого необходимо переподключиться к серверу.
7 - Дополнительная информация
Docker, Inc is Dead
Docker (base command)
Шпаргалка с командами Docker
Пять Docker-утилит, о которых вам стоит узнать
Zabbix + мониторинг нагрузки на диски
Инструменты управления контейнерами
Rocket (rkt)
Как я год работал на CoreOS
Полная автоматизация «development» среды с помощью docker-compose
Настройка сети
[url=http://onreader.mdl.ru/LearningDockerNetworking/content/Ch02.htmlПостроение сети Docker взгляд вовнутрь[/url]
[url=https://habr.com/post/333874/Сети Docker изнутри: как Docker использует iptables и интерфейсы Linux[/url]
[url=https://github.com/moby/moby/issues/9889DOCKER_OPTS do not work in config file /etc/default/docker[/url]
[url=https://stackoverflow.com/questions/26166550/set-docker-opts-in-centosSet Docker_Opts in centos[/url]
[url=https://docs.docker.com/engine/reference/commandline/network_create/#examplesdocker network create[/url]
[url=[/url]
Смена сетевых параметров "моста" docker0 (172.16.73.128 / 255.255.255.128)
|
Можно изменить настройки существующего docker bridge через /etc/docker/daemon.json. Например так:
|
|
|
Можно так же добавлением параметра строки запуска, например, в файл юнита /etc/systemd/system/multi-user.target.wants/docker.service для systemd (скопировав его из /usr/lib/systemd/system/docker.service, чтобы при обновлении systemd он не перезаписался):
dockerd --bip=172.16.73.129/25
При смене сети может потребоваться удаление файла (или временное переименование, чтобы можно было 'откатиться') /var/lib/docker/network/files/local-kv.db
|
|
ttys, 2012-09-07 в 23:17:25
размещено: 2011-09-19,
последнее обновление: 2012-08-10,
так скоро придётся поправить с FreeBSD 9 на 10 ;))
Fomalhaut, 2012-09-10 в 22:54:03
Ты прав. :) Никак не соберусь \"с силами\" :D
2014-07-27, lissyara
gmirror
Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9
Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
вверх
|
Этот информационный блок появился по той простой причине,
что многие считают нормальным, брать чужую информацию не уведомляя автора
(что не так страшно), и не оставляя линк на оригинал и автора — что более существенно.
Я не против распространения информации — только за. Только условие простое — извольте
подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой,
незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
Если соизволите поставить автора в известность — то вообще почёт вам и уважение.
© lissyara 2006-10-24 08:47 MSK
Комментарии пользователей [2 шт.]