Toon posts:

[OpenBSD] Raid; howto setup softwarematige raid-1?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Om het kort en krachtig te houden:
userlevel met openbsd: newbie.

Voor me staat er een gewone pc met twee e-ide harde schijven.
(PII, wat ram, cdrom en floppy) Verder niet echt bijzonders.
Op het werk heb ik al wat gespeeld met openbsd met vmware. Was intresssant. Nu weet ik dat openbsd net zoals met linux softwarematige raid ondersteunt.

Nu is mijn vraag:
Hoe krijg ik op deze kale pc openbsd geinstalleerd,
in een softwarematige raid-1 configuratie?
Ik heb immers maar 2 harde schijven, dus ik kan niet vanuit een bestaande installatie werken. Ik heb de officiele cdrom.

Binnen gathering.tweakers.net is met de search niets te vinden op "openbsd raid". Met google krijg je een waslijst dat enkel betrekking heeft op hardwarematige raidcontrollers. Aangezien dit dus hier de eerste topic die erover gaat, een mooie kans om hier een prachtig naslagwerk van te maken. :)

  • tofus
  • Registratie: Januari 2002
  • Laatst online: 13-05-2014

tofus

it's all in the game

google heeft het toch echt wel bij het juiste eind. Eerste 'hit' vertelt je meteen hoe je een RAID pseudo-device aanmaakt. Je hebt waarschijnlijk wel een werkende SCSI setup nodig. Kweenie of OBSD ook ondersteuning heeft voor RAID op IDE.

"Whoever undertakes to set himself up as judge in the field of truth and knowledge is shipwrecked by the laughter of the Gods." - Albert Einstein


Verwijderd

Topicstarter
Dat kan wel kloppen maar hoe krijg ik de pseudo-raid enabled zoals dat heet en geconfigureerd gelijk met de alllereerste installatie vanaf cdrom en/of floppy.
Een nee ik heb geen scsi, maar ide. toch wel een verschil waarvan ik niet weet hoe zich dat uit in de installatieprocudure. :?

Verwijderd

$ man raid

RAID(4) OpenBSD Programmer's Manual RAID(4)

NAME
raid - RAIDframe disk driver

SYNOPSIS
pseudo-device raid [count]

DESCRIPTION
The raid driver provides RAID 0, 1, 4, and 5 (and more!) capabilities to
OpenBSD. This document assumes that the reader has at least some famil-
iarity with RAID and RAID concepts. The reader is also assumed to know
how to configure disks and pseudo-devices into kernels, how to generate
kernels, and how to partition disks.

RAIDframe provides a number of different RAID levels including:

RAID 0 provides simple data striping across the components.

RAID 1 provides mirroring.

RAID 4 provides data striping across the components, with parity stored
on a dedicated drive (in this case, the last component).

RAID 5 provides data striping across the components, with parity dis-
tributed across all the components.

There are a wide variety of other RAID levels supported by RAIDframe, in-
cluding Even-Odd parity, RAID level 5 with rotated sparing, Chained
declustering, and Interleaved declustering. The reader is referred to
the RAIDframe documentation mentioned in the HISTORY section for more de-
tail on these various RAID configurations.

Depending on the parity level configured, the device driver can support
the failure of component drives. The number of failures allowed depends
on the parity level selected. If the driver is able to handle drive
failures, and a drive does fail, then the system is operating in "degrad-
ed mode". In this mode, all missing data must be reconstructed from the
data and parity present on the other components. This results in much
slower data accesses, but does mean that a failure need not bring the
system to a complete halt.

The RAID driver supports and enforces the use of `component labels'. A
`component label' contains important information about the component, in-
cluding a user-specified serial number, the row and column of that compo-
nent in the RAID set, and whether the data (and parity) on the component
is `clean'. If the driver determines that the labels are very inconsis-
tent with respect to each other (e.g. two or more serial numbers do not
match) or that the component label is not consistent with it's assigned
place in the set (e.g. the component label claims the component should be
the 3rd one a 6-disk set, but the RAID set has it as the 3rd component in
a 5-disk set) then the device will fail to configure. If the driver de-
termines that exactly one component label seems to be incorrect, and the
RAID set is being configured as a set that supports a single failure,
then the RAID set will be allowed to configure, but the incorrectly la-
beled component will be marked as `failed', and the RAID set will begin
operation in degraded mode. If all of the components are consistent
among themselves, the RAID set will configure normally.

Component labels are also used to support the auto-detection and auto-
configuration of RAID sets. A RAID set can be flagged as auto-config-
urable, in which case it will be configured automatically during the ker-
nel boot process. RAID filesystems which are automatically configured
are also eligible to be the root filesystem. There is currently no sup-
port for booting a kernel directly from a RAID set. To use a RAID set as
the root filesystem, a kernel is usually obtained from a small non-RAID
partition, after which any auto-configuring RAID set can be used for the
root filesystem. See raidctl(8) for more information on auto-configura-
tion of RAID sets.

The driver supports `hot spares', disks which are on-line, but are not
actively used in an existing filesystem. Should a disk fail, the driver
is capable of reconstructing the failed disk onto a hot spare or back on-
to a replacement drive. If the components are hot swapable, the failed
disk can then be removed, a new disk put in its place, and a copyback op-
eration performed. The copyback operation, as its name indicates, will
copy the reconstructed data from the hot spare to the previously failed
(and now replaced) disk. Hot spares can also be hot-added using
raidctl(8).

If a component cannot be detected when the RAID device is configured,
that component will be simply marked as 'failed'.

The user-land utility for doing all raid configuration and other opera-
tions is raidctl(8). Most importantly, raidctl(8) must be used with the
-i option to initialize all RAID sets. In particular, this initializa-
tion includes re-building the parity data. This rebuilding of parity da-
ta is also required when either a) a new RAID device is brought up for
the first time or b) after an un-clean shutdown of a RAID device. By us-
ing the -P option to raidctl(8), and performing this on-demand recomputa-
tion of all parity before doing a fsck(8) or a newfs(8), filesystem in-
tegrity and parity integrity can be ensured. It bears repeating again
that parity recomputation is required before any filesystems are created
or used on the RAID device. If the parity is not correct, then missing
data cannot be correctly recovered.

RAID levels may be combined in a hierarchical fashion. For example, a
RAID 0 device can be constructed out of a number of RAID 5 devices
(which, in turn, may be constructed out of the physical disks, or of oth-
er RAID devices).

It is important that drives be hard-coded at their respective addresses
(i.e. not left free-floating, where a drive with SCSI ID of 4 can end up
as /dev/sd0c) for well-behaved functioning of the RAID device. This is
true for all types of drives, including IDE, HP-IB, etc. For normal SCSI
drives, for example, the following can be used to fix the device address-
es:

sd0 at scsibus0 target 0 lun ? # SCSI disk drives
sd1 at scsibus0 target 1 lun ? # SCSI disk drives
sd2 at scsibus0 target 2 lun ? # SCSI disk drives
sd3 at scsibus0 target 3 lun ? # SCSI disk drives
sd4 at scsibus0 target 4 lun ? # SCSI disk drives
sd5 at scsibus0 target 5 lun ? # SCSI disk drives
sd6 at scsibus0 target 6 lun ? # SCSI disk drives

See sd(4) for more information. The rationale for fixing the device ad-
dresses is as follows: Consider a system with three SCSI drives at SCSI
ID's 4, 5, and 6, and which map to components /dev/sd0e, /dev/sd1e, and
/dev/sd2e of a RAID 5 set. If the drive with SCSI ID 5 fails, and the
system reboots, the old /dev/sd2e will show up as /dev/sd1e. The RAID
driver is able to detect that component positions have changed, and will
not allow normal configuration. If the device addresses are hard coded,
however, the RAID driver would detect that the middle component is un-
available, and bring the RAID 5 set up in degraded mode. Note that the
auto-detection and auto-configuration code does not care about where the
components live. The auto-configuration code will correctly configure a
device even after any number of the components have been re-arranged.

The first step to using the raid driver is to ensure that it is suitably
configured in the kernel. This is done by adding a line similar to:

pseudo-device raid 4 # RAIDframe disk device

to the kernel configuration file. The `count' argument ( `4', in this
case), specifies the number of RAIDframe drivers to configure. To turn
on component auto-detection and auto-configuration of RAID sets, simply
add:

options RAID_AUTOCONFIG

to the kernel configuration file.

All component partitions must be of the type FS_BSDFFS (e.g. 4.2BSD) or
FS_RAID (e.g. RAID). The use of the latter is strongly encouraged, and
is required if auto-configuration of the RAID set is desired. Since
RAIDframe leaves room for disklabels, RAID components can be simply raw
disks, or partitions which use an entire disk. Note that some platforms
(such as SUN) do not allow using the FS_RAID partition type. On these
platforms, the raid driver can still auto-configure from FS_BSDFFS parti-
tions.

A more detailed treatment of actually using a raid device is found in
raidctl(8). It is highly recommended that the steps to reconstruct, copy-
back, and re-compute parity are well understood by the system administra-
tor(s) before a component failure. Doing the wrong thing when a compo-
nent fails may result in data loss.

Additional internal consistency checking can be enabled by specifying:

options RAID_DIAGNOSTIC

These assertions are disabled by default in order to improve performance.

WARNINGS
Certain RAID levels (1, 4, 5, 6, and others) can protect against some da-
ta loss due to component failure. However the loss of two components of
a RAID 4 or 5 system, or the loss of a single component of a RAID 0 sys-
tem, will result in the entire filesystems on that RAID device being
lost. RAID is NOT a substitute for good backup practices.

Recomputation of parity MUST be performed whenever there is a chance that
it may have been compromised. This includes after system crashes, or be-
fore a RAID device has been used for the first time. Failure to keep
parity correct will be catastrophic should a component ever fail -- it is
better to use RAID 0 and get the additional space and speed, than it is
to use parity, but not keep the parity correct. At least with RAID 0
there is no perception of increased data security.

FILES
/dev/{,r}raid* raid device special files.

SEE ALSO
sd(4), MAKEDEV(8), config(8), fsck(8), mount(8), newfs(8), raidctl(8)

HISTORY
The raid driver in OpenBSD is a port of RAIDframe, a framework for rapid
prototyping of RAID structures developed by the folks at the Parallel Da-
ta Laboratory at Carnegie Mellon University (CMU). RAIDframe, as origi-
nally distributed by CMU, provides a RAID simulator for a number of dif-
ferent architectures, and a user-level device driver and a kernel device
driver for Digital Unix. The raid driver is a kernelized version of
RAIDframe v1.1.

A more complete description of the internals and functionality of RAID-
frame is found in the paper "RAIDframe: A Rapid Prototyping Tool for RAID
Systems", by William V. Courtright II, Garth Gibson, Mark Holland, LeAnn
Neal Reilly, and Jim Zelenka, and published by the Parallel Data Labora-
tory of Carnegie Mellon University. The raid driver first appeared in
NetBSD 1.4 from where it was ported to OpenBSD 2.5.

Verwijderd

/me ziet net tot zijn verbazing dat snailer (ook) uit de regio Roermond komt, en nodigt hem hierbij uit om een bezoek te brengen aan http://forum.nedbsd.nl

  • kieskes
  • Registratie: Juni 1999
  • Laatst online: 12:43
jammer genoeg kun je niet van een (softwarematige) raid (1) partitie booten :(

Verwijderd

Voor EUR 197,- heb je geloof ik al een 3ware 6410,
Hiermee heb je iig voor ieder OS support!

  • kieskes
  • Registratie: Juni 1999
  • Laatst online: 12:43
Op zaterdag 06 april 2002 18:13 schreef SiR_pr0zaQ het volgende:
Voor EUR 197,- heb je geloof ik al een 3ware 6410,
Hiermee heb je iig voor ieder OS support!
Juist, zo heb ik het ook opgelost :)

Verwijderd

Topicstarter
Op zaterdag 06 april 2002 15:39 schreef SiR_pr0zaQ het volgende:
/me ziet net tot zijn verbazing dat snailer (ook) uit de regio Roermond komt, en nodigt hem hierbij uit om een bezoek te brengen aan http://forum.nedbsd.nl
Hee. Das leuk. :-) Missien kunnen we iets afspreken of zoiets? thx voor de link. ik wist niet van het bestaan van de site af. ik kende al bsdfreaks.nl maar veel 'inhoud' heeft het niet.

Update:
Mbv bovenstaand forum kreeg ik de volgende link:
http://www.monkey.org/openbsd/archive/misc/0203/msg00803.html
Hier wordt in deze howto tot een zekere hoogte stap-voor-stap verteld hoe je dit kunt bereiken. Op het moment van schrijven heb ik nog niet uitgeprobeerd of het mijzelf lukte.
Pagina: 1