Ceph: Разработка и реализация масштабируемых систем хранения
Copyright © 2019 Packt Publishing
![]() |
Данный документ предоставляется по лицензии Creative Commons Attribution 3.0 License, за исключением разделов со специальными оговорками. |
Первая редакция на английском языке: Январь 2019
Ссылка на продукт: 1290119
Все права защищены. Никакая часть этой книги не может быть воспроизведена, сохранена в поисковой системе или передана в любой форме или любыми средствами без предварительного письменного разрешения издателя, за исключением случаев кратких цитат, встроенных в критические статьи и обзоры.
При подготовке этой книги были предприняты все усилия чтобы гарантировать точность представленной информации. Тем не менее, информация, содержащаяся в этой книге, продаётся без гарантии в явном или неявном виде. Ни авторы, ни Packt Publishing, ни их дилеры и дистрибьюторы не будут нести ответственность за любые убытки, вызванные или предположительно вызванные прямо или косвенно этой книгой.
Packt Publishing пыталась предоставить информацию о товарных знаках обо всех компаниях и продуктов, упомянутых в данной книге для надлежащего использования капиталов. Тем не менее, Packt Publishing не может гарантировать точность этой информации.
Опубликовано Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK
ISBN 978-1-78829-541-3
2019-02-09
- Авторы
- Мишель Хаккет
- Викхайят Умрао
- Каран Сингх
- Ник Фиск
- Энтони Д'Атри
- Вайбхав Бхембре
Мишель Хаккет является экспертом в системах хранения и SAN в отношении поддержки пользователей. Он работал с Ceph и относящимся к системам хранения продуктам более 12 лет. Мишель в настоящее время работает в Red Hat, базирующейся в Массачусетсе, в которой он является главным инженером сопровождения программного обеспечения в отношении Red Hat Ceph и техническим руководителем продукта в отношении глобальной команды Ceph.
Викхайят Умрао работал в области технологии программно- определяемых систем хранения, причём в области специализированной экспертизы единообразной системы хранения Ceph. Он работает в настоящее время с Ceph более 3 лет и на своей текущей позиции в Red Рфе он сосредоточен на поддержке и разработке Ceph в решении проблем пользователей системы хранения Red Hat Ceph и восходящих отчётов о проблемах.
Каран Сингх является сертифицированным профессионалом в таких технологиях как OpenStack, NetApp и Oracle Solaris. В настоящее время он работает в должности Системного специалиста систем хранения и облачной платформы в CSC - IT Center for Science Ltd, сосредотачивая всех своих инженеров на предоставлении облачных решений IaaS на основе OpenStack и Ceph, а также построения экономичных систем хранения с многими пета-байтами при помощи Ceph.
Ник Фиск является ИТ специалистом с мощной историей в области корпоративных систем хранения. На протяжении своей карьеры он работал в разнообразных ролях и ведал различными технологиями. На протяжении определённого числа лет он разработал различные кластеры. Он выделял своё время сообществу Ceph, помогая всем остальным и улучшая определённые области Ceph.
Энтони Д'Атри имеет карьеру в области системного администрирования начиная с ноутбуков, заканчивая векторными суперкомпьютерами. Он привнёс свою страсть управления флотом и компонентами серверов для реализации целостного, но при этом детализированного подхода к разработке и выполнению операций. Энтони три года работал в Cisco с применением Ceph в качестве серверной основы масштаба петабайт для объектов и блочных устройств со многими облачными решениями OpenStack.
Вайбхав Бхембре является системным программистом, в настоящее время работающим в качестве ведущего технического специалиста в области продуктов облачного хранения в DigitalOcen. Начиная с помощи в масштабировании динамически создаваемых во времени компаниями отправлений, превышающим миллионы пользователей, вплоть до проектирования вычислений и систем хранения облачного масштаба, Вайбхав имеет годы практики написания программного обеспечения на всех уровнях рассматриваемого стека.
- Предисловие
- Глава 1 {CC2e~1}. Ceph: введение и за его пределами
- Глава 2 {CC2e-2}. Работа с блочными устройствами Ceph
- Введение
- Настройка клиента Ceph
- Создание блочного устройства Ceph
- Отображение блочного устройства Ceph
- Изменение размеров RBD Ceph
- Работа со снимками RBD
- Работа с клонами RBD
- Восстановление репликации после сбоя с применением зеркалирования RBD
- Настройка пулов для зеркалирования RBD с помощью однонаправленной репликации
- Настройка зеркалирования образа
- Настройка двусторонней репликации
- Восстановим после сбоя!
- Глава 3 {CC2e-3}. Работа с Ceph и OpenStack
- Глава 4 {CC2e-4}. Работа с хранилищем объектов Ceph
- Введение
- Понимание хранения объектов Ceph
- Стандартные наладка, установка и настройка шлюза RADOS
- Создание пользователя radosgw
- Доступ к хранилищу объектов Ceph с применением S3 API
- Доступ к хранилищу объектов Ceph с применением Swift API
- Интеграция шлюза RADOS с OpenStack Keystone
- Интеграция RADOS с подключаемым модулем Hadoop S3A
- Глава 5 {CC2e-5}. Работа с объектным хранилищем Ceph множества сайтов v2
- Введение
- Функциональные изменения настройки федерализации в сравнении с Hammer
- Требования RGW со множеством сайтов v2
- Установка среды Ceph RGW со множеством сайтов v2
- Настройка Ceph RGW со множеством сайтов v2
- Тестирование синхронизации пользователя, сегмента и объекта между мастером и подчинёнными сайтами
- Глава 6 {CC2e-6}. Работа с файловой системой Ceph
- Глава 7 {CC2e-8}. Работа в кластере Ceph и управление им
- Введение
- Понимание управления службами Ceph
- Координация файла настроек кластера
- Выполнение Ceph с применением systemd
- Сопоставление вертикального и горизонтального масштабирования
- Вертикальное масштабирование вашего кластера Ceph
- Горизонтальное масштабирование вашего кластера Ceph
- Уменьшение размера вашего кластера Ceph
- Замена отказавшего диска в вашем кластере Ceph
- Обновление вашего кластера Ceph
- Сопровождение вашего кластера Ceph
- Глава 8 {CC2e-9}. Под капотом Ceph
- Введение
- Масштабируемость и высокая доступность Ceph
- Понимание механизма CRUSH
- Карта CRUSH изнутри
- Регулировки CRUSH
- Карта кластера Ceph
- Мониторы высокой доступности
- Аутентификация и авторизация Ceph
- Путь ввода/ вывода от клиента Ceph к кластеру Ceph
- Группы размещения Ceph
- Состояние групп размещения
- Создание пулов Ceph на специфических OSD
- Глава 9 {CC2e-11}. Менеджер виртуального хранения Ceph
- Глава 10 {CC2e-12}. Ещё о Ceph
- Введение
- Базовый уровень производительности дисков
- Базовый уровень производительности сетевой среды
- Показатели Ceph RADOS
- RADOS load-gen
- Эталонное тестирование блочного устройства Ceph
- Эталонное тестирование Ceph RBD с применением FIO
- Сокет администратора Ceph
- Применение команды ceph tell
- Ceph REST API
- Профилирование памяти Ceph
- Инструментарий ceph-objectstore
- Применение ceph-medic
- Развёртывание экспериментального BlueStore Ceph
- Глава 11 {MC-2}. Развёртывание Ceph
- Глава 12 {MC-3}. BlueStore
- Глава 13 {MC-4}. Удаляющее кодирование для лучшей эффективности хранения
- Глава 14 {MC-5}. Разработка при помощи librados
- Глава 15 {MC-6}. Распределённые вычисления при помощи классов RADOS Ceph
- Глава 16 {MC-8}. Множество уровней в Ceph
- Глава 17 {MC-10}. Поиск неисправностей
- Глава 18 {MC-11}. Восстановление после сбоев
- Что из себя представляет катастрофа?
- Как избежать потери данных
- Что может повлечь вывод из строя или утрату данных?
- Зеркалирование RBD
- Восстановление RBD
- Утраченные объекты и неактивные PG
- Восстановление при полном отказе монитора
- Применение инструмента хранения объекта Ceph
- Внесение утверждений
- Выводы
- Глава 19 {LC2e-6}. Работа и сопровождение
- Глава 20 {LC2e-7}. Мониторинг Ceph
- Глава 21 {LC2e-11}. Настройка производительности и надёжности
- Указатель
Данный Путь обучения {Прим. пер.: Learning Path - новая серия книг издательства Packt Publishing} ознакомит вас целиком с основами Ceph для более глубокого понимания его расширенных возможностей. Вы приобретёте навыки планирования, развёртывания и управления кластером Ceph. После некоторого знакомства с архитектурой Ceph и её центральными проектами вы сможете настроить кластер Ceph и обучитесь отслеживать его состояние, улучшать производительность и устранять любые проблемы.
Следуя за пошаговым подходом данного Пути обучения вы изучите как Ceph интегрируется с OpenStack, Glance, Manila, Swift и Cinder. При помощи знаний федеративной архитектуры и CephFS вы примените Calamari и VSM для отслеживания самой среды Ceph. В последующих главах вы изучите основные ключевые области Ceph, включая BlueStore, удаляющее кодирование и многоуровневое кэширование. Более конкретно, вы узнаете что они способны сделать для вашей системы хранения. В заключительных главах вы будете разрабатывать приложения, которые применяют Librados и распределённые вычисления с классами совместно используемых объектов и рассмотрите как можно оптимизировать Ceph и его инфраструктуру сопровождения. К концу данного учебного курса вы получите практические знания по работе с Ceph в промышленной среде.
{Прим. пер.:
Вышедшая в январе 2015 в издательстве Packt Publishing первая - совсем первая! - полная книга Карана Сингха Изучаем Ceph - далее ссылаемся на неё как LC (Learning Ceph) - явилась очень своевременным и полезным руководством и её перевод был достаточно интересны.
Эту книгу прекрасно добавила в феврале 2016 следующая книга того же автора в этом же издательстве Книга рецептов Ceph - далее ссылаемся на неё как СC (Ceph Cookbook).
Позднее большое внимание было уделено вопросам Ceph в выпущенной Packt Publishing в мае 2016 книге Васима Ахмеда, Proxmox. Полное руководство. 2е изд. - далее ссылаемся на неё как MP2e (Mastering Proxmox, 2ed).
Вслед за ними в этом же издательстве в мае 2017 увидела свет книга Ника Фиска Полное руководство Ceph - далее ссылаемся на неё как MC (Mastering Ceph). Эта книга явила собой новую струю и привнесла много новой информации, в частности достаточно насыщенное описание BlueStore и распределённые вычисления на основе Librados. Также полезным оказалось руководство по применению Ansible при развёртывании Ceph. Её перевод также был достаточно увлекателен.
Следующая книга издательства, вышедшее в октябре 2017 второе издание Карана Сингха в соавторстве с Энтони Д`Атри, Вайбхав Бхембре, Изучаем Ceph, 2е изд. - далее ссылаемся на неё как LC2e (Learning Ceph, 2ed), показалась нам настолько повторяющей своё первое издание и тем самым не возбуждающей интереса при переводе, что на перевод вышедшей в ноябре 2017 второго издания Книга рецептов Ceph, 2е изд. Викхайята Умрао, Мишеля Хаккет, Карана Сингха - далее ссылаемся на неё как СC2e (Ceph Cookbook, 2ed) - мы просто забили!
Представляемая сейчас книга, по беглому ознакомлению с ней, является почти полной перепечаткой избранных глав CC2e, MC и LC2e. Те разделы, которые мы заметили как отличающиеся от соответствующих разделов в указанных первоисточниках, в панели навигации выделены красным. Поэтому мы пока ограничимся ссылками на соответствующие главы этих книг. Поскольку перевод СC2e мы зажали, постараемся дать ссылки на аналогичные материалы в CC и LC2e. Если же вы найдёте зачем следует перевести ту или иную главу из данной книги, подскажите нам, пожалуйста! }
Если вы разработчик, системный администратор, профессионал в области систем хранения или инженер облачных решений, который желает разобраться с тем как оснастить некий кластер Ceph, данный Путь изучения идеально вам подойдёт. Он поможет вам изучить те способы, при помощи которых функционал Ceph поможет вам решить ваши проблемы хранения данных. Предпочтительным будет наличие базовых знаний по системам хранения и GNU/Linux.
Глава 1 {CC2e~1}. Ceph: введение и за его пределами охватывает некое введение в Ceph, постепенно подводя к RAID и его проблемам, а также рассматривает обзор архитектуры Ceph. Наконец, мы также проходим вопросы установки и настройки Ceph. {Прим. пер.: глава почти полностью дублирует CC2e~1, введу отсутствия её перевода у нас отсылаем к CC-1, а также LC2e-1, LC2e-2, LC2e-3 }
Глава 2 {CC2e~2}. Работа с блочными устройствами Ceph, покрывает введение в Блочные устройства Ceph и предоставление блочных устройств Ceph. Мы также рассмотрим моментальные снимки и клоны RBD, а также реализацию решений восстановления после сбоев с зеркалированием RBD. {Прим. пер.: глава на первый взгляд полностью дублирует CC2e~2, так как у нас нет её перевода, отсылаем к СC-2, а также LC2e-9-2 }
Глава 3 {CC2e~3}. Работа с Ceph и OpenStack, охватывает настройку клиентов Openstack для применения ими Ceph, а также варианты хранения для Openstack с применением cinder, glance и nova. {Прим. пер.: глава на первый взгляд полностью дублирует CC2e~3, так как у нас нет её перевода, отсылаем к LC2e-10 }
Глава 4 {CC2e~4}. Работа с хранилищем объектов Ceph, занята глубоким погружением в хранилище объектов Ceph, в том числе установку и настройку RGW, доступ к S3 и OpenStack Swift . Наконец, мы установим RGW при помощи подключаемого модуля Hadoop S3A. {Прим. пер.: глава на первый взгляд полностью дублирует CC2e~4, так как у нас нет её перевода, отсылаем к СC-3, а также LC2e-9-4 }
Глава 5 {CC2e~5}. Работа с объектным хранилищем Ceph множества сайтов v2, поможет вам проникнуть глубже в новый Multi-site v2 при настройке двух кластеров для зеркалирования объектов между ними и некого решения восстановления объекта после сбоя. {Прим. пер.: глава на первый взгляд полностью дублирует CC2e~5, так как у нас нет её перевода, отсылаем к MC-11, СC-3, а также LC2e-9-4, хотя, возможно, стоит перевести эту главу.}
Глава 6 {CC2e~6}. Работа с файловой системой Ceph, предоставляет некое введение в CephFS, развёртывание MDS и CephFS посредством kerenel, FUSE и NFS-Ganesha. {Прим. пер.: глава на первый взгляд полностью дублирует CC2e~6, так как у нас нет её перевода, отсылаем к СC-3, а также LC2e-9-3 }
Глава 7 {CC2e~8}. Работа в кластере Ceph и управление им рассматривает управление службой Ceph при помощи systemd, а также вертикальное увеличение и уменьшение масштаба кластера Ceph. Эта глава также содержит инструкции по замене отказавшего диска и обновлению Ceph. {Прим. пер.: глава на первый взгляд полностью дублирует CC2e~8, так как у нас нет её перевода, отсылаем к СC-5, СC-6, а также LC2e-6 и MC-11. }
Глава 8 {CC2e~9}. Под капотом Ceph изучает карту CRUSH Ceph, внутреннее понимание установки соответствия CRUSH, а также настройки CRUSH с последующей аутентификацией и авторизацией Ceph. Эта глава также охватывает динамическое управление кластером и понимание PG Ceph. Наконец, мы создаём те особенности, которые требуют специальных аппаратных средств. {Прим. пер.: глава на первый взгляд полностью дублирует CC2e~9, так как у нас нет её перевода, отсылаем к СC-7, а также LC2e-8, LC2e-5 и MC-10. }
Глава 9 {CC2e~11}. Менеджер виртуального хранения Ceph обсуждает VSM (Virtual Storage Manager), охватывая введение в него и его архитектуру. Мы также проходим развёртывание VSM, а далее само создание кластера Ceph с применением VSM для управления этим. {Прим. пер.: глава на первый взгляд полностью дублирует CC2e~11, так как у нас нет её перевода, отсылаем к СC-9. }
Глава 10 {CC2e~12}. Ещё о Ceph охватывает эталонное тестирование Ceph, поиск неисправностей Ceph при помощи сокета администратора, API и инструментарий ceph-objectstore. Данная глава также рассматривает развёртывание Ceph при помощи Ansible и профилирование памяти Ceph. Более того, она покрывает проверку жизнеспособности вашего кластера Ceph при помощи Ceph Medic и новую экспериментальную основу хранения BlueStore Ceph. {Прим. пер.: глава на первый взгляд полностью дублирует CC2e~12, так как у нас нет её перевода, отсылаем к СC-10, LC2e-11, а также MC-9 и MC-10. }
Глава 11 {MC-2}. Развёртывание Ceph это серьёзная пошаговая инструкция по настройке кластера Ceph. В этой главе описывается инструментарий ceph-deploy для проверки и прохода с покрытием Ansible. Также содержится раздел по управлению изменениями, в котором поясняется насколько это существенно для стабильности больших кластеров. {Прим. пер.: глава на первый взгляд полностью дублирует MC-2. }
Глава 12 {MC-3}. BlueStore объясняет как Ceph должен иметь возможности предоставления атомарных операций для своих данных и метаданных и как было построено файловое хранилище для предоставления таких гарантий поверх стандартных файловых систем. Мы также обсуждаем имеющиеся при таком подходе проблемы. Затем эта глава делает введение в BlueStore и объясняет как он работает и те проблемы, которые он разрешает. Это также содержит его компоненты и то, как они взаимодействуют с различными типами устройств хранения. У нас также имеется некий обхор хранилищ ключ- значение, включая RocksDB, которое применяется в BlueStore. Будут обсуждены некоторые из имеющихся настроек BlueStore и то, как они взаимодействуют с различными аппаратными конфигурациями. {Прим. пер.: глава на первый взгляд полностью дублирует MC-3. }
Глава 13 {MC-4}. Удаляющее кодирование для лучшей эффективности хранения обсуждает как работает удаляющее кодирование и как оно реализовано в Ceph, в том числе пояснения параметров пула RADOS профилей удаляющего кодирования. Ссылки на изменения в редакции Kraken высвечивают возможность перезаписи добавлением в коней в пулах с удаляющим кодированием. Также будут даны пояснения по вопросам производительности. Они будут содержать ссылки на BlueStore, поскольку оно требуется для достижения достаточной производительности. Наконец, у нас имеется пошаговые инструкции по реальной настройке удаляющего кодирования в некотором пуле, которые можно применять в качестве механического справочника для системных администраторов. {Прим. пер.: глава на первый взгляд полностью дублирует MC-4. }
Глава 14 {MC-5}. Разработка при помощи librados объясняет как применяется Librados для построения приложений, которые могут напрямую взаимодействовать с неким кластером Ceph. Она затем переходит к некоторым различным примерам использования Librados в различных языках программирования для того чтобы снабдить вас основным пониманием того как это можно применять, причём включая атомарные транзакции. {Прим. пер.: глава на первый взгляд полностью дублирует MC-5. }
Глава 15 {MC-6}. Распределённые вычисления при помощи классов RADOS Ceph объясняет основные преимущества перемещения обработки непосредственно в OSD для действенного осуществления распределённых вычислений. Затем она охватывает вопросы того как начать работу с классами RADOS путём построения образцов на Lua. Затем она обсуждает как встроить ваш собственный класс C++ RADOS имеющееся дерево исходного кода Ceph и провести эталонное тестирование производительности обработки в своём клиенте противопоставляя её вычислениям в OSD. {Прим. пер.: глава на первый взгляд полностью дублирует MC-6. }
Глава 16 {MC-8}. Множество уровней в Ceph поясняет как работает в Ceph множество уровней RADOS, где его следует применять и его ловушки. Она предпринимает пошаговую настройку множества уровней кластера Ceph и наконец рассматривает варианты тоной настройки для извлечения наилучшей производительности для множества уровней.Некий пример использования Graphite продемонстрирует ценность такой способности манипуляции перехватываемыми данными для предоставления выразительного вывода в виде графиков. {Прим. пер.: глава на первый взгляд полностью дублирует MC-8. }
Глава 17 {MC-10}. Поиск неисправностей поясняет как несмотря на значительную автономность Ceph в заботе о самой себе и восстановлении после сбоев, в некоторых случаях требуется вмешательство персонала. Мы взглянем на распространённые ошибки и сценарии отказов, а также на то как возвращать обратно Ceph в полностью жизнеспособное состояние, отыскивая в ней неисправности. {Прим. пер.: глава на первый взгляд полностью дублирует MC-10. }
Глава 18 {MC-11}. Восстановление после сбоев описывает такие ситуации, при которых Ceph пребывает в том состоянии, когда присутствует полная утрата обслуживания или возникла утрата данных. Для восстановления доступа к вашему кластеру и, будем надеяться, восстановления данных требуются менее известные технические приёмы. Эта глава вложит вам в руки такие знания чтобы попытаться провести восстановление в подобных ситуациях. {Прим. пер.: глава на первый взгляд полностью дублирует MC-11. }
Глава 19 {LC2e-6}. Работа и сопровождение проводит глубокую и широкую инвентаризацию повседневных действий. Мы рассматриваем управление топологиями, службами и установками настроек Ceph, помимо её сопровождения и отладки. {Прим. пер.: глава на первый взгляд полностью дублирует LC2e-6. }
Глава 20 {LC2e-7}. Мониторинг Ceph выразительная коллекция команд, практических приёмов и программного обеспечения инструментальной панели в помощь удержанию на глазу жизнеспособности кластеров Ceph. {Прим. пер.: глава на первый взгляд полностью дублирует LC2e-7. }
Глава 21 {LC2e-11}. Настройка производительности и надёжности предоставляет некую коллекцию установок Ceph, сетевых сред, файловых систем и лежащих в основе операционных систем для оптимизации производительности и стабильности кластера. Также изучается эталонное тестирование производительности кластера. {Прим. пер.: глава на первый взгляд полностью дублирует LC2e-11. }
Данная книга требует чтобы у вас были достаточные ресурсы для запуска среды лаборатории Ceph целиком. Тот минимум оборудования или виртуальной машины, который требуется таков:
-
ЦПУ: два ядра
-
Оперативная памчять: 8 ГБ ОЗУ
-
Дисковое пространство: 40 ГБ
Для следования всем инструкциям в главах требуются различные компоненты программного обеспечения:
-
VirtualBox 4.0 или выше
-
Vagrant 1.5.0 или выше
-
Операционная система CentOS 7.0 или выше
-
Пакеты программного обеспечения Jewel Ceph версии 10.2.0 или выше
-
Клиента S3, обычно S3cmd
-
Клиента Python-swift
-
NFS Ganesha
-
Ceph Fuse
-
Virtual Storage Manager 2.0 или выше
Вы можете выгрузить все файлы примеров кода для данной книги из своей учётной записи www.packtpub.com. Если вы приобрели эту книгу в ином месте, будьте добры, пройдите в www.packtpub.com/support и зарегистрируйтесь чтобы иметь эти файлы высланные непосредственно вам по электронной почте.
Вы можете выгрузить все файлы кодов пройдя следующие шаги:
-
Зайдите зарегистрированным пользователем на www.packtpub.com.
-
Выберите закладку SUPPORT.
-
Кликните по Code Downloads & Errata.
-
Введите название нужной вам книги в блоке Search и следуйте появляющимся на экране инструкциям.
После того, как необходимые файлы выгружены, убедитесь что вы раззиповали или раскрыли их в нужную папку при помощи самой последней версии:
-
WinRAR/7-Zip
для Windows. -
Zipeg/iZip/UnRarX
для Mac. -
7-Zip/PeaZip
для Linux.
Пакет кода также размещён на GitHub по адресу https://github.com/PacktPublishing/Ceph-Designing-and-Implementing-Scalable-Storage-Systems. Также у нас имеются и другие пакеты кода из нашего богатого каталога книг и видео, доступные по адресу https://github.com/PacktPublishing/. Следите за изменениями!
В данной книге вы найдёте ряд текстовых стилей, которые делают разницу между различными видами информации. Здесь мы приводим некоторые примеры этих стилей и объяснение их назначения.
CodeInText
указывает кодовые слова в тексте, имена таблиц базы данных, имена папок, имена файлов,
расширения файлов, имена путей, модели URL-адресов, ввод пользователя, и регулировки Twitter. Вот некий пример:
"Проверьте файл installrc
.".
Блок кода устанавливается следующим образом:
AGENT_ADDRESS_LIST="192.168.123.101 192.168.123.102 192.168.123.103" CONTROLLER_ADDRESS="192.168.123.100"
Любой ввод командной строки или её вывод записываются следующим образом:
vagrant plugin install vagrant-hostmanager
Жирно: указывает новый термин, важное слово которые вы видите на экране, например, в меню или блоках диалогов появляются именно так. Вот пример: "Это выполнило проверку данных для OSD 1 и 2, что означает, что он не обнаружил ничего требуемого. Хотелось бы попробовать OSD 0, но это невозможно, поскольку этот OSD отключён, тем самым сообщение состоит в том, что starting or marking this osd lost may let us proceed appeared (запуск или пометка данного osd утраченным может позволить нам продолжить работу).".
![]() | Замечание |
---|---|
Предостережения или важные замечания появляются в блоках подобных этому. |
![]() | Совет |
---|---|
Советы и ловкие приёмы возникают таким образом. |
Обращения наших читателей всегда приветствуются.
Обычная обратная связь: Пошлите электронное письмо на адрес feedback@packtpub.com с упоминанием заголовка книги в теме вашего сообщения. Если у вас имеются вопросы относительно любых сторон данной книги, обратитесь, пожалуйста, по адресу questions@packtpub.com.
Ошибки: Хотя мы и предприняли все меры чтобы гарантировать точность содержимого, ошибки могут иметь место. Если вы обнаружили ошибку в данной книге, мы будем вам признательны если вы сообщите нам о ней. Посетите, пожалуйста, www.packtpub.com/submit-errata, выбрав вашу книгу, кликнув на ссылку Errata Submission Form, и заполнив подробности найденной вами ошибки.
Пиратство: Если вы столкнётесь с какой-либо незаконной копией наших работ в любой форме в Интернете, пожалуйста, предоставьте нам сразу адрес местонахождения или имя веб-сайта, чтобы мы могли принять меры. Пожалуйста, обратитесь по адресу copyright@packtpub.com со ссылкой на материалы содержащие признаки нарушения авторских прав. {Прим. пер.: Согласно закону об авторском праве РФ, авторские права на перевод принадлежат авторам этого перевода. Данным переводом, по нашему мнению, мы служим популяризации основных стратегических направлений развития тем Packt. В случае наличия конструктивных предложений, готовы к тесному сотрудничеству.}.
Если вы желаете стать нашим автором: Если у вас существует тема, в которой у вас имеется опыт и вы заинтересованы либо в написании, либо во вкладе в книгу, обратитесь к руководству по адресу authors.packtpub.com.
Оставляйте, пожалуйста, отзывы. Если вы прочли и воспользовались данной книгой, почему бы вам не оставить отзыв на том сайте, на котором вы её приобрели? Потенциальные читатели затем смогут увидеть и применить ваше беспристрастное суждение чтобы принять решение о приобретении, мы в Packt сможем понять что вы думаете о нашем продукте, а наши авторы увидят обратную связь относительно своей книги. Мы заранее благодарим вас!
Для получения дополнительной информации о Packt посетите, пожалуйста packtpub.com.