aboutsummaryrefslogtreecommitdiff
path: root/rpkid/doc/Operation
diff options
context:
space:
mode:
Diffstat (limited to 'rpkid/doc/Operation')
-rw-r--r--rpkid/doc/Operation86
1 files changed, 42 insertions, 44 deletions
diff --git a/rpkid/doc/Operation b/rpkid/doc/Operation
index 7def1e5c..7960ebfa 100644
--- a/rpkid/doc/Operation
+++ b/rpkid/doc/Operation
@@ -1,9 +1,8 @@
Operation Guide
- Preliminary operation instructions for rpkid et al.
+ Production-side RPKI tools, for Internet Registries (RIRs, LIRs, etc).
- These are the production-side RPKI tools, for Internet Registries
- (RIRs, LIRs, etc). See rcynic/README for relying party tools.
+ See rcynic/README for relying party tools.
Warning:
rpkid is still in development, and the code changes more often
@@ -17,41 +16,41 @@ Operation Guide
In addition to the library routines in the rpkid/rpki/ directory, the
package includes the following programs:
- * rpkid.py: The main RPKI engine daemon.
+ * rpkid : The main RPKI engine daemon.
- * pubd.py: The publication engine daemon.
+ * pubd : The publication engine daemon.
- * rootd.py: A separate daemon for handling the root of an RPKI
+ * rootd : A separate daemon for handling the root of an RPKI
certificate tree. This is essentially a stripped down version of
rpkid with no SQL database, no left-right protocol implementation,
and only the parent side of the up-down protocol. It's separate
because the root is a special case in several ways and it was
simpler to keep the special cases out of the main daemon.
- * irdbd.py: A sample implementation of an IR database daemon. rpkid
+ * irdbd : A sample implementation of an IR database daemon. rpkid
calls into this to perform lookups via the left-right protocol.
- * irbe_cli.py: A command-line client for the left-right control
+ * irbe_cli : A command-line client for the left-right control
protocol. Very obscure syntax, badly needs rewriting.
- * testbed.py: A test tool for running a collection of rpkid and irdb
+ * smoketest : A test tool for running a collection of rpkid and irdb
instances under common control, driven by a unified test script.
- * yamltest.py: Another test tool which takes the same input format as
- testbed.py, but with slightly different purpose. testbed.py is
+ * yamltest : Another test tool which takes the same input format as
+ smoketest.py, but with slightly different purpose. smoketest.py is
intended to support regression tests, while yamltest.py is intended
for automated testing of something closer to a real operational
environment. There's a fair amount of code duplication between the
two, and at some point they will probably be merged into a single
program that supports both modes of operation.
- * testpoke.py: A simple client for the up-down protocol, mostly
+ * testpoke : A simple client for the up-down protocol, mostly
compatable with APNIC's rpki_poke.pl tool.
Most of these programs take configuration files in a common format
similar to that used by the OpenSSL command line tool. The test
programs also take input in YAML format to drive the tests. Runs of the
- yamltest.py test tool will generate a fairly complete set configuration
+ yamltest test tool will generate a fairly complete set configuration
files which may be useful as examples.
Basic operation consists of creating the appropriate MySQL databases,
@@ -111,15 +110,15 @@ Common Options
* dump_inbound_cms Dump messages we receive to this mailbox.
-rpkid.py
+rpkid
rpkid is the main RPKI engine daemon. Configuration of rpkid is a two
step process: a config file to bootstrap rpkid to the point where it
can speak using the left-right protocol, followed by dynamic
configuration via the left-right protocol. In production use the latter
stage would be handled by the IRBE stub; for test and develoment
- purposes it's handled by the irbe_cli.py command line interface or by
- the testbed.py test framework.
+ purposes it's handled by the irbe_cli command line interface or by the
+ smoketest test framework.
rpkid stores dynamic data in an SQL database, which must have been
created for it, as explained in the installation guide.
@@ -165,7 +164,7 @@ rpkid.py
* server-port: TCP port on which to listen for HTTPS connections.
-pubd.py
+pubd
pubd is the publication daemon. It implements the server side of the
publication protocol, and is used by rpkid to publish the certificates
@@ -229,7 +228,7 @@ pubd.py
* publication-base: Path to base of filesystem tree where pubd should
store publishable objects. Default is "publication/".
-rootd.py
+rootd
rootd is a stripped down implmenetation of (only) the server side of
the up-down protocol. It's a separate program because the root
@@ -289,7 +288,7 @@ rootd.py
This is only used for debugging. Default is not to save the PKCS
#10 request.
-irdbd.py
+irdbd
irdbd is a sample implemntation of the server side of the IRDB callback
subset of the left-right protocol. In production use this service is a
@@ -335,7 +334,7 @@ irdbd.py
* https-url: Service URL for irdbd. Must be a https:// URL.
-irbe_cli.py
+irbe_cli
irbe_cli is a simple command line client for the control subsets of the
left-right and publication protocols. In production use this
@@ -474,9 +473,9 @@ M
* pubd-url: Service URL for pubd. Must be a https:// URL.
-cross_certify.py
+cross_certify
- cross_certify.py is a small tool to extract certain fields from an
+ cross_certify is a small tool to extract certain fields from an
existing X.509 certificate and generate issue a new certificate that
can be used as part of a cross-certification chain. cross_certify
doesn't take a config file, all of its arguments are specified on the
@@ -489,7 +488,7 @@ cross_certify.py
[ { -o | --out } filename ]
[ { -l | --lifetime } timedelta ]
-cronjob.py
+cronjob
This is a trivial program to trigger a cron run within rpkid.
Ordinarilly rpkid runs its own internal cron process, but for scripted
@@ -505,7 +504,7 @@ cronjob.py
* bpki-ta: Name of file containing BPKI trust anchor.
- * irbe-cert: Name of file containing cronjob.py's BPKI certificate.
+ * irbe-cert: Name of file containing cronjob's BPKI certificate.
* https-key: Name of file containing RSA key corresponding to
irbe-cert.
@@ -514,19 +513,18 @@ cronjob.py
* https-url: Service URL for rpkid. Must be a https:// URL.
-testbed.py:
+smoketest:
- testbed is a test harness to set up and run a collection of rpkid and
- irdbd instances under scripted control. testbed is a very recent
- addition to the toolset and is still evolving rapidly.
+ smoketest is a test harness to set up and run a collection of rpkid and
+ irdbd instances under scripted control.
- Unlike the programs described above, testbed takes two configuration
+ Unlike the programs described above, smoketest takes two configuration
files in different languages. The first configuration file uses the
same syntax as the above configuration files but is completely
optional. The second configuration file is the test script, which is
encoded using the YAML serialization language (see http://www.yaml.org/
for more information on YAML). The YAML script is not optional, as it
- describes the test layout. testbed is designed to support running a
+ describes the test layout. smoketest is designed to support running a
fairly wide set of test configurations as canned scripts without
writing any new control code. The intent is to make it possible to
write meaningful regression tests.
@@ -535,12 +533,12 @@ testbed.py:
just overrides for wired-in default values. In most cases the defaults
will suffice, and the set of options is still in flux, so only a few of
the options are described here. The default name for this configuration
- file is testbed.conf, run testbed with "-c filename" to change it.
+ file is smoketest.conf, run smoketest with "-c filename" to change it.
- testbed.conf options:
+ smoketest.conf options:
- * testbed_dir: Working directory into which testbed should write the
- (many) files it generates. Default is "testbed.dir".
+ * smoketest_dir: Working directory into which smoketest should write
+ the (many) files it generates. Default is "smoketest.dir".
* irdb_db_pass: MySQL password for the "irdb" user. Default is
"fnord". You may want to override this.
@@ -553,11 +551,11 @@ testbed.py:
certificate. Default is "rsync://wombat.invalid/". You may want to
override this if you intend to run an rsync server and test against
the generated results using rcynic. This default will likely change
- if and when testbed learns how to run rcynic itself as part of the
- test suite.
+ if and when smoketest learns how to run rcynic itself as part of
+ the test suite.
- The second configuration file is named testbed.yaml by default, run
- testbed with "-y filename" to change it. The YAML file contains
+ The second configuration file is named smoketest.yaml by default, run
+ smoketest with "-y filename" to change it. The YAML file contains
multiple YAML "documents". The first document describes the initial
test layout and resource allocations, subsequent documents describe
modifications to the initial allocations and other parameters.
@@ -616,7 +614,7 @@ testbed.py:
* valid_add, valid_sub: Add to or subtract from validity interval.
- * sleep [interval]: Sleep for specified interval, or until testbed
+ * sleep [interval]: Sleep for specified interval, or until smoketest
receives a SIGALRM signal.
Absolute timestamps should be in the form shown (UTC timestamp format
@@ -629,7 +627,7 @@ testbed.py:
the fields are optional, but at least one must be specified. For
example, "3D4H" means "three days plus four hours".
-testpoke.py
+testpoke
This is a command-line client for the up-down protocol. Unlike all of
the above programs, testpoke does not accept a config file in
@@ -644,8 +642,8 @@ testpoke.py
http://mirin.apnic.net/svn/rpki_engine/branches/gary-poker/client/poke/
README.
- testpoke.py takes a simplified command line and uses only one YAML
- input file.
+ testpoke takes a simplified command line and uses only one YAML input
+ file.
Usage: python testpoke.py [ { -y | --yaml } configfile ]
[ { -r | --request } requestname ]
[ { -h | --help } ]
@@ -658,7 +656,7 @@ testpoke.py
Sample configuration file:
---
- # Sample YAML configuration file for testpoke.py
+ # Sample YAML configuration file for testpoke
version: 1
posturl: https://localhost:4433/up-down/1
@@ -697,5 +695,5 @@ testpoke.py
__________________________________________________________________
- Generated on Tue Apr 13 22:26:15 2010 for RPKI Engine by doxygen
+ Generated on Wed Apr 14 12:58:45 2010 for RPKI Engine by doxygen
1.6.3