..
Copyright (c) 2019 Varnish Software AS
SPDX-License-Identifier: BSD-2-Clause
See LICENSE file for full text of license
.. _homepage_dogfood:
How our website works
=====================
The principle of eating your own dogfood is important for software
quality, that is how you experience what your users are dealing with,
and I am not the least ashamed to admit that several obvious improvements
have happened to Varnish as a result of running the project webserver.
But it is also important to externalize what you learn doing so, and
therefore I thought I would document here how the projects new "internal
IT" works.
Hardware
--------
Who cares?
Yes, we use some kind of hardware, but to be honest I don't know what
it is.
Our primary site runs on a `RootBSD 'Omega' `_
virtual server somewhere near CDG/Paris.
And as backup/integration/testing server we can use any server,
virtual or physical, as long as it has a internet connection and
contemporary performance, because the entire install is scripted
and under version control (more below).
Operating System
----------------
So, dogfood: Obviously FreeBSD.
Apart from the obvious reason that I wrote a lot of FreeBSD and
can get world-class support by bugging my buddies about it, there
are two equally serious reasons for the Varnish Project to run on
FreeBSD: Dogfood and jails.
Varnish Cache is not "software for Linux", it is software for any
competent UNIX-like operating system, and FreeBSD is our primary
"keep us honest about this" platform.
Jails
-----
You have probably heard about Docker and Containers, but FreeBSD
have had jails
`since I wrote them in 1998 `_
and they're a wonderful way to keep your server installation
sane.
We currently have three jails:
* Hitch - runs the `Hitch SSL proxy `_
* Varnish - You guessed it
* Tools - backend webserver, currently `ACME Labs' thttpd `_
Script & Version Control All The Things
---------------------------------------
We have a git repos with shell scripts which create these jails
from scratch and also a script to configure the host machine
properly.
That means that the procedure to install a clone of the server
is, unabridged::
# Install FreeBSD (if not already done by hosting)
# Configure networking (if not already done by hosting)
# Set the clock
service ntpdate forcestart
# Get git
env ASSUME_ALWAYS_YES=yes pkg install git
# Clone the private git repo
git clone ssh://example.com/root/Admin
# Edit the machines IP numbers in /etc/pf.conf
# Configure the host
sh build_host.sh |& tee _.bh
# Build the jails
foreach i (Tools Hitch Varnish)
(cd $i ; sh build* |& tee _.bj)
end
From bare hardware to ready system in 15-30 minutes.
It goes without saying that this git repos contains stuff
like ssh host keys, so it should *not* go on github.
Backups
-------
Right now there is nothing we absolutely have to backup, provided
we have an up to date copy of the Admin git repos.
In practice we want to retain history for our development tools
(VTEST, GCOV etc.) and I rsync those file of the server on a
regular basis.
The Homepage
------------
The homepage is built with `Sphinx `_
and lives in its own
`github project `_ (Pull requests
are very welcome!)
We have taken snapshots of some of the old webproperties, Trac, the
Forum etc as static HTML copies.
Why on Earth...
---------------
It is a little bit tedious to get a setup like this going, whenever
you tweak some config file, you need to remember to pull the change
back out and put it in your Admin repos.
But that extra effort pays of so many times later.
You never have to wonder "who made that change and why" or even try
to remember what changes were needed in the first place.
For us as a project, it means, that all our sysadmin people
can build a clone of our infrastructure, if they have a copy of
our "Admin" git repos and access to github.
And when `FreeBSD 11 `_
comes out, or a new version of sphinx or something else, mucking
about with things until they work can be done at leisure without
guess work. (We're actually at 12 now, but the joke is too good
to delete.)
For instance I just added the forum snapshot, by working out all
the kinks on one of my test-machines.
Once it was as I wanted it, I pushed the changes the live machine and then::
varnishadm vcl.use backup
# The 'backup' VCL does a "pass" of all traffic to my server
cd Admin
git pull
cd Tools
sh build_j_tools.sh |& tee _.bj
varnishadm vcl.load foobar varnish-live.vcl
varnishadm vcl.use foobar
For a few minutes our website was a bit slower (because of the
extra Paris-Denmark hop), but there was never any interruption.
And by doing it this way, I *know* it will work next time also.
2016-04-25 /phk
PS: All that buzz about "reproducible builds" ? Yeah, not a new idea.
Henceforth, whatever our philosopher says about Matter will apply to extension and to extension alone. It cannot be apprehended by sight, nor by hearing, nor by smell, nor by taste, for it is neither colour, nor sound, nor odour, nor juice. Neither can it be touched, for it is not a body, but it becomes corporeal on being blended with sensible qualities. And, in a later essay, he describes it as receiving all things and letting them depart again without retaining the slightest trace of their presence.483 Why then, it may be asked, if Plotinus meant extension, could he not say so at once, and save us all this trouble in hunting out his meaning? There were very good reasons why he should not. In the first place, he wished to express himself, so far as possible, in Aristotelian phraseology, and this was incompatible with the reduction of Matter to extension. In the next place, the idea of an infinite void had been already appropriated by the Epicureans, to whose system he was bitterly opposed. And, finally, the extension of ordinary327 experience had not the absolute generality which was needed in order to bring Matter into relation with that ultimate abstraction whence, like everything else, it has now to be derived. That the millionaire was genuine, ¡°in person and not a caricature,¡± as Dick put it, was evident. Both the nurse, his relative, and his wife, were chatting with him as Jeff delivered the heavy packed ball made up of the gum. 233 "I guess not," said Landor, tolerantly, as he turned[Pg 106] his horse over to his orderly; "but, anyway," he added to Ellton, "we had a picnic¡ªof a sort." Si, unable to think of anything better, went with him. The train had stopped on a switch, and seemed likely to rust fast to the rails, from the way other trains were going by in both directions. The bridge gang, under charge of a burly, red-faced young Englishman, was in the rear car, with their tools, equipments, bedding and cooking utensils. THE DEACON HAS SOME EXPERIENCES WITH THE QUADRUPED. "You are not within a mile of the truth. I know it. Look here: I believe that is Gen. Rosecrans's own cow. She's gone, and I got an order to look around for her. I've never seen her, but from the description given me I believe that's she. Who brought her here?" "Deacon, these brothers and sisters who have come here with me to-night are, like myself, deeply interested in the moral condition of the army, where we all have sons or kinsmen. Now, can't you sit right there and tell us of your observations and experiences, as a Christian man and father, from day to day, of every day that you were down there? Tell us everything, just as it happened each day, that we may be able to judge for ourselves." HAS AN ENCOUNTER WITH THE PROVOST-MARSHAL. "Wonder which one o' them is the 200th Injianny's?" said Si to Shorty. "And your mother, and Harry?" The daughter must be the girl who was talking to him now. She sat on a little stool by the fire, and had brought out some sewing. "Over at Grandturzel¡ªcan't see wot's burning from here. Git buckets and come!" These things, however, gave little concern to the worthy who commanded the Kentish division. Tyler, though an excellent blacksmith, possessed few of the qualities requisite for forming a good general. Provided there was no very sensible diminution in the number of his followers, he cared not a straw for the score or two who, after quarrelling, or perhaps fighting, withdrew in such disgust that they vowed rather to pay the full tax for ever than submit to the insolence of the rebels. One man could fight as well as another, reasoned he; and, provided he was obeyed, what mattered it by whom. Dick went and Tom came¡ªit was sure to be all one in the end. But this burst of indignation soon passed away, and upon the suggestion of the prudent Sir Robert Hailes, he sent an evasive answer, with a command that the Commons should attend him at Windsor on the Sunday following. That it was a stratagem to gain entrance to the Tower, was the opinion of several, but, after much discussion, it was decided that the man should be admitted, and that the monk should be exhibited merely to intimidate the rebels, until the result of this promised communication should be known. HoMEŮͬÐÔÁµcbcb
ENTER NUMBET 0017
sxfhls.com.cn
www.zjwndz.com.cn
www.maona6.com.cn
www.50173.com.cn
rita2.net.cn
techi5.com.cn
www.wodai9.net.cn
budou9.net.cn
www.51tiaolv.com.cn
www.zhida0.com.cn