Friday, October 16, 2009

Hosting a Server

freenode urgently needs solid, well-connected hidden hub and public leaf servers. We look for multi-homed connections with significant bandwith available -- client servers should expect to sustain around 1Mbps of traffic, with much higher peaks. Total usage for client servers is usually around 320 gigabytes per month, while hidden hubs are generally much lower overall.

We appreciate your interest in helping the network grow and your willingness to contribute to that process. freenode is not a conventional IRC network. Servers are hosted, not linked. They are maintained remotely from central sites using ssh and scp. New configuration files are generated via an automated script at a central location, and new servers are either staged as binary files or recompiled on the server account, depending on architecture and other factors.

We will happily acknowledge your contribution publicly, however we don't, as a general rule provide O-lines or operator privileges to our server hosts. However, facilities hosts may apply seperately for freenode staff duty and their applications will recieve the same consideration as those of other users. When a staff application is accepted, no minimum level of privilege is guaranteed or offered. Information on network operations can be found here. Hosting candidates are reminded that the utility of any given server depends on ping latencies and other factors which may be beyond our control. Servers may need to be delinked or rehubbed at any time and we cannot always provide notice before a server is delinked.

Regardless, hosting a freenode server helps the network and the community and we are grateful that you're considering it.

System Specifications

The following table lists minimum system requirements, and, where applicable desired specifications.

RequiredDesired
Pentium4 or better64-bit multi-core
1G RAM1.5G or more
FreeBSD 5+ or Linux 2.6Our current ircd only operates in 32-bit mode,
though we plan to move to one which can take
advantage of a 64-bit OS. Thus multilib is
highly desirable for 64-bit machines.

System Software

The system will need to have the following software installed.

RequiredDesired
vixie-cron, with crontab access
Running ntpd
Recent openssh server
rsync
GNU bashzsh
GNU screen
Perl 5.6 or newer
Complete toolchain
vi or equivalent editorvim 7.x is preferred

System Configuration

Where possible we look for dedicated machines with root access, however, we will consider different set-ups too. We will require:

  • User Account Access -- While we greatly prefer dedicated machines with root access, we will consider other setups. In either case, we will require ssh access to a user account, usually named 'freenode' or 'dancer', on the machine. We require authentication via SSH keys, and ask that password logins be disabled.
  • Core file limit -- Our ircd code base continues to evolve, and we may require this debugging tool at times. freenode servers will produce very large core files, so the limit should be accordingly high -- at least 1GB or so.
  • File descriptor limits -- Our servers must be able to open at least 12,100 concurrent connections, so per-user and system-wide file descriptor limits must be high enough to accomodate this. Suggested values are at least 12,500 for the freenode user account, and 13,000 system-wide.

Other Requirements

While the servers are configured and maintained by the freenode infrastructure team and we don't require active involvement from facilities sponsors for the day to day running of the network, we ask that:

  • Sponsors ensure that we have up-to-date contact information, on and offline
  • Sponsors stay subscribed to the freenode-sponsors mailing list (low traffic, announcements only)
  • Sponsors endeavour to, where possible, give us ample advance warning about network, hardware or software upgrades and maintenance which may affect the network.
  • Sponsors communicate unexpected downtime/maintenance ASAP.

Applying to Host a Server

Before applying to host a server, you may find it helpful to speak with network staff. Feel free to message freenode's sponsor liaison, Martinp23, or Head of Staff, christel, with your questions. Regardless, the formal application process begins when you submit an email containing the following information to email address hosting at freenode net:

  • Geographical location of the server -- City, principality and country. Include any "local colour" (nearby landmarks and sites) that seem pertinent.
  • Hosting Entity -- Who should we credit for the server? Provide names of organisations (or individuals), URL and logo (for our acknowledgements page) as appropriate.
  • Contact Information -- Please include names and email addresses of contacts, as well as telephone numbers, snail mail addresses and contact hours (including time zones).
  • Hardware, Software, Bandwith and Hosting -- Please describe the system you're offering for hosting.
  • IP address -- this will allow us to perform latency and route checking.
  • Server Name Preference -- The server naming motif is "science fiction and fantasy authors". Vanity names may be provided, but canonical server names and standardised geographical names will be used exclusively by freenode. If you have preferred authors, let us know and we will try to honour your preference.

freenode's sponsor liaisons try to respond to all server application requests within 48-hours. Please allow this time before chasing your application.
All applications will be given the same considerations and we regret that we may not always be able to accept a server offer for whatever reason.

Copyright © 2002-2009 by Peer-Directed Projects Center.
Network date and time: Friday, 16-Oct-2009 17:16:30 GMT.
Comments to email address: web at freenode dot net.

No comments:

Post a Comment