ideas:phpnetmirroring

New Mirror Management System

Possible Mentor: Daniel P. Brown

Description

Our existing management system for the network of official mirrors worldwide has a few issues and areas for improvement. The present system is accessible via a browser-based web interface (using a php.net CVS account, and hosted on master.php.net), and provides the following services:

  • Addition, deletion, and modification of DNS for official mirrors of the php.net site as a whole
  • Automated checking of all mirrors, marking mirrors as “disabled” when issues are detected
  • Listing of all mirrors presently configured with the system (active and otherwise)
  • Manual disabling of mirrors
  • Generic status display of the “health” of the mirror (“OK” or flagged)
  • Ability to edit the mirror's display information within our list on php.net
  • Automated mailing to the mirror's maintainer when an issue is detected
  • Automated mailing of the status of all mirrors on a weekly basis

Over time, some of the php.net mirror admins have discussed the need and/or desire to add new - or improve existing - functionality in this system. This includes, but is not limited to:

  • Improved mirror status checking
  • The ability to keep logs of notes regarding the mirror over time, displaying the most recent on the summary page
  • Simple graphing and statistics for uptime and PING response time
  • A geo-IP lookup to ensure that the mirror IP address matches the physical region it serves
  • An online “waiting list” application form (many potential donors currently contact the mailing list or Dan Brown directly)
  • An online form to collect data from mirror maintainer applicants
  • A form-to-mail interface to email individual maintainers, the mailing list, or all maintainers directly (for announcements)
  • Number of interested donors on the “waiting list” under each country's heading
  • Automated quarterly reminders to folks on the “waiting list” to update their status if they are no longer willing/able (?)
  • System specifications on each individual mirror (?)
  • A scoring system based on the system specs of the mirrors (?)
  • Load-balancing based upon the score of the mirror when redirecting to a local mirror in the region (?)
  • Automated daily reminder emails to mirror maintainer when mirror is out-of-sync > 24 hours (still auto-disabled) (?)
  • …. etc.

Progress

A few points integrated.

Status

Open.

TODO

  • Document currently used process and tools
  • Also note that several related bugs exist
ideas/phpnetmirroring.txt · Last modified: 2011/04/06 12:59 (external edit)