Deja-vu there....
When #Varnish-Cache were young, many years ago, we got a lot of reports of people reducing servers a factor of 3 to 10 because it was so much more efficient code.
Deja-vu there....
When #Varnish-Cache were young, many years ago, we got a lot of reports of people reducing servers a factor of 3 to 10 because it was so much more efficient code.
my adventures in #selfhosting - day 165 (VFX edition)
Good morning Fedi friends!
I've been quiet on here (it's a temporary pause, I promise) as I have been spending every second of free time - that doesn't include childcare - editing the fediverse promo video.
The video will premiere next week at a really exciting event, right after a presentation by an absolute legend. I'm experiencing low key anxiety / palpitations, rushing to get the film ready for that.
On the to do list: sound mix, fixing some VFX animations, adding a couple of slides to the end credits, color grading, doing subtitles, exporting the video and uploading it to my PeerTube. Gaaaaah!
On the self-hosting side, I have to admit it's incredibly empowering to know I can put it on my PeerTube. Super grateful to #YunoHost for that.
If you're curious, I've published some updates re: what I've been up to this month... including a video replay of my presentation for YunoHost at #JDLL: https://news.elenarossini.com/what-im-up-to-may-2025-edition/
As a geeky side note, I had to edit a link in the article... and it would not update on my site. Awww the wonders of #Varnish cache. It's really THAT powerful. So even though I don't have time to do proper self-hosting tasks these days, I still went into my VPS and used command lines to clear Varnish cache. It counts for something, right?
Wishing everyone a wonderful weekend!
#MySoCalledSudoLife
This #GoToSocial account has become a step-by-step tutorial in how to self-host the publishing platform #Ghost (and troubleshoot issues)
If you're not interested in my messages on the subject, I will be using a new hashtag #EleSelfHostsGhost so you can just mute it.
I'm a little late to the party because everything is now set-up and running smoothly: I manually installed Ghost on my Ubuntu VPS
I imported all the old posts and media: https://news.elenarossini.com
I installed #Apache to use #Varnish cache and changed the cache's maxAge so that a bit of traffic wouldn't overwhelm my VPS
I published and shared on Mastodon a new blog post: https://news.elenarossini.com/what-im-up-to-march-april-2025-edition/ Thanks to Varnish and the maxAge cache tweak, the VPS withstood the "Mastodon stampede" (the post had made it to Explore!)
So far so good.
but when I tried to send that blog post as a newsletter to just 210 people, #Mailgun immediately flagged me as a spammer and froze my account
It took about 48 hours of back-and-forth emails with the Mailgun team to convince them I'm not a spammer and to get my account reinstated.
Now, why am I sharing all this?
In case you are also tempted to self-host Ghost, I found that the official Ghost - Mailgun documentation has little information available. But I discovered this super helpful post in the Ghost Forums and I will be trying this tweak to see if it makes a difference:
https://forum.ghost.org/t/unable-to-send-newsletter-with-correct-mailgun-api-keys/34186/6
And yes, I'm aware that if you sign up for my newsletter you will get an email with a warning "this message failed the domain authentication" (or something along these lines). Problem is, when I implemented a tweak, changing config settings, the alert went away but I saw a spike in activity in my Dashboard, as if I had sent 600 emails (I did not). For now I can live with the warning.
I appreciate Ghost's new implementation of a spam filter because around the same time I got really suspicious signups originating from the same domain.
Anyway after I change all this I will try to send once again my blog post as a newsletter.
Special thanks to my parents for looking after my little one so I can do all this while she's on a school vacation
my adventures in #selfhosting - day 111 (quiet edition)
Good morning Fedi friends!
I hope you had a nice weekend.
After backing up my two VPSs I am now staring at my #YunoHost dashboard thinking: now what?
It feels a little odd not to have to tackle any pressing self-hosting issues. Everything seems to be working well, including my manual installation of Ghost on a second (Ubuntu) VPS.
I'm now in maintenance mode.
I must confess in the past 24 hours I have spent some time browsing @yunohost 's app catalogue. So many fascinating things in there! But I am exercising restraint (for now, LOL!)
I'm very grateful for all the software I'm currently self-hosting.
On Debian (via YunoHost):
On Ubuntu:
I'm highly aware of my privilege and how lucky I am to be doing all this. But can I confess I'm a little bored? Thankfully I may have another big project on the horizon: upgrading my VPS and installing / self-hosting #PeerTube. But that will be for another week. Resting now and enjoying this sense of empowerment / digital sovereignty. Very grateful to be in this position.
Wishing you all a fantastic week!
my adventures in #selfhosting - day 104 (pride edition)
Good morning Fedi friends!
Aw pride is a powerful thing.
I'd like to think that I'm pretty zen and detached and successfully suppressing my ego... but when it comes to things I'm passionate about (read: tech, self-hosting) I cannot let things go.
I had a very very sweet shout-out on a Fediverse podcast last week... but said shout-out mentioned my self-hosting issues and that maybe self-hosting isn't for everyone. I felt that I had to correct the record (even if the mention came with the nicest intention)... because I have ZERO issues self-hosting #GoToSocial, #Friendica and #Pixelfed (thanks to the magic of #YunoHost). All my troubles had to do with #Ghost. (And Ghost is wonderful, it's not related to it, just external circumstances).
So, determined to defend my honor (ha!) on Friday I achieved the impossible: all by myself, following guides I found online, I managed to install #Apache and #Varnish on my VPS and connected Varnish to Ghost. My site was already fast, now it's BLAZING fast.
So I'm giving it another go, moving from Ghost (Pro) to my self-hosted Ghost installation. I turned off subscriptions on https://blog.elenarossini.com... next step is disconnecting the subdomain DNS (a CNAME record) from Ghost... and redirecting traffic to my new blog (https://news.elenarossini.com).
I know how to code things in NGINX for the redirect to work (I think, via guides I found online).
My big question is: how do I tweak my old DNS records for https://blog.elenarossini.com so that NGINX on my self-hosted site https://news.elenarossini.com will correctly pick up the traffic requests? Do I need to set up A and AAAA records for the subdomain blog to point to my VPS with the self-hosted Ghost blog? Any advice would be greatly appreciated!
Oh and I learned my lesson and - unlike last time - I am making big changes on a Monday morning, when I have the whole workweek ahead of me (instead of a Friday afternoon 1 hour before picking up my child from nursery school). You live and learn!
#MySoCalledSudoLife
This newbie who just celebrated 100 days of #selfhosting was able to install #Apache and #Varnish on her #Ubuntu VPS (to prevent the "Mastodon Hug of Death" for link preview cards on her self-hosted Ghost blog). She's very proud of herself for all the sudo commands she successfully ran today. And she's weirded out talking about herself in the third person, so: I did it YAY.
LOVE LOVE LOVE this Linux / self-hosting journey I'm on. Thank you for all your support & encouragement
I've performed some tests, and it's great. #snac and #haproxy are working great together - now with caching of media and json responses, to scale up, and up, and up...and up!
#Varnish is the best tool for caching, but the setup I've tested doesn't require it and it's still good enough.
I think this will be a blog post, as soon as I'll have enough time.
Most people who run a decent-sized Drupal website have probably heard of Varnish.
It comes with some VCL code that might seem confusing at first.
There are some Drupal modules you need to install and configure to invalidate the cache. But how does it work?
Join Thijs Feryn this #DrupalDevDays to learn about Varnish and its features.
Look what I've found while reading #haproxy docs : #YouPorn is implemented as a LAMP stack and serves 300.000 requests per second !
That's massive.
https://www.haproxy.org/they-use-it.html
https://highscalability.com/youporn-targeting-200-million-views-a-day-and-beyond/
A new post on debugging your Varnish VMOD with gdb.
Be sure to set the right shared library search path!
Hi. I thought I'd #askfedi if there's a way to tell a water-based polyurethane from an oil-based one when you don't have the product label anymore? Maybe by smell?
Am asking so I know how to clean up afterwards. I got some of it from the office maintenance guy and he gave it to me in a plain glass jar. I also didn't know there was a difference at the time.
#polyurethane #varnish #topcoat
Thijs Feryn shares Best practices for caching Plone with Varnish at large scale https://buff.ly/3Vf3UHH #ploneconf2024 #pythoncerrado2024 #plone #opensource #varnish #cache #cookies #brasilia
Thijs Feryn discusses Varnish caching in Plone https://2024.ploneconf.org/en/schedule/talks/varnish-caching-in-plone #ploneconf2024 #pythoncerrado2024 #plone #python #opensource #varnish #cache #cookies #brasilia
My blog is hosted and served from three different locations: an httpd and relayd stack on OpenBSD, a FreeBSD jail, and a Raspberry Pi Zero W powered by NetBSD - and they all contain all the files.
The VM on OpenBSD is located in the Netherlands at OpenBSD Amsterdam, a provider offering OpenBSD VMs on OpenBSD hosts, contributing a portion of earnings to the OpenBSD Foundation. Their setup is transparent and well-documented, enabling full understanding of the underlying infrastructure.
Varnish is configured across the various hosts to use all three resources as backends, ensuring that data remains accessible to the reverse proxies even if two of the servers go down.
And, in the event that all three go down, the reverse proxies will continue to serve the cached versions for days.
Make Your Own CDN With OpenBSD Base and Just 2 Packages
https://it-notes.dragas.net/2024/08/29/make-your-own-cdn-openbsd/
Friends of the #BSDCafe and of the #Fediverse,
initially, for just over a year, BSD Cafe's media was stored in a FreeBSD physical server jail with an outgoing bandwidth of 250 Mbit/sec. To address bandwidth congestion, I had integrated Cloudflare with a tunnel, serving media (and only media) through Cloudflare.
In line with the principles of self-hosting and data ownership, I’ve decided to remove Cloudflare. This has led to some bandwidth congestion when media was posted and slower download speeds for users, particularly during peak times. This is because as soon as content is published and federated servers are notified, they will rush (depending on how full their queues are) to download the newly published content - media included.
I’ve now revised the setup (currently in beta) by moving DNS management to two personal nameservers run with PowerDNS. The media server remains the same, but I’ve added two reverse proxies, one in the USA and one in Germany (the media server is in Poland). They're connected to the Media server via WireGuard.
I’ve installed the excellent Varnish and created a custom VCL. Media requests will be directed by the PowerDNS LUA scripts to the caller's closest reverse proxy. Nginx will pass requests to Varnish, which will serve data from the cache if available. If not, it will fetch from the original server, but request volume has decreased significantly.
I’m analyzing the results, and they look very promising. I may expand this home-made CDN by adding more VPSs, potentially closer to Asia and Oceania.
A detailed blog post will follow.
Stay tuned!