mirror of
https://gitlab.isc.org/isc-projects/kea
synced 2025-09-03 15:35:17 +00:00
Update admin.xml
This commit is contained in:
committed by
Tomek Mrugalski
parent
43c5d677fa
commit
7448c45702
@@ -3,7 +3,7 @@
|
|||||||
-
|
-
|
||||||
- This Source Code Form is subject to the terms of the Mozilla Public
|
- This Source Code Form is subject to the terms of the Mozilla Public
|
||||||
- License, v. 2.0. If a copy of the MPL was not distributed with this
|
- License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
- file, you can obtain one at http://mozilla.org/MPL/2.0/.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<!-- Converted by db4-upgrade version 1.1 -->
|
<!-- Converted by db4-upgrade version 1.1 -->
|
||||||
@@ -15,12 +15,12 @@
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
Kea supports storing leases and host reservations (i.e. static
|
Kea supports storing leases and host reservations (i.e. static
|
||||||
assignments of addresses, prefixes and options) in one of
|
assignments of addresses, prefixes, and options) in one of
|
||||||
the several supported databases. As future versions of Kea
|
the several supported databases. As future versions of Kea
|
||||||
are released, the structure of those databases will change.
|
are released, the structure of those databases will change.
|
||||||
For example, Kea currently only stores lease information
|
For example, Kea currently only stores lease information
|
||||||
and host reservations. Future versions of Kea will store
|
and host reservations. Future versions of Kea will store
|
||||||
additional data such as subnet definitions: the database
|
additional data such as subnet definitions, so the database
|
||||||
structure will need to be updated to accommodate the extra
|
structure will need to be updated to accommodate the extra
|
||||||
information.
|
information.
|
||||||
</para>
|
</para>
|
||||||
@@ -31,8 +31,8 @@
|
|||||||
database it is using. Separate version numbers are maintained for
|
database it is using. Separate version numbers are maintained for
|
||||||
backend databases, independent of the version of Kea itself. It
|
backend databases, independent of the version of Kea itself. It
|
||||||
is possible that the backend database version will stay the same
|
is possible that the backend database version will stay the same
|
||||||
through several Kea revisions: similarly, it is possible that the
|
through several Kea revisions; similarly, it is possible that the
|
||||||
version of backend database may go up several revisions during a
|
version of the backend database may go up several revisions during a
|
||||||
Kea upgrade. Versions for each database are independent, so an
|
Kea upgrade. Versions for each database are independent, so an
|
||||||
increment in the MySQL database version does not imply an increment
|
increment in the MySQL database version does not imply an increment
|
||||||
in that of PostgreSQL.
|
in that of PostgreSQL.
|
||||||
@@ -41,16 +41,16 @@
|
|||||||
<para>
|
<para>
|
||||||
Backend versions are specified in
|
Backend versions are specified in
|
||||||
a <replaceable>major.minor</replaceable> format. The minor
|
a <replaceable>major.minor</replaceable> format. The minor
|
||||||
number is increased when there are backward compatible changes
|
number is increased when there are backward-compatible changes
|
||||||
introduced. For example, the addition of a new index. It is
|
introduced: for example, the addition of a new index. It is
|
||||||
desirable, but not mandatory to apply such a change; you
|
desirable but not mandatory to apply such a change; you
|
||||||
can run on older database version if you want to. (Although, in
|
can run an older database version if you want to. (Although, in
|
||||||
the example given, running without the new index may be at the
|
the example given, running without the new index may be at the
|
||||||
expense of a performance penalty.) On the other hand, the major
|
expense of a performance penalty.) On the other hand, the major
|
||||||
number is increased when an incompatible change is introduced,
|
number is increased when an incompatible change is introduced:
|
||||||
for example an extra column is added to a table. If you try to
|
for example, an extra column is added to a table. If you try to
|
||||||
run Kea software on a database that is too old (as signified by
|
run Kea software on a database that is too old (as signified by
|
||||||
mismatched backend major version number), Kea will refuse to run:
|
a mismatched backend major version number), Kea will refuse to run;
|
||||||
administrative action will be required to upgrade the database.
|
administrative action will be required to upgrade the database.
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
@@ -69,7 +69,7 @@
|
|||||||
<command>kea-admin</command> takes two mandatory
|
<command>kea-admin</command> takes two mandatory
|
||||||
parameters: <command>command</command> and
|
parameters: <command>command</command> and
|
||||||
<command>backend</command>. Additional, non-mandatory options
|
<command>backend</command>. Additional, non-mandatory options
|
||||||
may be specified. Currently supported commands are:
|
may be specified. The currently supported commands are:
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
<listitem>
|
<listitem>
|
||||||
@@ -102,8 +102,8 @@
|
|||||||
<listitem>
|
<listitem>
|
||||||
<simpara>
|
<simpara>
|
||||||
<command>lease-dump</command> —
|
<command>lease-dump</command> —
|
||||||
Dumps the contents of the lease database (for MySQL, PostgreSQL or
|
Dumps the contents of the lease database (for MySQL, PostgreSQL, or
|
||||||
CQL backends) to a CSV (comma separated values) text file. The first
|
CQL backends) to a CSV (comma-separated values) text file. The first
|
||||||
line of the file contains the column names. This is meant to be
|
line of the file contains the column names. This is meant to be
|
||||||
used as a diagnostic tool, so it provides a portable, human-readable
|
used as a diagnostic tool, so it provides a portable, human-readable
|
||||||
form of the lease data.
|
form of the lease data.
|
||||||
@@ -111,7 +111,7 @@
|
|||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
<command>backend</command> specifies the backend type. Currently
|
<command>backend</command> specifies the backend type. The currently
|
||||||
supported types are:
|
supported types are:
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
@@ -146,7 +146,7 @@
|
|||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
Additional parameters may be needed, depending on your setup
|
Additional parameters may be needed, depending on your setup
|
||||||
and specific operation: username, password and database name or
|
and specific operation: username, password, and database name or
|
||||||
the directory where specific files are located. See the appropriate
|
the directory where specific files are located. See the appropriate
|
||||||
manual page for details (<command>man 8 kea-admin</command>).
|
manual page for details (<command>man 8 kea-admin</command>).
|
||||||
</para>
|
</para>
|
||||||
@@ -158,7 +158,7 @@
|
|||||||
<para>The following table presents the capabilities of available
|
<para>The following table presents the capabilities of available
|
||||||
backends. Please refer to the specific sections dedicated to each backend to
|
backends. Please refer to the specific sections dedicated to each backend to
|
||||||
better understand their capabilities and limitations. Choosing the right
|
better understand their capabilities and limitations. Choosing the right
|
||||||
backend may be essential for success or failure of your deployment.</para>
|
backend may be essential for the success of your deployment.</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<table frame="all" xml:id="backends">
|
<table frame="all" xml:id="backends">
|
||||||
@@ -230,7 +230,7 @@
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
The memfile backend is able to store lease information, but is not able to
|
The memfile backend is able to store lease information, but is not able to
|
||||||
store host reservation details: these must be stored in the configuration
|
store host reservation details; these must be stored in the configuration
|
||||||
file. (There are no plans to add a host reservations storage capability to
|
file. (There are no plans to add a host reservations storage capability to
|
||||||
this backend.)
|
this backend.)
|
||||||
</para>
|
</para>
|
||||||
@@ -240,7 +240,7 @@
|
|||||||
for the memfile backend. During the first run, both
|
for the memfile backend. During the first run, both
|
||||||
<command>kea-dhcp4</command> and <command>kea-dhcp6</command>
|
<command>kea-dhcp4</command> and <command>kea-dhcp6</command>
|
||||||
will create an empty lease file if one is not
|
will create an empty lease file if one is not
|
||||||
present. Necessary disk write permission is required.
|
present. Necessary disk-write permission is required.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<section xml:id="memfile-upgrade">
|
<section xml:id="memfile-upgrade">
|
||||||
@@ -259,8 +259,8 @@
|
|||||||
appropriate default values. When downgrading, any data present in
|
appropriate default values. When downgrading, any data present in
|
||||||
the files but not in the server's schema will be dropped.
|
the files but not in the server's schema will be dropped.
|
||||||
|
|
||||||
If you wish to convert the files manually, prior to starting the
|
If you wish to convert the files manually prior to starting the
|
||||||
servers you may do so by running the LFC process yourself.
|
servers, you may do so by running the LFC process yourself.
|
||||||
See <xref linkend="kea-lfc"/> for more information.
|
See <xref linkend="kea-lfc"/> for more information.
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
@@ -271,19 +271,19 @@
|
|||||||
<title>MySQL</title>
|
<title>MySQL</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
MySQL is able to store leases, host reservations and options defined on
|
MySQL is able to store leases, host reservations, and options defined on
|
||||||
a per host basis. This section can be safely ignored
|
a per-host basis. This section can be safely ignored
|
||||||
if you chose to store the data in other backends.
|
if you choose to store the data in other backends.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<section xml:id="mysql-database-create">
|
<section xml:id="mysql-database-create">
|
||||||
<title>First Time Creation of the MySQL Database</title>
|
<title>First-Time Creation of the MySQL Database</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
If you are setting the MySQL database for the first time,
|
If you are setting the MySQL database for the first time,
|
||||||
you need to create the database area within MySQL and set up
|
you need to create the database area within MySQL and set up
|
||||||
the MySQL user ID under which Kea will access the database.
|
the MySQL user ID under which Kea will access the database.
|
||||||
This needs to be done manually: <command>kea-admin</command>
|
This needs to be done manually; <command>kea-admin</command>
|
||||||
is not able to do this for you.
|
is not able to do this for you.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@@ -324,7 +324,7 @@ mysql> <userinput>GRANT ALL ON <replaceable>database-name</replaceable>.* TO
|
|||||||
</screen>
|
</screen>
|
||||||
(<replaceable>user-name</replaceable> and
|
(<replaceable>user-name</replaceable> and
|
||||||
<replaceable>password</replaceable> are the user ID
|
<replaceable>password</replaceable> are the user ID
|
||||||
and password you are using to allow Keas access to the
|
and password you are using to allow Kea's access to the
|
||||||
MySQL instance. All apostrophes in the command lines
|
MySQL instance. All apostrophes in the command lines
|
||||||
above are required.)
|
above are required.)
|
||||||
</para>
|
</para>
|
||||||
@@ -359,17 +359,17 @@ $
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
If you elected not to create the tables in step 4, you can do
|
If you elected not to create the tables in Step 4, you can do
|
||||||
so now by running the <command>kea-admin</command> tool:
|
so now by running the <command>kea-admin</command> tool:
|
||||||
<screen>
|
<screen>
|
||||||
$ <userinput>kea-admin lease-init mysql -u <replaceable>database-user</replaceable> -p <replaceable>database-password</replaceable> -n <replaceable>database-name</replaceable></userinput>
|
$ <userinput>kea-admin lease-init mysql -u <replaceable>database-user</replaceable> -p <replaceable>database-password</replaceable> -n <replaceable>database-name</replaceable></userinput>
|
||||||
</screen>
|
</screen>
|
||||||
(Do not do this if you did create the tables in step 4.)
|
(Do not do this if you did create the tables in Step 4.)
|
||||||
<command>kea-admin</command> implements rudimentary checks:
|
<command>kea-admin</command> implements rudimentary checks;
|
||||||
it will refuse to initialize a database that contains any
|
it will refuse to initialize a database that contains any
|
||||||
existing tables. If you want to start from scratch, you
|
existing tables. If you want to start from scratch, you
|
||||||
must remove all data manually. (This process is a manual
|
must remove all data manually. (This process is a manual
|
||||||
operation on purpose to avoid possibly irretrievable mistakes
|
operation on purpose, to avoid possibly irretrievable mistakes
|
||||||
by <command>kea-admin</command>.)
|
by <command>kea-admin</command>.)
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
@@ -378,8 +378,8 @@ $ <userinput>kea-admin lease-init mysql -u <replaceable>database-user</replaceab
|
|||||||
<title>Upgrading a MySQL Database from an Earlier Version of Kea</title>
|
<title>Upgrading a MySQL Database from an Earlier Version of Kea</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Sometimes a new Kea version may use newer database schema, so
|
Sometimes a new Kea version may use a newer database schema, so
|
||||||
there will be a need to upgrade the existing database. This can
|
the existing database will need to be upgraded. This can
|
||||||
be done using the <command>kea-admin lease-upgrade</command>
|
be done using the <command>kea-admin lease-upgrade</command>
|
||||||
command.
|
command.
|
||||||
</para>
|
</para>
|
||||||
@@ -397,7 +397,7 @@ $ <userinput>kea-admin lease-version mysql -u <replaceable>database-user</replac
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
Before upgrading, please make sure that the database is
|
Before upgrading, please make sure that the database is
|
||||||
backed up. The upgrade process does not discard any data but,
|
backed up. The upgrade process does not discard any data, but
|
||||||
depending on the nature of the changes, it may be impossible
|
depending on the nature of the changes, it may be impossible
|
||||||
to subsequently downgrade to an earlier version. To perform
|
to subsequently downgrade to an earlier version. To perform
|
||||||
an upgrade, issue the following command:
|
an upgrade, issue the following command:
|
||||||
@@ -412,15 +412,15 @@ $ <userinput>kea-admin lease-upgrade mysql -u <replaceable>database-user</replac
|
|||||||
<title>PostgreSQL</title>
|
<title>PostgreSQL</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
PostgreSQL is able to store leases, host reservations and options
|
PostgreSQL is able to store leases, host reservations, and options
|
||||||
defined on a per host basis.
|
defined on a per-host basis.
|
||||||
A PostgreSQL database must be set up if you want Kea to store
|
A PostgreSQL database must be set up if you want Kea to store
|
||||||
lease and other information in PostgreSQL. This step can be
|
lease and other information in PostgreSQL. This step can be
|
||||||
safely ignored if you are using other database backends.
|
safely ignored if you are using other database backends.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<section xml:id="pgsql-database-create">
|
<section xml:id="pgsql-database-create">
|
||||||
<title>First Time Creation of the PostgreSQL Database</title>
|
<title>First-Time Creation of the PostgreSQL Database</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
The first task is to create both the lease database and the
|
The first task is to create both the lease database and the
|
||||||
@@ -483,11 +483,11 @@ $
|
|||||||
At this point you are ready to create the database tables.
|
At this point you are ready to create the database tables.
|
||||||
This can be done using the <command>kea-admin</command> tool
|
This can be done using the <command>kea-admin</command> tool
|
||||||
as explained in the next section (recommended), or manually.
|
as explained in the next section (recommended), or manually.
|
||||||
To create the tables manually enter the following command.
|
To create the tables manually, enter the following command.
|
||||||
Note that PostgreSQL will prompt you to enter the new user's
|
Note that PostgreSQL will prompt you to enter the new user's
|
||||||
password you specified in Step 3. When the command completes
|
password you specified in Step 3. When the command completes,
|
||||||
you will be returned to the shell prompt. You should see output
|
you will be returned to the shell prompt. You should see output
|
||||||
similar to following:
|
similar to the following:
|
||||||
<screen>
|
<screen>
|
||||||
$ <userinput>psql -d <replaceable>database-name</replaceable> -U <replaceable>user-name</replaceable> -f <replaceable>path-to-kea</replaceable>/share/kea/scripts/pgsql/dhcpdb_create.pgsql</userinput>
|
$ <userinput>psql -d <replaceable>database-name</replaceable> -U <replaceable>user-name</replaceable> -f <replaceable>path-to-kea</replaceable>/share/kea/scripts/pgsql/dhcpdb_create.pgsql</userinput>
|
||||||
Password for user <replaceable>user-name</replaceable>:
|
Password for user <replaceable>user-name</replaceable>:
|
||||||
@@ -522,14 +522,14 @@ psql: FATAL: no pg_hba.conf entry for host "[local]", user "<replaceable>user-n
|
|||||||
the database and must have the appropriate entries
|
the database and must have the appropriate entries
|
||||||
added to PostgreSQL's pg_hba.conf file. This file is
|
added to PostgreSQL's pg_hba.conf file. This file is
|
||||||
normally located in the primary data directory for your
|
normally located in the primary data directory for your
|
||||||
PostgreSQL server. The precise path may vary but the
|
PostgreSQL server. The precise path may vary, but the
|
||||||
default location for PostgreSQL 9.3 on Centos 6.5 is:
|
default location for PostgreSQL 9.3 on Centos 6.5 is:
|
||||||
<filename>/var/lib/pgsql/9.3/data/pg_hba.conf</filename>.
|
<filename>/var/lib/pgsql/9.3/data/pg_hba.conf</filename>.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Assuming Kea is running on the same host as PostgreSQL,
|
Assuming Kea is running on the same host as PostgreSQL,
|
||||||
adding lines similar to following should be sufficient to
|
adding lines similar to the following should be sufficient to
|
||||||
provide password-authenticated access to Kea's database:
|
provide password-authenticated access to Kea's database:
|
||||||
<screen>
|
<screen>
|
||||||
local <replaceable>database-name</replaceable> <replaceable>user-name</replaceable> password
|
local <replaceable>database-name</replaceable> <replaceable>user-name</replaceable> password
|
||||||
@@ -539,10 +539,10 @@ host <replaceable>database-name</replaceable> <replaceable>user-name</repl
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
These edits are primarily intended as a starting point
|
These edits are primarily intended as a starting point, and are
|
||||||
not a definitive reference on PostgreSQL administration or
|
not a definitive reference on PostgreSQL administration or
|
||||||
database security. Please consult your PostgreSQL user
|
database security. Please consult your PostgreSQL user
|
||||||
manual before making these changes as they may expose
|
manual before making these changes, as they may expose
|
||||||
other databases that you run. It may be necessary to
|
other databases that you run. It may be necessary to
|
||||||
restart PostgreSQL in order for these changes to take effect.
|
restart PostgreSQL in order for these changes to take effect.
|
||||||
</para>
|
</para>
|
||||||
@@ -559,12 +559,12 @@ host <replaceable>database-name</replaceable> <replaceable>user-name</repl
|
|||||||
<screen>
|
<screen>
|
||||||
$ <userinput>kea-admin lease-init pgsql -u <replaceable>database-user</replaceable> -p <replaceable>database-password</replaceable> -n <replaceable>database-name</replaceable></userinput>
|
$ <userinput>kea-admin lease-init pgsql -u <replaceable>database-user</replaceable> -p <replaceable>database-password</replaceable> -n <replaceable>database-name</replaceable></userinput>
|
||||||
</screen>
|
</screen>
|
||||||
Do not do this if you already created the tables in manually.
|
Do not do this if you already created the tables manually.
|
||||||
<command>kea-admin</command> implements rudimentary checks:
|
<command>kea-admin</command> implements rudimentary checks;
|
||||||
it will refuse to initialize a database that contains any
|
it will refuse to initialize a database that contains any
|
||||||
existing tables. If you want to start from scratch, you
|
existing tables. If you want to start from scratch, you
|
||||||
must remove all data manually. (This process is a manual
|
must remove all data manually. (This process is a manual
|
||||||
operation on purpose to avoid possibly irretrievable mistakes
|
operation on purpose, to avoid possibly irretrievable mistakes
|
||||||
by <command>kea-admin</command>.)
|
by <command>kea-admin</command>.)
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
@@ -594,25 +594,24 @@ $ <userinput>kea-admin lease-upgrade pgsql -u <replaceable>database-user</replac
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
Cassandra, or Cassandra Query Language (CQL), is the newest backend
|
Cassandra, or Cassandra Query Language (CQL), is the newest backend
|
||||||
added to Kea. Since it was added recently and has not undergone as much
|
added to Kea; initial development was contributed by Deutsche Telekom.
|
||||||
testing as other backends, it is considered experimental. Please use
|
The Cassandra backend is able to store leases,
|
||||||
with caution. The Cassandra backend is able to store leases,
|
host reservations, and options defined on a per-host basis.
|
||||||
host reservations and options defined on a per host basis.
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
The CQL database must be properly set up if you want Kea to store
|
The CQL database must be properly set up if you want Kea to store
|
||||||
information in CQL. This section can be safely ignored if you chose to
|
information in CQL. This section can be safely ignored if you choose to
|
||||||
store the data in other backends.
|
store the data in other backends.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<section xml:id="cql-database-create">
|
<section xml:id="cql-database-create">
|
||||||
<title>First Time Creation of the Cassandra Database</title>
|
<title>First-Time Creation of the Cassandra Database</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
If you are setting up the CQL database for the first time, you need to
|
If you are setting up the CQL database for the first time, you need to
|
||||||
create the keyspace area within CQL. This needs to be done manually:
|
create the keyspace area within CQL. This needs to be done manually;
|
||||||
<command>kea-admin</command> is not able to do this for you.
|
<command>kea-admin</command> cannot do this for you.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
@@ -651,7 +650,7 @@ cql> <userinput>CREATE KEYSPACE keyspace-name WITH replication = {'class' : '
|
|||||||
<para>
|
<para>
|
||||||
At this point, you may elect to create the database tables.
|
At this point, you may elect to create the database tables.
|
||||||
(Alternatively, you can exit CQL and create the tables using the
|
(Alternatively, you can exit CQL and create the tables using the
|
||||||
<command>kea-admin</command> tool, as explained below) To do this:
|
<command>kea-admin</command> tool, as explained below.) To do this:
|
||||||
<screen>
|
<screen>
|
||||||
<userinput>cqslh -k <replaceable>keyspace-name</replaceable> -f <replaceable>path-to-kea</replaceable>/share/kea/scripts/cql/dhcpdb_create.cql</userinput>
|
<userinput>cqslh -k <replaceable>keyspace-name</replaceable> -f <replaceable>path-to-kea</replaceable>/share/kea/scripts/cql/dhcpdb_create.cql</userinput>
|
||||||
</screen>
|
</screen>
|
||||||
@@ -663,18 +662,18 @@ cql> <userinput>CREATE KEYSPACE keyspace-name WITH replication = {'class' : '
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
If you elected not to create the tables in step 4, you can do
|
If you elected not to create the tables in Step 4, you can do
|
||||||
so now by running the <command>kea-admin</command> tool:
|
so now by running the <command>kea-admin</command> tool:
|
||||||
<screen>
|
<screen>
|
||||||
$ <userinput>kea-admin lease-init cql -n <replaceable>database-name</replaceable></userinput>
|
$ <userinput>kea-admin lease-init cql -n <replaceable>database-name</replaceable></userinput>
|
||||||
</screen>
|
</screen>
|
||||||
(Do not do this if you did create the tables in step 4.)
|
(Do not do this if you did create the tables in Step 4.)
|
||||||
<command>kea-admin</command> implements rudimentary checks:
|
<command>kea-admin</command> implements rudimentary checks;
|
||||||
it will refuse to initialize a database that contains any
|
it will refuse to initialize a database that contains any
|
||||||
existing tables. If you want to start from scratch, you
|
existing tables. If you want to start from scratch, you
|
||||||
must remove all data manually. (This process is a manual
|
must remove all data manually. (This process is a manual
|
||||||
operation on purpose to avoid possibly irretrievable mistakes
|
operation on purpose, to avoid possibly irretrievable mistakes
|
||||||
by <command>kea-admin</command>)
|
by <command>kea-admin</command>.)
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
@@ -682,8 +681,8 @@ $ <userinput>kea-admin lease-init cql -n <replaceable>database-name</replaceable
|
|||||||
<title>Upgrading a CQL Database from an Earlier Version of Kea</title>
|
<title>Upgrading a CQL Database from an Earlier Version of Kea</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Sometimes a new Kea version may use newer database schema, so
|
Sometimes a new Kea version may use a newer database schema, so
|
||||||
there will be a need to upgrade the existing database. This can
|
the existing database will need to be upgraded. This can
|
||||||
be done using the <command>kea-admin lease-upgrade</command>
|
be done using the <command>kea-admin lease-upgrade</command>
|
||||||
command.
|
command.
|
||||||
</para>
|
</para>
|
||||||
@@ -694,14 +693,14 @@ $ <userinput>kea-admin lease-init cql -n <replaceable>database-name</replaceable
|
|||||||
$ <userinput>kea-admin lease-version cql -n <replaceable>database-name</replaceable></userinput>
|
$ <userinput>kea-admin lease-version cql -n <replaceable>database-name</replaceable></userinput>
|
||||||
</screen>
|
</screen>
|
||||||
(See <xref linkend="kea-database-version"/> for a discussion
|
(See <xref linkend="kea-database-version"/> for a discussion
|
||||||
about versioning) If the version does not match the minimum
|
about versioning.) If the version does not match the minimum
|
||||||
required for the new version of Kea (as described in the
|
required for the new version of Kea (as described in the
|
||||||
release notes), the database needs to be upgraded.
|
release notes), the database needs to be upgraded.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Before upgrading, please make sure that the database is
|
Before upgrading, please make sure that the database is
|
||||||
backed up. The upgrade process does not discard any data but,
|
backed up. The upgrade process does not discard any data, but
|
||||||
depending on the nature of the changes, it may be impossible
|
depending on the nature of the changes, it may be impossible
|
||||||
to subsequently downgrade to an earlier version. To perform
|
to subsequently downgrade to an earlier version. To perform
|
||||||
an upgrade, issue the following command:
|
an upgrade, issue the following command:
|
||||||
@@ -725,21 +724,21 @@ $ <userinput>kea-admin lease-upgrade cql -n <replaceable>database-name</replacea
|
|||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section>
|
<section>
|
||||||
<title>Limitations Related to the use of SQL Databases</title>
|
<title>Limitations Related to the Use of SQL Databases</title>
|
||||||
|
|
||||||
|
|
||||||
<section>
|
<section>
|
||||||
<title>Year 2038 issue</title>
|
<title>Year 2038 Issue</title>
|
||||||
<para>
|
<para>
|
||||||
The lease expiration time is stored in the SQL database for each lease
|
The lease expiration time is stored in the SQL database for each lease
|
||||||
as a timestamp value. Kea developers observed that MySQL database doesn't
|
as a timestamp value. Kea developers observed that the MySQL database doesn't
|
||||||
accept timestamps beyond 2147483647 seconds (maximum signed 32-bit number)
|
accept timestamps beyond 2147483647 seconds (maximum signed 32-bit number)
|
||||||
from the beginning of the epoch. At the same time, some versions of PostgreSQL
|
from the beginning of the epoch. Some versions of PostgreSQL
|
||||||
do accept greater values but the value is altered when it is read back.
|
do accept greater values, but the value is altered when it is read back.
|
||||||
For this reason the lease database backends put the restriction for the
|
For this reason, the lease database backends put a restriction on the
|
||||||
maximum timestamp to be stored in the database, which is equal to the
|
maximum timestamp to be stored in the database, which is equal to the
|
||||||
maximum signed 32-bit number. This effectively means that the current
|
maximum signed 32-bit number. This effectively means that the current
|
||||||
Kea version can't store the leases which expiration time is later than
|
Kea version cannot store leases whose expiration time is later than
|
||||||
2147483647 seconds since the beginning of the epoch (around year 2038).
|
2147483647 seconds since the beginning of the epoch (around year 2038).
|
||||||
This will be fixed when the database support for longer timestamps
|
This will be fixed when the database support for longer timestamps
|
||||||
is available.
|
is available.
|
||||||
|
Reference in New Issue
Block a user