mirror of
https://git.openafs.org/openafs.git
synced 2025-01-19 15:30:14 +00:00
3dc1fb3feb
The man pages previously described linking DCE cells to AFS cells. OpenAFS and YFS also allow linking between two AFS cells. Update the description of linked cells in CellServDB(5), aklog(1), and fs_newcell(1) to refer to AFS instead of DCE. Add a linked cell example to the CellServDB man page with an explanation. Change-Id: Ic9b1c643861b7307c09fcc5a1775f4abf4cb4155 Reviewed-on: http://gerrit.openafs.org/10342 Tested-by: BuildBot <buildbot@rampaginggeek.com> Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
262 lines
10 KiB
Plaintext
262 lines
10 KiB
Plaintext
=head1 NAME
|
|
|
|
CellServDB - Lists the database server machines in AFS cells
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
There are two versions of the F<CellServDB> file, both of which have the
|
|
same format. One version is used by an AFS client and lists all of the
|
|
database server machines in the local cell and any foreign cell that is to
|
|
be accessible from the local client machine. The other version is used on
|
|
servers and need list only the database servers in the local cell; in some
|
|
configurations it can be a link to the same file the client uses.
|
|
|
|
=head2 Client CellServDB
|
|
|
|
Along with AFSDB and SRV entries in DNS, the client version of the CellServDB
|
|
file lists the database server machines in the local cell and any foreign cell
|
|
that is to be accessible from the local client machine. Database server
|
|
machines run the Authentication Server (optional), Backup Server
|
|
(optional), Protection Server, and Volume Location (VL) Server (the
|
|
B<kaserver>, B<buserver>, B<ptserver>, and B<vlserver>) processes, which
|
|
maintain the cell's administrative AFS databases.
|
|
|
|
The Cache Manager and other processes running on a client machine use the
|
|
list of a cell's database server machines when performing several common
|
|
functions, including:
|
|
|
|
=over 4
|
|
|
|
=item *
|
|
|
|
Fetching files. The Cache Manager contacts the VL Server to learn
|
|
the location of the volume containing a requested file or directory.
|
|
|
|
=item *
|
|
|
|
Creating, viewing, and manipulating protection groups. The B<pts> command
|
|
interpreter contacts the Protection Server when users create protection
|
|
groups or request information from the Protection Database.
|
|
|
|
=item *
|
|
|
|
Populating the contents of the fake F<root.afs> volume mounted at F</afs>
|
|
(or the alternative mount point specified in F<cacheinfo>) when B<afsd> is
|
|
run in C<-dynroot> mode. The default contents of this directory will
|
|
match the cells listed in the client F<CellServDB> file.
|
|
|
|
=item *
|
|
|
|
Authenticating users. Client-side authentication programs (such as an
|
|
AFS-modified login utility or the B<klog> command interpreter) contact the
|
|
Authentication Server to obtain a server ticket, which the AFS server
|
|
processes accept as proof that the user is authenticated. This only
|
|
applies to AFS cells using the deprecated Authentication Server instead of
|
|
Kerberos v5 and B<aklog>.
|
|
|
|
=back
|
|
|
|
The Cache Manager reads the CellServDB file into kernel memory as it
|
|
initializes, and not again until the machine next reboots or the client
|
|
service restarts. To enable users on the local machine to continue
|
|
accessing the cell correctly, update the file whenever a database server
|
|
machine is added to or removed from a cell. To update the kernel-resident
|
|
list of database server machines without rebooting, use the B<fs newcell>
|
|
command.
|
|
|
|
If the client attempts to access an AFS cell not listed in F<CellServDB>
|
|
and B<afsd> was started with the B<-afsdb> option, the Cache Manager will
|
|
attempt a DNS SRV or AFSDB record lookup and dynamically add the database
|
|
server locations for that cell based on the result of the DNS query. If the
|
|
B<-afsdb> option was not used, all AFS cells that will be accessed by a
|
|
client machine must either be listed in F<CellServDB> or added with the
|
|
B<fs newcell> command.
|
|
|
|
The F<CellServDB> file is in ASCII format and must reside in the
|
|
F</usr/vice/etc> directory on each AFS client machine. Use a text editor
|
|
to create and maintain it.
|
|
|
|
The client version of the F<CellServDB> file is distinct from the server
|
|
version, which resides in the F</usr/afs/etc> directory on each AFS server
|
|
machine. The client version lists the database server machines in every
|
|
AFS cell that the cell administrator wants the machine's users to be able
|
|
to access, whereas the server version lists only the local cell's database
|
|
server machines.
|
|
|
|
=head2 Server CellServDB
|
|
|
|
The server version of the F<CellServDB> file lists the local cell's
|
|
database server machines. These machines run the Authentication Server
|
|
(optional), Backup Server (optional), Protection Server, and Volume
|
|
Location (VL) Server (the B<kaserver>, B<buserver>, B<ptserver>, and
|
|
B<vlserver>) processes, which maintain the cell's administrative AFS
|
|
databases. The initial version of the file is created with the B<bos
|
|
setcellname> command during the installation of the cell's server machine,
|
|
which is automatically recorded as the cell's first database server
|
|
machine. When adding or removing database server machines, be sure to
|
|
update this file appropriately. It must reside in the F</usr/afs/etc>
|
|
directory on each AFS server machine. The database server processes,
|
|
in addition to the usual configuration allowing each to be elected
|
|
synchronization site and coordinate updates, can be set up as readonly
|
|
database clone servers. Such servers can never be elected as the
|
|
synchronization site.
|
|
|
|
The database server processes consult the F<CellServDB> file to learn
|
|
about their peers, with which they must maintain constant connections in
|
|
order to coordinate replication of changes across the multiple copies of
|
|
each database. The other AFS server processes consult the file to learn
|
|
which machines to contact for information from the databases when they
|
|
need it.
|
|
|
|
Although the server F<CellServDB> file is in ASCII format, do not use a
|
|
text editor to alter it. Instead always use the appropriate commands from
|
|
the B<bos> command suite:
|
|
|
|
=over 4
|
|
|
|
=item *
|
|
|
|
The B<bos addhost> command to add a machine to the file.
|
|
|
|
=item *
|
|
|
|
The B<bos listhosts> command to display the list of machines from the
|
|
file.
|
|
|
|
=item *
|
|
|
|
The B<bos removehost> command to remove a machine from the file.
|
|
|
|
=back
|
|
|
|
In cells that use the Update Server to distribute the contents of the
|
|
F</usr/afs/etc> directory, it is customary to edit only the copy of the
|
|
file stored on the system control machine. Otherwise, edit the file on
|
|
each server machine individually. For instructions on adding and removing
|
|
database server machine, see the I<OpenAFS Quick Start> chapter on
|
|
installing additional server machines. Updates to the server F<CellServDB>
|
|
will trigger reloading the cell server configurations automatically in the
|
|
AFS server processes.
|
|
|
|
=head2 CellServDB Format
|
|
|
|
Both F<CellServDB> files have the same format:
|
|
|
|
=over 4
|
|
|
|
=item *
|
|
|
|
The first line begins at the left margin with the greater-than character
|
|
(C<< > >>), followed immediately by the cell's name without an intervening
|
|
space. Optionally, a comment can follow any number of spaces and a octothorpe
|
|
(C<#>), perhaps to identify the organization associated with the
|
|
cell. A variant of this allows the definition of a linked cell: after the
|
|
leading (C<< > >>) and cell name, a space and a second cell name may be
|
|
listed before the optional spaces, octothorpe and comment.
|
|
|
|
=item *
|
|
|
|
Each subsequent line in the entry identifies one of the cell's database
|
|
server machines, with the indicated information in order:
|
|
|
|
=over 4
|
|
|
|
=item *
|
|
|
|
The database server machine's IP address in dotted-decimal format, optionally
|
|
enclosed in square braces (C<< [ >>)(C<< ] >>) to define a non-voting clone.
|
|
|
|
=item *
|
|
|
|
One or more spaces.
|
|
|
|
=item *
|
|
|
|
An octothorpe (#), followed by the machine's fully qualified hostname
|
|
without an intervening space. This number sign does not indicate that the
|
|
hostname is a comment. It is a required field.
|
|
|
|
=back
|
|
|
|
=back
|
|
|
|
No extra blank lines or newline characters are allowed in the file, even
|
|
after the last entry. Their presence can prevent the Cache Manager from
|
|
reading the file into kernel memory, resulting in an error message.
|
|
|
|
For the client F<CellServDB>, it may be desirable to make the client aware
|
|
of a cell (so that it's listed by default in F</afs> when the B<-dynroot>
|
|
flag to B<afsd> is in use, for instance) without specifying the database
|
|
server machines for that cell. This can be done by including only the
|
|
cell line (starting with C<< > >>) and omitting any following database
|
|
server machine lines. B<afsd> must be configured with the B<-afsdb> option
|
|
to use DNS SRV or AFSDB record lookups to locate database server
|
|
machines. If the cell has such records and the client is configured to
|
|
use them, this configuration won't require updates to the client
|
|
F<CellServDB> file when the IP addresses of the database server machines
|
|
change.
|
|
|
|
grand.central.org maintains a list of the database server machines in all
|
|
cells that have registered themselves as receptive to access from foreign
|
|
cells. When a cell's administrators change its database server machines,
|
|
it is customary to register the change with grand.central.org for
|
|
inclusion in this file. The file conforms to the required F<CellServDB>
|
|
format, and so is a suitable basis for the F<CellServDB> file on a client
|
|
machine. You can download this file from L<http://grand.central.org/>.
|
|
|
|
=head1 EXAMPLES
|
|
|
|
The following example shows entries for two cells in a client
|
|
F<CellServDB> file and illustrates the required format.
|
|
|
|
>example.com # Example Corporation
|
|
192.12.105.2 #db1.example.com
|
|
192.12.105.3 #db2.example.com
|
|
[192.12.107.3] #db3.example.com
|
|
>test.example.com example.com # Example Corporation Test Cell
|
|
192.12.108.57 #testdb1.example.com
|
|
192.12.108.55 #testdb2.example.com
|
|
|
|
The following example shows entries for two linked cells in a client
|
|
F<CellServDB> file. The a.example.com cell is linked to the b.example.com
|
|
cell.
|
|
|
|
>b.example.com # B cell
|
|
192.12.108.57 # db1.b.example.com
|
|
>a.example.com b.example.com # A cell
|
|
192.12.105.2 # db1.a.example.com
|
|
|
|
In such a setup, if a client is looking for a volume in cell a.example.com
|
|
and that volume doesn't exist, the client will try to find that volume
|
|
again in cell b.example.com. The order is important. You must list the
|
|
cell being linked before the cell doing the linking.
|
|
|
|
The Windows client supports linking in two directions. The UNIX client
|
|
does not allow bidirectional linkage.
|
|
|
|
=head1 SEE ALSO
|
|
|
|
L<afsd(8)>,
|
|
L<bos_addhost(8)>,
|
|
L<bos_listhosts(8)>,
|
|
L<bos_removehost(8)>,
|
|
L<bos_setcellname(8)>,
|
|
L<buserver(8)>,
|
|
L<fs_newcell(1)>,
|
|
L<kaserver(8)>,
|
|
L<klog(1)>,
|
|
L<ptserver(8)>,
|
|
L<vlserver(8)>,
|
|
L<upclient(8)>,
|
|
L<upserver(8)>
|
|
|
|
I<OpenAFS Quick Start>
|
|
|
|
=head1 COPYRIGHT
|
|
|
|
IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
|
|
|
|
This documentation is covered by the IBM Public License Version 1.0. It was
|
|
converted from HTML to POD by software written by Chas Williams and Russ
|
|
Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.
|