github.com/cloud-foundations/dominator@v0.0.0-20221004181915-6e4fee580046/cmd/imageserver/README.md (about)

     1  # imageserver
     2  The *imageserver* daemon serves images and objects for the **Dominator** system.
     3  
     4  ## Status page
     5  The *imageserver* provides a web interface on port `6971` which provides a
     6  status page, links to built-in dashboards and access to performance metrics and
     7  logs. If *imageserver* is running on host `myhost` then the URL of the main
     8  status page is `http://myhost:6971/`. An RPC over HTTP interface is also
     9  provided over the same port.
    10  
    11  
    12  ## Startup
    13  *Imageserver* is started at boot time, usually by one of the provided
    14  [init scripts](../../init.d/). The *imageserver* process is baby-sat by the init
    15  script; if the process dies the init script will re-start it. It may be stopped
    16  with the command:
    17  
    18  ```
    19  service imageserver stop
    20  ```
    21  
    22  which also kills the baby-sitting init script. It may be started with the
    23  comand:
    24  
    25  ```
    26  service imageserver start
    27  ```
    28  
    29  There are many command-line flags which may change the behaviour of
    30  *imageserver* but many have defaults which should be adequate for most
    31  deployments. Built-in help is available with the command:
    32  
    33  ```
    34  imageserver -h
    35  ```
    36  
    37  ### Key configuration parameters
    38  The init script reads configuration parameters from the
    39  `/etc/default/imageserver` file. The following is the minimum likely set of
    40  parameters that will need to be configured.
    41  
    42  If `ARCHIVE_MODE` is set to `true` then the *imageserver* will ignore all
    43  **delete** operations, effectively turning it into an archiver (backup).
    44  
    45  The `IMAGE_DIR` variable specifies the directory where images are stored. It is
    46  recommended to specify a directory on a file-system with plenty of free space.
    47  
    48  The `IMAGE_SERVER_HOSTNAME` variable specifies another *imageserver* which will
    49  serve as the source of image updates. This may be used to configure simple, fast
    50  and secure image replication between *imageservers*. If this variable is unset
    51  then the *imageserver* is a master/standalone server
    52  
    53  The `OBJECT_DIR` variable specifies the directory where objects are stored. It
    54  is recommended to specify a directory on a file-system with plenty of free
    55  space.
    56  
    57  The `USERNAME` variable specifies the username that *imageserver* should run as.
    58  Since *imageserver* does not need root privileges, the init script runs
    59  *imageserver* as this user.
    60  
    61  ## Security
    62  RPC access is restricted using TLS client authentication. *Imageserver* expects
    63  a root certificate in the file `/etc/ssl/CA.pem` which it trusts to sign
    64  certificates which grant access. It also requires a certificate and key which
    65  grant it the ability to **get** images and objects from another imageserver.
    66  These should be in the files `/etc/ssl/imageserver/cert.pem` and
    67  `/etc/ssl/imageserver/key.pem`, respectively.
    68  
    69  ## Control
    70  The *[imagetool](../imagetool/README.md)* utility may be used to add, delete,
    71  get and compare images. It is the most important utility in the **Dominator**
    72  system.