old-www/LDP/EVMSUG/html/layerdef.html

346 lines
7.8 KiB
HTML
Raw Permalink Blame History

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML
><HEAD
><TITLE
>Plug-in layer definitions</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="EVMS User Guide"
HREF="index.html"><LINK
REL="UP"
TITLE="What is EVMS?"
HREF="intro.html"><LINK
REL="PREVIOUS"
TITLE="What makes EVMS so flexible?"
HREF="x262.html"><LINK
REL="NEXT"
TITLE="Using the EVMS interfaces"
HREF="evmscmuse.html"></HEAD
><BODY
CLASS="sect1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>EVMS User Guide</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="x262.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Chapter 1. What is EVMS?</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="evmscmuse.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="sect1"
><H1
CLASS="sect1"
><A
NAME="LAYERDEF"
></A
>1.5. Plug-in layer definitions</H1
><P
>EVMS defines a layered architecture where plug-ins in each layer
create abstractions of the layer or layers below. EVMS also allows most plug-ins
to create abstractions of objects within the same layer. The following
list defines these layers from the bottom up.</P
><P
></P
><DIV
CLASS="variablelist"
><DL
><DT
>Device managers</DT
><DD
><P
>The first (bottom) layer consists
of device managers.
These plug-ins communicate with hardware device drivers to
create the first EVMS objects. Currently, all devices are handled by a single plug-in.
Future releases of EVMS might need additional device managers
for network device management (for example, to manage
disks on a storage area network (SAN)).</P
></DD
><DT
>Segment managers</DT
><DD
><P
>The second layer consists of segment
managers. These plug-ins
handle the segmenting, or partitioning,
of disk drives. The Engine components can replace partitioning
programs, such as <B
CLASS="command"
>fdisk</B
> and
<SPAN
CLASS="application"
>Disk Druid</SPAN
>, and EVMS
uses Device Mapper to replace the in-kernel disk
partitioning code.
Segment managers can also be "stacked," meaning that
one segment manager
can take as input the output from another segment
manager.</P
><P
> EVMS provides the following segment managers:
DOS, GPT, System/390<39> (S/390), Cluster, BSD,
Mac, and BBR. Other segment manager
plug-ins can be added to support other
partitioning schemes.</P
></DD
><DT
>Region managers</DT
><DD
><P
>The third layer consists of region
managers.
This layer provides a place for plug-ins that ensure
compatibility with existing volume management schemes
in Linux and other operating systems.
Region managers are intended to model systems that
provide a logical abstraction above disks
or partitions.</P
><P
>Like segment managers, region managers can
also be stacked.
Therefore, the input object(s) to a region manager can
be disks, segments, or other regions.</P
><P
>There are currently three region manager plug-ins in EVMS:
Linux LVM, LVM2, and Multi-Disk (MD).
<P
></P
><DIV
CLASS="variablelist"
><DL
><DT
>Linux LVM</DT
><DD
><P
>The Linux LVM plug-in provides compatibility with
the Linux LVM and allows the creation of volume groups
(known in EVMS as containers) and logical volumes
(known in EVMS as regions). </P
></DD
><DT
>LVM2</DT
><DD
><P
>&#13; The LVM2 plug-in provides compatibility with the
new volume format introduced by the LVM2 tools from Red Hat. This plug-in
is very similar in functionality to the LVM plug-in. The primary difference
is the new, improved metadata format.
</P
></DD
><DT
>MD</DT
><DD
><P
>The Multi-Disk (MD) plug-in for RAID provides
RAID levels linear, 0, 1, 4, and 5 in
software. MD is one plug-in that displays as four region
managers that you can choose from.</P
></DD
></DL
></DIV
></P
></DD
><DT
>EVMS features</DT
><DD
><P
>The next layer consists of EVMS
features. This layer is
where new EVMS-native functionality is implemented. EVMS
features can be built on any object in the system, including
disks, segments, regions, or other feature objects.
All EVMS features share a common type of metadata,
which makes discovery of feature objects much more
efficient, and recovery
of broken features objects much more reliable. There are three
features currently available in EVMS: drive linking, Bad
Block Relocation, and snapshotting. </P
><P
></P
><DIV
CLASS="variablelist"
><DL
><DT
>Drive Linking</DT
><DD
><P
>Drive linking allows any
number of objects to be linearly concatenated together into a
single object. A drive linked volume can be expanded by
adding another storage object to the end or shrunk by removing the last object.</P
></DD
><DT
>Bad Block Relocation</DT
><DD
><P
>Bad Block Relocation (BBR)
monitors its I/O path and detects write failures (which can be
caused by a damaged disk). In the event of such a failure, the
data from that request is stored in a new location. BBR keeps
track of this remapping. Additional I/Os to that
location are redirected to the new location.</P
></DD
><DT
>Snapshotting</DT
><DD
><P
>The Snapshotting feature provides
a mechanism for creating a "frozen" copy of a volume at a single
instant in time, without having to take that volume off-line.
This is useful for performing backups on a live system.
Snapshots work with any volume (EVMS or compatibility), and can
use any other available object as a backing store. After a
snapshot is created and made into an EVMS volume, writes to the "original" volume cause the
original contents of that location to be copied to the snapshot's
storage object. Reads to the snapshot volume look like they
come from the original at the time the snapshot was created.
</P
></DD
></DL
></DIV
></DD
><DT
>File System Interface Modules</DT
><DD
><P
>File System Interface Modules (FSIMs)
provide coordination with the
file systems during certain volume management
operations. For
instance, when expanding or shrinking a volume,
the file system
must also be expanded or shrunk to the appropriate size.
Ordering in this example is also important;
a file system cannot
be expanded before the volume, and a volume cannot
be shrunk before the file system.
The FSIMs allow EVMS to ensure this
coordination and ordering.</P
><P
>FSIMs also perform file system
operations from one of the EVMS user interfaces. For instance,
a user can make new file systems and check existing file systems
by interacting with the FSIM.</P
></DD
><DT
>Cluster Manager Interface Modules</DT
><DD
><P
>Cluster Manager Interface Modules, also
known as the EVMS Clustered Engine (ECE), interface
with the local cluster manager installed on the system.
The ECE provides a standardized ECE API to the Engine
while hiding cluster manager details from the Engine.</P
></DD
></DL
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="x262.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="evmscmuse.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>What makes EVMS so flexible?</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="intro.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Using the EVMS interfaces</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>