Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
infrastructure [2021/10/05 07:23] – [Internally-managed services] vgaeterainfrastructure [2024/06/01 08:40] – [Buildbot workers] update with latest state ynezz
Line 15: Line 15:
 | [[https://buildbot.openwrt.org|Buildbot master]] | [[https://buildbot.net/|Buildbot]] | Coordinates builders | Hetzner | | [[developers:jow|jow]], [[developers:ynezz|ynezz]] | | [[https://buildbot.openwrt.org|Buildbot master]] | [[https://buildbot.net/|Buildbot]] | Coordinates builders | Hetzner | | [[developers:jow|jow]], [[developers:ynezz|ynezz]] |
 | [[https://downloads.openwrt.org/|Downloads]] | | Hosts all current and released images, SDK, Imagebuilder | Hetzner | [[https://downloads.openwrt.org/stats/|awstats]] | [[developers:jow|jow]], [[developers:thess|thess]] | | [[https://downloads.openwrt.org/|Downloads]] | | Hosts all current and released images, SDK, Imagebuilder | Hetzner | [[https://downloads.openwrt.org/stats/|awstats]] | [[developers:jow|jow]], [[developers:thess|thess]] |
-| [[https://archive.openwrt.org|Downloads archive]] | | Hosts old OpenWrt images and releases | | | [[developers:wigyori|wigyori]]  |+| [[https://archive.openwrt.org|Downloads archive]] | | Hosts old OpenWrt images and releases | private co-lo | | [[developers:wigyori|wigyori]] 
 +| [[https://oldwiki.archive.openwrt.org|Old wiki archive]] | | Old OpenWrt wiki with legacy / non-migrated content | private co-lo | | [[developers:wigyori|wigyori]]  |
 | [[https://sources.openwrt.org/|Sources archive]] | | Hosts a copy of sources of all software used in OpenWrt | Hetzner | | [[developers:jow|jow]], [[developers:thess|thess]] | | [[https://sources.openwrt.org/|Sources archive]] | | Hosts a copy of sources of all software used in OpenWrt | Hetzner | | [[developers:jow|jow]], [[developers:thess|thess]] |
 | [[https://freescout.openwrt.org|Freescout]] | [[https://freescout.net|Freescout]] | Facilitates handling of shared mailboxes (testing) | DigitalOcean droplet | | [[developers:stintel|stintel]] | | [[https://freescout.openwrt.org|Freescout]] | [[https://freescout.net|Freescout]] | Facilitates handling of shared mailboxes (testing) | DigitalOcean droplet | | [[developers:stintel|stintel]] |
Line 25: Line 26:
 We also rely on the following services that are run by external entities: We also rely on the following services that are run by external entities:
  
-^ Service ^ Technology ^ Description ^ Host ^ Liaison ^ +^ Service                                                                ^ Technology                                              ^ Description                                                   ^ Host                                    ^ Liaison  
-| [[https://patchwork.ozlabs.org/project/openwrt/list/|Patch tracking]] | [[http://jk.ozlabs.org/projects/patchwork/|Patchwork]] | Used to track patches sent to the openwrt-devel mailing list | Ozlab | | +| [[https://patchwork.ozlabs.org/project/openwrt/list/|Patch tracking]]  | [[http://jk.ozlabs.org/projects/patchwork/|Patchwork]]  | Used to track patches sent to the openwrt-devel mailing list  | Ozlab                                            
-| [[https://github.com/openwrt/openwrt|Github mirror]] | Github | Mirror of OpenWrt repository. Pull-requests are accepted. | Github | |+| [[https://github.com/openwrt/openwrt|Github mirror]]                   | Github                                                  | Mirror of OpenWrt repository. Pull-requests are accepted.     | Github                                           | 
 +| CDN                                                                    | Fastly                                                  | Content delivery network                                      | {{:fastlylogo-red-png.png?200&nolink}}  | aparcar  |
  
 ===== Hosting infrastructure and costs ===== ===== Hosting infrastructure and costs =====
Line 33: Line 35:
 All services that are managed internally are run on servers devoted to the OpenWrt project, except for mailing lists which run on Infradead servers. All services that are managed internally are run on servers devoted to the OpenWrt project, except for mailing lists which run on Infradead servers.
  
-^ Host ^ Servers ^ Services ^ Admin(s) ^ Expected cost ^ Actual cost ^ Comment ^ +^ Host                                                                                                                                                                                             ^ Servers                                                                                ^ Services                    ^ Admin(s)                                                                            ^ Expected cost     ^ Actual cost       ^ Comment                      ^ 
-| Hetzner | [[https://www.hetzner.com/dedicated-rootserver/matrix-ex|ex40]] | Buildbot master | [[developers:nbd|nbd]], ? | 50 € / month | 50 € / month | Paid privately | +| {{:netcup_logo_rgb_color_vorschau.png?400|}} | [[https://www.netcup.de/bestellen/produkt.php?produkt=2898|RS 8000 G9.5 a1 12M]] + 6TB storage | Downloads | [[developers:aparcar|aparcar]] | 100€ / month     | Free      | Open source project support | 
-| Hetzner | [[https://www.hetzner.com/sb/|sb59]] | Archive | [[developers:blogic|blogic]] | 49.50 € / month | 49.50 € / month | Paid privately | +| [[https://www.digitalocean.com/?utm_medium=opensource&utm_source=OpenWrt|{{:do_powered_by_badge_blue.png?400|}}]]  | 7 droplets (prod) | wiki, forum, git, mails...  | [[developers:jow|jow]], [[developers:ynezz|ynezz]], [[developers:stintel|stintel]]  | 344.00 $ / month  | Free              | Open source project support 
-| Hetzner | [[https://www.hetzner.com/dedicated-rootserver/matrix-ax|ax61-nvme]] + 2x 1.92 TB SSD | Downloads | [[developers:jow|jow]] | 158.27 € / month | 158.27 € / month | Paid privately +| Microsoft | 2 VMs | Buildbot workers            | [[developers:ynezz|ynezz]]                                                          | 10.000 $ / year   | Free              | Open source project support  | 
-| DigitalOcean | 7 droplets (prod) | wiki, forum, git, mails... | [[developers:jow|jow]], [[developers:ynezz|ynezz]] | 237.00 $ / month | Free | Open source project support |+| Hetzner | [[https://www.hetzner.com/dedicated-rootserver/matrix-ex|ex40]] | Buildbot master             | [[developers:nbd|nbd]], ? | 50 € / month      | 50 € / month      | Paid privately               
 +| Hetzner | [[https://www.hetzner.com/sb/|sb59]] | Archive                     | [[developers:blogic|blogic]]                                                        | 49.50 € / month   | 49.50 € / month   | Paid privately               
 +| Hetzner | [[https://www.hetzner.com/dedicated-rootserver/matrix-ax|ax61-nvme]] + 2x 1.92 TB SSD  | Downloads                   | [[developers:jow|jow]]                                                              | 158.27 € / month  | 158.27 € / month  | Paid privately               |
  
 ==== Buildbot workers ==== ==== Buildbot workers ====
 Buildbot workers detect updates to the source and kick off the build process for each supported device. Buildbot workers detect updates to the source and kick off the build process for each supported device.
  
-^ Host ^ Name ^ Servers ^ Admin(s) ^ Expected cost ^ Actual cost ^ Comment ^ +^ Host       ^ Name                Server spec                                                                    ^ Nb servers   ^ Admin(s)                                                                         Cost                                                                                            ^ Comment   
-| Hetzner | truecz-dock-0[12] 2x XeonE3/32GB/2TB | [[developers:ynezz|ynezz]] | ? | 2x26€ / month | Paid privately | +| Hetzner    | truecz-dock-01   Xeon E3/32GB/2TB                                                               | 1            | [[developers:ynezz|ynezz]]                                                        32€ / month  | Paid privately                                                                                  
-| OSUOSL | osuosl-vm-* | 4x [[infrastructure:openstack|OpenStack VM]] (each 4 CPUGB RAM, 60 GB disk) | [[developers:zorun|zorun]], [[developers:ynezz|ynezz]], [[developers:jow|jow]] | ~4x80$ / month (AWS or DigitalOcean) | Free | Open source project support | +| OSUOSL     | osuosl-vm-*         | [[infrastructure:openstack|OpenStack VM]] (12 cores32 GB RAM, 320 GB disk)   | 4            | [[developers:zorun|zorun]], [[developers:ynezz|ynezz]], [[developers:jow|jow]]   Free             | Open source project support                                                                     | 
-OSUOSL fsf-dock-* | 4x 16C/32T | [[developers:zorun|zorun]] | | Free | Open source project support |+| OSUOSL     | osuosl-dock-*       | 12C, 24T, 64 GB RAM (2x Xeon X5680 3.33 GHz                                  | 2            | OpenWrt sysadmins                           | Free             | Open source project support                                                                     
 +VZFFNRMO   vzffnrmo-dock-*     Xeon E31230/16GB/100GB                                                         1            | OpenWrt sysadmins                                                                | ?                | Provided by the [[https://karlsruhe.freifunk.net|Freifunk Karlsruhe Project / VZFFNRMO e.V.]]   | 
 +| FFFFM      | ffffm-dock-*             | 28C, 56T, 448GB RAM, 1.8TB (2x Xeon E5-2680v4 2.4GHz)                          | 1            | OpenWrt sysadmins                                                                                 | Free             Provided by [[https://ffm.freifunk.net/|Freifunk Frankfurt am Main e.V.]]                       |
  
 +=== Worker hardware requirements ===
 +
 +  * **CPU**: a good worker needs 4-8 CPU cores for phase1/images, and 8-16 CPU cores for phase2/packages. Larger machines are split into several workers using Docker.
 +  * **Memory**: each worker needs a minimum of 1 GB of RAM for each CPU hardware thread, 2 GB / thread is preferred.  For example, a 16 cores / 32 threads machine needs between 32 GB and 64 GB of RAM in total.
 +  * **Disk:** each worker needs 50 GB of disk space (phase1/images) or 100 GB of disk space (phase2/packages).
 ==== Other costs ==== ==== Other costs ====
 ^ What ^ Provider ^ Admin(s) ^ Expected cost ^ Actual cost ^ Comment ^ ^ What ^ Provider ^ Admin(s) ^ Expected cost ^ Actual cost ^ Comment ^
Line 52: Line 63:
  
 ===== Buildbot build matrix ===== ===== Buildbot build matrix =====
-There are several buildbot instances: one for masterand one for each release. In addition, there is phase1 to build images, and phase2 to build packages.+There are several buildbot instances, phase1 to build images, and phase2 to build packages.
  
-^ Version ^ Phase 1 - Images ^ Phase 2 - Packages ^ Fail logs ^ Image downloads ^ +^ Version  ^ Phase 1 - Images                                                                             ^ Phase 2 - Packages                                                               ^ Fail logs                                                             ^ Image downloads                                                            
-| master | [[https://buildbot.openwrt.org/master/images/|Phase 1 - Images]] | [[https://buildbot.openwrt.org/master/packages/|Phase 2 - Packages]] | [[https://downloads.openwrt.org/snapshots/faillogs/|Fail logs]] | [[https://downloads.openwrt.org/snapshots/targets/|images]] | +| master   | [[https://buildbot.openwrt.org/images/|Phase 1 - Images]]                             | [[https://buildbot.openwrt.org/master/packages/|Phase 2 - Packages]]             | [[https://downloads.openwrt.org/snapshots/faillogs/|Fail logs]]       | [[https://downloads.openwrt.org/snapshots/targets/|images]]                
-21.02 | [[https://buildbot.openwrt.org/openwrt-21.02/images/|21.02 Images]] | [[https://buildbot.openwrt.org/openwrt-21.02/packages/|21.02 Packages]] | [[https://downloads.openwrt.org/releases/faillogs-21.02/|Fail logs]] | [[https://downloads.openwrt.org/releases/21.02-SNAPSHOT/targets/|images]] | +23.05    | [[https://buildbot.openwrt.org/images/#/waterfall?tags=openwrt-23.05|23.05 Images]]  | [[https://buildbot.openwrt.org/openwrt-23.05/packages/|23.05 Packages]]  | [[https://downloads.openwrt.org/releases/faillogs-23.05/|Fail logs]]  | [[https://downloads.openwrt.org/releases/23.05-SNAPSHOT/targets/|images]]  
-19.07 | [[https://buildbot.openwrt.org/openwrt-19.07/images/|19.07 Images]] | [[https://buildbot.openwrt.org/openwrt-19.07/packages/|19.07 Packages]] | [[https://downloads.openwrt.org/releases/faillogs-19.07/|Fail logs]] | [[https://downloads.openwrt.org/releases/19.07-SNAPSHOT/targets/|images]] | +22.03    | [[https://buildbot.openwrt.org/images/#/waterfall?tags=openwrt-22.03|22.03 Images]]  | [[https://buildbot.openwrt.org/openwrt-22.03/packages/|22.03 Packages]]          | [[https://downloads.openwrt.org/releases/faillogs-22.03/|Fail logs]]  | [[https://downloads.openwrt.org/releases/22.03-SNAPSHOT/targets/|images]]  |
-| 18.06 | [[https://buildbot.openwrt.org/openwrt-18.06/images/|18.06 Images]] | [[https://buildbot.openwrt.org/openwrt-18.06/packages/|18.06 Packages]] | [[https://downloads.openwrt.org/releases/faillogs-18.06/|Fail logs]] | [[https://downloads.openwrt.org/releases/18.06-SNAPSHOT/targets/|images]] |+
  
 ===== Finances ===== ===== Finances =====
  • Last modified: 2024/11/06 18:45
  • by ynezz