da4c6648af410bd8ee8253a308cf4d6094e391a6
[openafs.git] / doc / man-pages / pod5 / CellServDB.pod
1 =head1 NAME
2
3 CellServDB - Lists the database server machines in AFS cells
4
5 =head1 DESCRIPTION
6
7 There are two versions of the F<CellServDB> file, both of which have the
8 same format.  One version is used by an AFS client and lists all of the
9 database server machines in the local cell and any foreign cell that is to
10 be accessible from the local client machine.  The other version is used on
11 servers and lists only the database servers in the local cell.
12
13 =head2 Client CellServDB
14
15 Along with AFSDB entries in DNS, the client version of the CellServDB file
16 lists the database server machines in the local cell and any foreign cell
17 that is to be accessible from the local client machine. Database server
18 machines run the Authentication Server (optional), Backup Server
19 (optional), Protection Server, and Volume Location (VL) Server (the
20 B<kaserver>, B<buserver>, B<ptserver>, and B<vlserver>) processes, which
21 maintain the cell's administrative AFS databases.
22
23 The Cache Manager and other processes running on a client machine use the
24 list of a cell's database server machines when performing several common
25 functions, including:
26
27 =over 4
28
29 =item *
30
31 Fetching files. The Cache Manager contacts the VL Server to learn
32 the location of the volume containing a requested file or directory.
33
34 =item *
35
36 Creating, viewing, and manipulating protection groups. The B<pts> command
37 interpreter contacts the Protection Server when users create protection
38 groups or request information from the Protection Database.
39
40 =item *
41
42 Populating the contents of the fake F<root.afs> volume mounted at F</afs>
43 (or the alternative mount point specified in F<cacheinfo>) when B<afsd> is
44 run in C<-dynroot> mode.  The default contents of this directory will
45 match the cells listed in the client F<CellServDB> file.
46
47 =item *
48
49 Authenticating users. Client-side authentication programs (such as an
50 AFS-modified login utility or the B<klog> command interpreter) contact the
51 Authentication Server to obtain a server ticket, which the AFS server
52 processes accept as proof that the user is authenticated. This only
53 applies to AFS cells using the deprecated Authentication Server instead of
54 Kerberos v5 and B<aklog>.
55
56 =back
57
58 The Cache Manager reads the CellServDB file into kernel memory as it
59 initializes, and not again until the machine next reboots or the client
60 service restarts. To enable users on the local machine to continue
61 accessing the cell correctly, update the file whenever a database server
62 machine is added to or removed from a cell. To update the kernel-resident
63 list of database server machines without rebooting, use the B<fs newcell>
64 command.
65
66 If the client attempts to access an AFS cell not listed in F<CellServDB>
67 and B<afsd> was started with the B<-afsdb> option, the Cache Manager will
68 attempt an AFSDB DNS record lookup and dynamically add the database server
69 locations for that cell based on the result of the DNS query.  If the
70 B<-afsdb> option was not used, all AFS cells that will be accessed by a
71 client machine must either be listed in F<CellServDB> or added with the
72 B<fs newcell> command.
73
74 The F<CellServDB> file is in ASCII format and must reside in the
75 F</usr/vice/etc> directory on each AFS client machine. Use a text editor
76 to create and maintain it.
77
78 The client version of the F<CellServDB> file is distinct from the server
79 version, which resides in the F</usr/afs/etc> directory on each AFS server
80 machine. The client version lists the database server machines in every
81 AFS cell that the cell administrator wants the machine's users to be able
82 to access, whereas the server version lists only the local cell's database
83 server machines.
84
85 =head2 Server CellServDB
86
87 The server version of the F<CellServDB> file lists the local cell's
88 database server machines. These machines run the Authentication Server
89 (optional), Backup Server (optional), Protection Server, and Volume
90 Location (VL) Server (the B<kaserver>, B<buserver>, B<ptserver>, and
91 B<vlserver>) processes, which maintain the cell's administrative AFS
92 databases. The initial version of the file is created with the B<bos
93 setcellname> command during the installation of the cell's server machine,
94 which is automatically recorded as the cell's first database server
95 machine. When adding or removing database server machines, be sure to
96 update this file appropriately. It must reside in the F</usr/afs/etc>
97 directory on each AFS server machine.
98
99 The database server processes consult the F<CellServDB> file to learn
100 about their peers, with which they must maintain constant connections in
101 order to coordinate replication of changes across the multiple copies of
102 each database. The other AFS server processes consult the file to learn
103 which machines to contact for information from the databases when they
104 need it.
105
106 Although the server F<CellServDB> file is in ASCII format, do not use a
107 text editor to alter it. Instead always use the appropriate commands from
108 the B<bos> command suite:
109
110 =over 4
111
112 =item *
113
114 The B<bos addhost> command to add a machine to the file.
115
116 =item *
117
118 The B<bos listhosts> command to display the list of machines from the
119 file.
120
121 =item *
122
123 The B<bos removehost> command to remove a machine from the file.
124
125 =back
126
127 In cells that use the Update Server to distribute the contents of the
128 F</usr/afs/etc> directory, it is customary to edit only the copy of the
129 file stored on the system control machine. Otherwise, edit the file on
130 each server machine individually. For instructions on adding and removing
131 database server machine, see the I<OpenAFS Quick Start> chapter on
132 installing additional server machines.
133
134 =head2 CellServDB Format
135
136 Both F<CellServDB> files have the same format:
137
138 =over 4
139
140 =item *
141
142 The first line begins at the left margin with the greater-than character
143 (C<< > >>), followed immediately by the cell's name without an intervening
144 space. Optionally, a comment can follow any number of spaces and a number
145 sign (C<#>), perhaps to identify the organization associated with the
146 cell.
147
148 =item *
149
150 Each subsequent line in the entry identifies one of the cell's database
151 server machines, with the indicated information in order:
152
153 =over 4
154
155 =item *
156
157 The database server machine's IP address in dotted-decimal format.
158
159 =item *
160
161 One or more spaces.
162
163 =item *
164
165 A number sign (#), followed by the machine's fully qualified hostname
166 without an intervening space. This number sign does not indicate that the
167 hostname is a comment. It is a required field.
168
169 =back
170
171 =back
172
173 No extra blank lines or newline characters are allowed in the file, even
174 after the last entry. Their presence can prevent the Cache Manager from
175 reading the file into kernel memory, resulting in an error message.
176
177 grand.central.org maintains a list of the database server machines in all
178 cells that have registered themselves as receptive to access from foreign
179 cells. When a cell's administrators change its database server machines,
180 it is customary to register the change with grand.central.org for
181 inclusion in this file. The file conforms to the required F<CellServDB>
182 format, and so is a suitable basis for the F<CellServDB> file on a client
183 machine.  You can download this file from L<http://grand.central.org/>.
184
185 =head1 EXAMPLES
186
187 The following example shows entries for two cells in a client
188 F<CellServDB> file and illustrates the required format.
189
190    >abc.com        # ABC Corporation
191    192.12.105.2         #db1.abc.com
192    192.12.105.3         #db2.abc.com
193    192.12.107.3         #db3.abc.com
194    >test.abc.com   # ABC Corporation Test Cell
195    192.12.108.57        #testdb1.abc.com
196    192.12.108.55        #testdb2.abc.com
197
198 =head1 SEE ALSO
199
200 L<afsd(8)>,
201 L<bos_addhost(8)>,
202 L<bos_listhosts(8)>,
203 L<bos_removehost(8)>,
204 L<bos_setcellname(8)>,
205 L<buserver(8)>,
206 L<fs_newcell(1)>,
207 L<kaserver(8)>,
208 L<klog(1)>,
209 L<ptserver(8)>,
210 L<vlserver(8)>,
211 L<upclient(8)>,
212 L<upserver(8)>
213
214 I<OpenAFS Quick Start>
215
216 =head1 COPYRIGHT
217
218 IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
219
220 This documentation is covered by the IBM Public License Version 1.0.  It was
221 converted from HTML to POD by software written by Chas Williams and Russ
222 Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.