Ubuntu Mirror

  • Ubuntu Mirror Charm Maintainers
Channel Revision Published Runs on
latest/stable 67 08 Dec 2024
Ubuntu 22.04 Ubuntu 20.04 Ubuntu 18.04
latest/stable 49 12 Jun 2024
Ubuntu 22.04 Ubuntu 20.04 Ubuntu 18.04
latest/stable 48 12 Jun 2024
Ubuntu 22.04 Ubuntu 20.04 Ubuntu 18.04
latest/stable 46 12 Jun 2024
Ubuntu 22.04 Ubuntu 20.04 Ubuntu 18.04
latest/stable 45 30 Apr 2024
Ubuntu 22.04 Ubuntu 20.04 Ubuntu 18.04
juju deploy ubuntu-mirror
Show information

Platform:

Ubuntu
22.04 20.04 18.04

Learn about configurations >

  • apache_delete_logs_after | int

    Default: 14

    Delete apache logs after n days.

  • apache_listenbacklog | int

    Default: 511

    The maximum length of the queue of pending connections

  • apache_listencoresbucketsratio | int

    Ratio between the number of CPU cores (online) and the number of listeners' buckets

  • apache_logdir | string

    Default: /var/log/apache2

    Where Apache logfiles should be written

  • apache_maxclients | int

    Default: 4096

    Maximum number of simultaneous client connections

  • apache_maxrequestsperchild | int

    Maximum number of requests a server process serves

  • apache_maxsparethreads | int

    Default: 100

    Maximum number of Apache worker threads which are kept spare

  • apache_minsparethreads | int

    Default: 50

    Minimum number of Apache worker threads which are kept spare

  • apache_modules | string

    A space separated list of extra apache modules to enable

  • apache_serverlimit | int

    Default: 256

    Maximum number of Apache server processes allowed

  • apache_startservers | int

    Default: 2

    Initial number of Apache server processes to start

  • apache_status_allowed_from | string

    Default: []

    A list of IP addresses allowed to access the Apache server-status page

  • apache_threadlimit | int

    Default: 64

    Upper limit of ThreadsPerChild allowed in a graceful restart

  • apache_threadsperchild | int

    Default: 64

    Constant number of worker threads in each Apache server process

  • application_name | string

    Default: ubuntu-mirror

    The name of this charm

  • archive_logs_after | int

    Default: 1

    Archive the logs after n days. This is only used when a suitable log-archive subordinate charm is provided

  • archive_logs_apache | boolean

    Default: True

    Enable log archiving for Apache logs

  • archive_logs_ftp | boolean

    Enable log archiving for FTP logs

  • archive_logs_rsync | boolean

    Enable log archiving for Rsync logs

  • disk_inode_crit | string

    Default: 5%

    Disk inode critical threshold

  • disk_space_crit | string

    Default: 20%

    Disk space critical threshold

  • disk_space_warn | string

    Default: 25%

    Disk space warning threshold

  • ftp_delete_logs_after | int

    Default: 28

    Delete FTP logs after n days.

  • ftp_logdir | string

    Default: /var/log/ftp

    Where ftpd logfiles should be written

  • ftp_max_instances | int

    Default: 200

    Maximum number of FTP connections allowed

  • ftp_max_per_source | int

    Default: 10

    Maximum number of concurrent FTP connections allowed

  • ftp_welcome_banner | string

    Default: FTP server (vsftpd)

    FTP welcome message

  • mirror_cdimage_aliases | string

    Default: []

    List of Apache aliases for the cdimage mirror

  • mirror_cdimage_command | string

    Default: mirror-1stage.sh

    The command to use to sync the cdimage mirror

  • mirror_cdimage_description | string

    Default: Ubuntu CD Images

    A brief welcome message for the cdimage mirror

  • mirror_cdimage_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_cdimage_name | string

    Default: cdimage.ubuntu.com

    FQDN of the cdimage mirror

  • mirror_cdimage_path | string

    Default: /srv/ftp.root/cdimage

    Root location of mirrored files for the cdimage mirror

  • mirror_cdimage_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_cdimage_source_url

  • mirror_cdimage_rsync_log | boolean

    Default: True

    Whether to log rsync requests for the cdimage mirror

  • mirror_cdimage_rsync_module | string

    Default: cdimage

    The name of the rsync module for this mirror role

  • mirror_cdimage_source_url | string

    Default: rsync://cdimage.ubuntu.com/cdimage

    The URL the cdimage mirror will be fetched from

  • mirror_cdimage_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_cdimage_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_cdimage_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_cloud-images_aliases | string

    Default: []

    List of Apache aliases for the cloud-images mirror

  • mirror_cloud-images_command | string

    Default: mirror-1stage.sh

    The command to use to sync the cloud-images mirror

  • mirror_cloud-images_description | string

    Default: Ubuntu Cloud Images

    A brief welcome message for the cloud-images mirror

  • mirror_cloud-images_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_cloud-images_name | string

    Default: cloud-images.ubuntu.com

    FQDN of the cloud-images mirror

  • mirror_cloud-images_path | string

    Default: /srv/ftp.root/cloud-images

    Root location of mirrored files for the cloud-images mirror

  • mirror_cloud-images_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_cloud-images_source_url

  • mirror_cloud-images_rsync_log | boolean

    Default: True

    Whether to log rsync requests for the cloud-images mirror

  • mirror_cloud-images_rsync_module | string

    Default: cloud-images

    The name of the rsync module for this mirror role

  • mirror_cloud-images_source_url | string

    Default: rsync://strix.canonical.com/cloud-images

    The URL the cloud-images mirror will be fetched from

  • mirror_cloud-images_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_cloud-images_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_cloud-images_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_extras_aliases | string

    Default: ["*.extras.ubuntu.com", "extras.ubuntulinux.org", "*.extras.ubuntulinux.org"]

    List of Apache aliases for the Ubuntu Extras mirror

  • mirror_extras_command | string

    Default: mirror-2stage.sh

    The command to use to sync the Ubuntu Extras mirror

  • mirror_extras_description | string

    Default: Ubuntu Extras

    A brief welcome message for the Ubuntu Extras mirror

  • mirror_extras_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_extras_name | string

    Default: extras.ubuntu.com

    FQDN of the Ubuntu Extras mirror

  • mirror_extras_path | string

    Default: /srv/ftp.root/extras

    Root location of mirrored files for the Ubuntu Extras mirror

  • mirror_extras_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_extras_source_url

  • mirror_extras_rsync_log | boolean

    Default: True

    Whether to log rsync requests for the Ubuntu Extras mirror

  • mirror_extras_rsync_module | string

    Default: extras

    The name of the rsync module for this mirror role

  • mirror_extras_source_url | string

    Default: rsync://extras.ubuntu.com/extras

    The URL the Ubuntu Extras mirror will be fetched from

  • mirror_extras_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_extras_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_extras_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_linuxcontainers_aliases | string

    Default: []

    List of Apache aliases for the Linux Containers image mirror. When mirror_linuxcontainers_name is set to "lxd.images.canonical.com", a separate virtualhost will be generated for each alias to act as destinations for GeoIP-based redirects and to log traffic to each alias separately. Otherwise, these aliases will simple be declared as standard Apache aliases using the ServerAlias directive.

  • mirror_linuxcontainers_command | string

    Default: mirror-linuxcontainers.sh

    The command to use to sync the Linux Containers image mirror

  • mirror_linuxcontainers_description | string

    Default: Linux Containers (LXC/LXD) Images

    A brief welcome message for the Linux Containers image mirror

  • mirror_linuxcontainers_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_linuxcontainers_name | string

    Default: lxd.images.canonical.com

    FQDN of the Linux Containers image mirror.

  • mirror_linuxcontainers_path | string

    Default: /srv/ftp.root/lxc-images

    Root location of mirrored files for the Linux Containers image mirror

  • mirror_linuxcontainers_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_linuxcontainers_source_url

  • mirror_linuxcontainers_rsync_log | boolean

    Whether to log rsync requests for the Linux Containers image mirror

  • mirror_linuxcontainers_rsync_module | string

    Default: lxc-images

    The name of the rsync module for this mirror role

  • mirror_linuxcontainers_source_url | string

    Default: rsync://rsync.images.linuxcontainers.org/lxc-images

    The URL the Linux Containers image mirror will be fetched from

  • mirror_linuxcontainers_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_linuxcontainers_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_linuxcontainers_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_maas-images_aliases | string

    Default: ["stats.images.maas.io"]

    List of Apache aliases for the MAAS images mirror

  • mirror_maas-images_command | string

    Default: mirror-1stage.sh

    The command to use to sync the MAAS images mirror

  • mirror_maas-images_description | string

    Default: MAAS images

    A brief welcome message for the MAAS images mirror

  • mirror_maas-images_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_maas-images_name | string

    Default: images.maas.io

    FQDN of the MAAS images mirror

  • mirror_maas-images_path | string

    Default: /srv/ftp.root/maas-images

    Root location of mirrored files for the MAAS images mirror

  • mirror_maas-images_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_maas-images_source_url

  • mirror_maas-images_rsync_log | boolean

    Whether to log rsync requests for the MAAS images mirror

  • mirror_maas-images_rsync_module | string

    Default: maas-images

    The name of the rsync module for this mirror role

  • mirror_maas-images_source_url | string

    Default: rsync://images.maas.io/maas-images

    The URL the MAAS images mirror will be fetched from

  • mirror_maas-images_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_maas-images_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_maas-images_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_old-releases_aliases | string

    Default: []

    List of Apache aliases for the old Ubuntu releases mirror

  • mirror_old-releases_command | string

    Default: mirror-2stage.sh

    The command to use to sync the old Ubuntu releases mirror

  • mirror_old-releases_description | string

    Default: Ubuntu Old Releases

    A brief welcome message for the old Ubuntu releases mirror

  • mirror_old-releases_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_old-releases_name | string

    Default: old-releases.ubuntu.com

    FQDN of the old Ubuntu releases mirror

  • mirror_old-releases_path | string

    Default: /srv/ftp.root/old-images

    Root location of mirrored files for the old Ubuntu releases mirror

  • mirror_old-releases_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_old-releases_source_url

  • mirror_old-releases_rsync_log | boolean

    Whether to log rsync requests for the old Ubuntu releases mirror

  • mirror_old-releases_rsync_module | string

    Default: old-releases

    The name of the rsync module for this mirror role

  • mirror_old-releases_source_url | string

    Default: rsync://old-releases.ubuntu.com/old-releases

    The URL the old Ubuntu releases mirror will be fetched from

  • mirror_old-releases_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_old-releases_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_old-releases_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_ports_aliases | string

    Default: []

    List of Apache aliases for the ports mirror

  • mirror_ports_command | string

    Default: mirror-2stage.sh

    The command to use to sync the ports mirror

  • mirror_ports_description | string

    Default: Ubuntu Ports Archive

    A brief welcome message for the ports mirror

  • mirror_ports_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_ports_name | string

    Default: ports.ubuntu.com

    FQDN of the ports mirror

  • mirror_ports_path | string

    Default: /srv/ftp.root/ubuntu-ports

    Root location of mirrored files for the ports mirror

  • mirror_ports_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_ports_source_url

  • mirror_ports_rsync_log | boolean

    Whether to log rsync requests for the ports mirror

  • mirror_ports_rsync_module | string

    Default: ubuntu-ports

    The name of the rsync module for this mirror role

  • mirror_ports_source_url | string

    Default: rsync://ports.ubuntu.com/ubuntu-ports

    The URL the ports mirror will be fetched from

  • mirror_ports_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_ports_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_ports_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_releases_aliases | string

    Default: []

    List of Apache aliases for the releases mirror

  • mirror_releases_command | string

    Default: mirror-1stage.sh

    The command to use to sync the releases mirror

  • mirror_releases_description | string

    Default: Ubuntu Releases CD Images

    A brief welcome message for the releases mirror

  • mirror_releases_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_releases_name | string

    Default: releases.ubuntu.com

    FQDN of the releases mirror

  • mirror_releases_path | string

    Default: /srv/ftp.root/releases

    Root location of mirrored files for the releases mirror

  • mirror_releases_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_releases_source_url

  • mirror_releases_rsync_log | boolean

    Default: True

    Whether to log rsync requests for the releases mirror

  • mirror_releases_rsync_module | string

    Default: releases

    The name of the rsync module for this mirror role

  • mirror_releases_source_url | string

    Default: rsync://rsync.releases.ubuntu.com/releases

    The URL the releases mirror will be fetched from

  • mirror_releases_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_releases_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_releases_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_simple-streams_aliases | string

    Default: []

    List of Apache aliases for the simple-streams mirror

  • mirror_simple-streams_command | string

    Default: mirror-1stage.sh

    The command to use to sync the simple-streams mirror

  • mirror_simple-streams_description | string

    Default: Juju Simple Streams Mirror

    A brief welcome message for the simple-streams mirror

  • mirror_simple-streams_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_simple-streams_name | string

    Default: streams.canonical.com

    FQDN of the simple-streams mirror

  • mirror_simple-streams_path | string

    Default: /srv/ftp.root/simple-streams

    Root location of mirrored files for the simple-streams mirror

  • mirror_simple-streams_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_simple-streams_source_url

  • mirror_simple-streams_rsync_log | boolean

    Default: True

    Whether to log rsync requests for the simple-streams mirror

  • mirror_simple-streams_rsync_module | string

    Default: simple-streams

    The name of the rsync module for this mirror role

  • mirror_simple-streams_source_url | string

    Default: rsync://strix.canonical.com/simple-streams

    The URL the simple-streams mirror will be fetched from

  • mirror_simple-streams_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_simple-streams_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_simple-streams_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_ubuntu-cloud-archive_aliases | string

    Default: []

    List of Apache aliases for the Ubuntu Cloud Archive mirror

  • mirror_ubuntu-cloud-archive_command | string

    Default: mirror-2stage.sh

    The command to use to sync the Ubuntu Cloud Archive mirror

  • mirror_ubuntu-cloud-archive_description | string

    Default: Ubuntu Cloud Archive

    A brief welcome message for the Ubuntu Cloud Archive mirror

  • mirror_ubuntu-cloud-archive_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_ubuntu-cloud-archive_name | string

    Default: ubuntu-cloud.archive.canonical.com

    FQDN of the Ubuntu Cloud Archive mirror

  • mirror_ubuntu-cloud-archive_path | string

    Default: /srv/ftp.root/ubuntu-cloud-archive

    Root location of mirrored files for the Ubuntu Cloud Archive mirror

  • mirror_ubuntu-cloud-archive_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_ubuntu-cloud-archive_source_url

  • mirror_ubuntu-cloud-archive_rsync_log | boolean

    Whether to log rsync requests for the Ubuntu Cloud Archive mirror

  • mirror_ubuntu-cloud-archive_rsync_module | string

    Default: ubuntu-cloud-archive

    The name of the rsync module for this mirror role

  • mirror_ubuntu-cloud-archive_source_url | string

    Default: rsync://ubuntu-cloud.archive.canonical.com/ubuntu-cloud-archive

    The URL the Ubuntu Cloud Archive mirror will be fetched from

  • mirror_ubuntu-cloud-archive_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_ubuntu-cloud-archive_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_ubuntu-cloud-archive_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_ubuntu_aliases | string

    Default: []

    List of Apache aliases for the Ubuntu mirror

  • mirror_ubuntu_command | string

    Default: mirror-2stage.sh

    The command to use to sync the Ubuntu mirror

  • mirror_ubuntu_description | string

    Default: Ubuntu Archive

    A brief welcome message for the Ubuntu mirror

  • mirror_ubuntu_downstream_mirrors | string

    A space-separated list of mirrors to trigger following a sync. Username defaults to the mirror_user config setting, and otherwise may be specified by "user@host" syntax.

  • mirror_ubuntu_name | string

    Default: archive.ubuntu.com

    FQDN of the Ubuntu mirror

  • mirror_ubuntu_path | string

    Default: /srv/ftp.root/ubuntu

    Root location of mirrored files for the Ubuntu mirror

  • mirror_ubuntu_rsync_auth | string

    Default: {}

    Optional rsync authentication details for mirror_ubuntu_source_url

  • mirror_ubuntu_rsync_log | boolean

    Whether to log rsync requests for the Ubuntu mirror

  • mirror_ubuntu_rsync_module | string

    Default: ubuntu

    The name of the rsync module for this mirror role

  • mirror_ubuntu_source_url | string

    Default: rsync://archive.ubuntu.com/ubuntu

    The URL the Ubuntu mirror will be fetched from

  • mirror_ubuntu_sync_time | string

    Default: ondemand

    When mirror updates should be run. Either a cron(5) format time specification or 'ondemand' for ssh triggering

  • mirror_ubuntu_trigger | string

    A base64 string containing the ssh trigger public key

  • mirror_ubuntu_trigger_keyfile | string

    Local path of the key file to use when triggering downstream mirrors. If empty, downstream mirrors are not triggered.

  • mirror_user | string

    Default: archvsync

    Mirror system user id

  • nagios_servicegroup | string

    If set, this is the Nagios servicegroup for alerts. If unset, an appropriate one will be chosen

  • package_status | string

    Default: install

    The status of service-affecting packages will be set to this value in the dpkg database. Useful valid values are "install" and "hold".

  • role_map | string

    JSON document describing which mirror is enabled on which machine. There are two formats. The first format is simple:

    {"hostname1": ["cdimage", "ubuntu"], "hostname2": ["releases"]}

    In the second more complex format each hostname's value is a dictionary rather than a list of roles. For example:

    { "hostname1": { "releases": { "addresses": ["1.2.3.4"], "https": true }, "ubuntu": null }, "hostname2": [ "releases", "ubuntu" ] }

    Here, hostname1's ubuntu role will result in an HTTP VirtualHost that listens on *:80 and serves the Ubuntu archive. The releases role will result in HTTP and HTTPS VirtualHosts that listen on 1.2.3.4:80 and 1.2.3.4:443 respectively.

  • rsync_logdir | string

    Default: /var/log/rsyncd

    Rsync log directory

  • rsync_max_connections | int

    Default: 65

    Maximum number of rsync connections allowed

  • rsync_max_connections_per_source | int

    Default: 5

    Maximum number of rsync connections allowed per source/IP

  • rsync_motd | string

    Default: VGhpcyBpcyBhbiBVYnVudHUgbWlycm9yIC0gdHJlYXQgaXQga2luZGx5Cg==

    Rsync server welcome message text (base64 encoded)

  • rsync_motdfile | string

    Default: /etc/rsyncd/motd

    Rsync server welcome message file

  • rsync_use_xinetd | boolean

    Whether to launch rsyncd from xinetd (if true) or systemd (if false).

  • script_dir | string

    Default: /srv/ubuntu-mirror/bin

    Install location for any mirror-related scripts