Should be fixed now, if folks could give it a try again!
As a test, have a picture of a sandwich!
Given the size the community has grown to and concerns around our current approach to maintenance, I’d like to get some feedback on when we should look to schedule maintenance going forward.
There’s two cases covered by the poll, so please choose the all options that fit your preferences.
Case 1: Non-interactive Maintenance This covers any maintenance where we don’t actively need to monitor the upgrade process; Copying data from one location to another, etc. (Usually, this could be left overnight and brought back up in the morning)
Case 2: Interactive Maintenance This covers any maintenance that requires us to perform a series of actions and continually monitor the process to ensure no issues; Upgrading Mastodon or Lemmy, database migration, or upgrading the Kubernetes cluster. (Usually, this would need to occur during the day due to time constraints)
To vote, please find the corresponding pinned comments and upvote them!
If you’ve got any questions, concerns, etc. please leave them below and we’ll get back to them asap!
Due to the recent spam waves affecting the Fediverse, we'd like to open requests for comment on the use of automated moderation tools across Pawb.Social services.
We have a few ideas on what we'd like to do, but want to make sure users would feel comfortable with this before we go ahead with anything.
For each of these, please let us know if you believe each use-case is acceptable or not acceptable in your opinion, and if you feel like sharing additional info, we'd appreciate it.
---
1. Monitoring of Public Streaming Feed
We would like to set up a bot that monitors the public feed (all posts with Public visibility that appears in the Federated timeline) to flag any posts that meet our internally defined heuristic rules.
Flagged posts would be reported per normal from a special system-user account, but reports would not be forwarded to remote instances to avoid false-positives.
These rules would be fixed based on metadata from the posts (account indicators, mentions, links, etc.), but not per-se the content of the posts themselves.
2. Building of a local AI spam-detection model
Taking this a step further, we would like to experiment with using TensorFlow Lite and Google Coral Edge TPUs to make a fully local model, trained on the existing decisions made by our moderation team. To stress, the model would be local only and would not share data with any third party, or service.
This model would analyze the contents of the post for known spam-style content and identifiers, and raise a report to the moderation team where it exceeds a given threshold.
However, we do recognize that this would result in us processing posts from remote instances and users, so we would commit to not using any remote posts for training unless they are identified as spam by our moderators.
3. Use of local posts for non-spam training
If we see support with #2, we'd also like to request permission from users on a voluntary basis to provide as "ham" (or non-spam / known good posts) to the spam-detection model.
While new posts would be run through the model, they would not be used for training unless you give us explicit permission to use them in that manner.
I'm hoping this method will allow users who feel comfortable with this to assist in development of the model, while not compelling anyone to provide permission where they dislike or are uncomfortable with the use of their data for AI training.
4. Temporarily limiting suspected spam accounts
If our heuristics and / or AI detection identify a significant risk or pattern of spammy behavior, we would like to be able to temporarily hide / suppress content from the offending account until a moderator is able to review it. We've also suggested an alternative idea to Glitch-SOC, the fork we run for furry.engineer and pawb.fun, to allow hiding a post until it can be reviewed.
Limiting the account would prevent anyone not following them from seeing posts or mentions by them, until their account restriction is lifted by a moderator.
In a false-positive scenario, an innocent user may not have their posts or replies seen by a user on furry.engineer / pawb.fun until their account restriction is lifted which may break existing conversations or prevent new ones.
---
We'll be leaving this Request for Comment open-ended to allow for evolving opinions over time, but are looking for initial feedback within the next few days for Idea #1, and before the end of the week for ideas #2 through #4.
On Feb 14th we migrated Lemmy from its standalone Docker setup to the same Kubernetes cluster operating furry.engineer and pawb.fun, discussed in https://pawb.social/post/6591445.
As of 5:09 PM MT on Feb 14th, we are still transferring the media to the new storage, which may result in broken images. Please do still reply to this thread if your issue is media related, but please check again after a few hours and edit your comment to say "resolved" if it's rectified by the transfer.
As of 11:02 AM MT on Feb 15th, we have migrated all media and are awaiting the media service coming back online and performing a hash check of all files. Once this is completed, uploads should work per normal.
----
To make it easier for us to go through your issues, please include the following information:
- Time / Date Occurred
- Page URL where you encountered the issue
- What you were trying to do at the time you encountered the issue
- Any other info you think might be important / relevant
Aware and investigating!
Status update
Both instances are back online again! We're currently transferring cached media from remote instances to the local storage, so avatars, emojis, and older attachments may currently appear as broken images.
As of Feb 7th at 10:45 PM Mountain Time, pawb.fun has re-generated all feeds, while furry.engineer is continuing with an estimated 25 minutes to go. We're also re-generating the ElasticSearch indicies which power the full-text search system and expect that to continue through the night.
Yes, we'll be maintaining:
- Multiple replicas across different disks (local)
- Hourly and daily snapshots (local)
- Regular off-site backups for disaster recovery
Didn't even think to do that! Added to the sidebar :3
tl;dr summary furry.engineer and pawb.fun will be down for several hours this evening (5 PM Mountain Time onward) as we migrate data from the cloud to local storage. We'll post updates via our announcements channel at https://t.me/pawbsocial.
----
In order to reduce costs and expand our storage pool, we'll be migrating data from our existing Cloudflare R2 buckets to local replicated network storage, and from Proxmox-based LXC containers to Kubernetes pods.
Currently, according to Mastodon, we're using about 1 TB of media storage, but according to Cloudflare, we're using near 6 TB. This appears to be due to Cloudflare R2's implementation of the underlying S3 protocol that Mastodon uses for cloud-based media storage, which is preventing Mastodon from properly cleaning up no longer used files.
As part of the move, we'll be creating / using new Docker-based images for Glitch-SOC (the fork of Mastodon we use) and hooking that up to a dedicated set of database nodes and replicated storage through Longhorn. This should allow us to seamlessly move the instances from one Kubernetes node to another for performing routine hardware and system maintenance without taking the instances offline.
We're planning to roll out the changes in several stages:
-
Taking furry.engineer and pawb.fun down for maintenance to prevent additional media being created.
-
Initiating a transfer from R2 to the new local replicated network storage for locally generated user content first, then remote media. (This will happen in parallel to the other stages, so some media may be unavailable until the transfer fully completes).
-
Exporting and re-importing the databases from their LXC containers to the new dedicated database servers.
-
Creating and deploying the new Kubernetes pods, and bringing one of the two instances back online, pointing at the new database and storage.
-
Monitoring for any media-related issues, and bringing the second instance back online.
We'll be beginning the maintenance window at 5 PM Mountain Time (4 PM Pacific Time) and have no ETA at this time. We'll provide updates through our existing Telegram announcements channel at https://t.me/pawbsocial.
During this maintenance window, furry.engineer and pawb.fun will be unavailable until the maintenance concluded. Our Lemmy instance at pawb.social will remain online, though you may experience longer than normal load times due to high network traffic.
----
Finally and most importantly, I want to thank those who have been donating through our Ko-Fi page as this has allowed us to build up a small war chest to make this transfer possible through both new hardware and the inevitable data export fees we'll face bringing content down from Cloudflare R2.
Going forward, we're looking into providing additional fediverse services (such as Pixelfed) and extending our data retention length to allow us to maintain more content for longer, but none of this would be possible if it weren't for your generous donations.
We've updated to Lemmy v0.19.3!
For a full change log, see the updates below:
Major changes
Improved Post Ranking
There is a new scaled sort which takes into account the number of active users in a community, and boosts posts from less-active communities to the top. Additionally there is a new controversial sort which brings posts and comments to the top that have similar amounts of upvotes and downvotes. Lemmy’s sorts are detailed here.
Instance Blocks for Users
Users can now block instances. Similar to community blocks, it means that any posts from communities which are hosted on that instance are hidden. However the block doesn’t affect users from the blocked instance, their posts and comments can still be seen normally in other communities.
Two-Factor Auth Rework
Previously 2FA was enabled in a single step which made it easy to lock yourself out. This is now fixed by using a two-step process, where the secret is generated first, and then 2FA is enabled by entering a valid 2FA token. It also fixes the problem where 2FA can be disabled without passing any 2FA token. As part of this change, 2FA is disabled for all users. This allows users who are locked out to get into their account again.
New Federation Queue
Outgoing federation actions are processed through a new persistent queue. This means that actions don’t get lost if Lemmy is restarted. It is also much more performant, with separate senders for each target instance. This avoids problems when instances are unreachable. Additionally it supports horizontal scaling across different servers. The endpoint /api/v3/federated_instances contains details about federation state of each remote instance
Remote Follow
Another new feature is support for remote follow. When browsing another instance where you don’t have an account, you can click the subscribe button and enter the domain of your home instance in the popup dialog. It will automatically redirect you to your home instance where it fetches the community and presents a subscribe button. Here is a video showing how it works.
Moderation
Reports are now resolved automatically when the associated post/comment is marked as deleted. This reduces the amount of work for moderators. There is a new log for image uploads which stores uploader. For now it is used to delete all user uploads when an account is purged. Later the list can be used for other purposes and made available through the API.
- Instance: pisskey.io
- Type: Defederation
- Affects: Pawb.Social, furry.engineer, pawb.fun
- Reason: Nazi imagery, affiliated with poa.st and other known abusive instances
- Fediseer Action: Censured
- Instance: the.asbestos.cafe
- Type: Defederation
- Affects: Pawb.Social, furry.engineer, pawb.fun
- Reason: Homophobia, harassment, trolling, admin involved abuse
- Fediseer Action: Censured
Block has been applied to the entire domain.
Evidence
- https://the.asbestos.cafe/objects/14decba5-b6fb-4c20-b8d7-8cf68374ec58
- https://the.asbestos.cafe/objects/094cfc21-7182-471a-90cc-a493fb126635
- https://the.asbestos.cafe/objects/764af9ee-288c-4151-aa41-b2e295dc95cc
- https://the.asbestos.cafe/objects/3f5960bb-8fc1-41b0-b180-7748cd0e15b3
- https://the.asbestos.cafe/objects/bee81dc2-85ee-45ae-b1b6-39f2d2d4dd6f
- Instance: lab.nyanide.com
- Type: Defederation
- Affects: Pawb.Social, furry.engineer, pawb.fun
- Reason: Trolling, harassment, homophobia, nazi imagery, admin / mod engaged abuse
- Fediseer Action: Censured
Block has been applied to the entire domain.
cross-posted from: https://pawb.social/post/3393854
> - Instance: cunnyborea.space > - Type: Defederation > - Affects: Pawb.Social, furry.engineer, pawb.fun > - Reason: Racism, antisemitism, homophobia, abusive admin, nazi imagery > - Fediseer Action: Censured > > ::: spoiler Evidence > - https://i.imgur.com/HgvMVOh.png > - https://union.place/@inquiline/111247251661793670 > :::
- Instance: cunnyborea.space
- Type: Defederation
- Affects: Pawb.Social, furry.engineer, pawb.fun
- Reason: Racism, antisemitism, homophobia, abusive admin, nazi imagery
- Fediseer Action: Censured
Evidence
- https://i.imgur.com/HgvMVOh.png
- https://union.place/@inquiline/111247251661793670
cross-posted from: https://pawb.social/post/3337642
> - Instance: bv.umbrellix.org > - Type: Defederation > - Affects: Pawb.Social, furry.engineer, pawb.fun > - Reason: Toxicity, abusive admin, death threats, emotional abuse > - Fediseer Action: Censured > > ::: spoiler Evidence > - (CW: Abuse) https://bv.umbrellix.org/notice/AZwi9Is6mxT9vo5TSi > - https://sunbeam.city/@kayttaja@toot.site/111142509643025163 > ::: > > Admin Note: This block applies to the root domain (umbrellix.org) and all associated sub-domains.
- Instance: bv.umbrellix.org
- Type: Defederation
- Affects: Pawb.Social, furry.engineer, pawb.fun
- Reason: Toxicity, abusive admin, death threats, emotional abuse
- Fediseer Action: Censured
Evidence
- (CW: Abuse) https://bv.umbrellix.org/notice/AZwi9Is6mxT9vo5TSi
- https://sunbeam.city/@kayttaja@toot.site/111142509643025163
Admin Note: This block applies to the root domain (umbrellix.org) and all associated sub-domains.
Currently, we’re running the Ubiquiti Dream Machine directly as the modem via PPPoE, but there appears to be an intermittent issue with the software implementation that results in periodic downtimes of a few minutes while it reconnects.
We’re looking at switching this back out with the ISP provided router in pass through mode to negate the PPPoE connectivity drop.
We don’t expect this to take longer than 1 hour to switch over and test for reliability before bringing the services back up.
We’ll be performing this maintenance around 11 AM US Mountain Time, and will provide updates via the Telegram channel at https://t.me/pawbsocial.
cross-posted from: https://pawb.social/post/3077174
> - Instance: liberdon.com > - Type: Defederation > - Affects: Pawb.Social, furry.engineer, pawb.fun > - Reason: Harassment, trolling, misinformation, sexism, homophobia > - Fediseer Action: Censured > > ::: spoiler Evidence > - https://liberdon.com/@ghast > - https://liberdon.com/@ghast/111178732016951128 > - https://liberdon.com/@rimugu/111178647646581863 > - https://liberdon.com/@aristoh4ck8r/111177188127718387 > - https://liberdon.com/@gunkslinger/111175171054509579 > - https://liberdon.com/@TylerAbeoJordan/111174105820298526 > - https://liberdon.com/@TylerAbeoJordan/111174078685171464 > - https://liberdon.com/@TylerAbeoJordan/111173743376687580 > - https://liberdon.com/@medicineman9/111173062104385765 > - https://liberdon.com/@spinneria/111169619274938220 > - https://liberdon.com/@nosat/111165212240469156 > ::: >
One of the data storage systems (CEPH) encountered a critical failure when Proxmox lost connection to several of its nodes, ultimately resulting in the CEPH configuration being cleared by the Proxmox cluster consensus mechanism. No data, except ElasticSearch, was stored on CEPH.
When the connection was lost to the other nodes, a split-brain occurred (when nodes disagree on which changes are authoritative and which should be dropped). As we tried to recluster all of the nodes, a resolution occured that resulted in the ceph.conf file being wiped and the data on CEPH being unrecoverable.
Thankfully, we’ve suffered no significant data loss, with the exception of having to rebuild the Mastodon ElasticSearch indexes from 6 AM this morning to present.
I’d like to profusely apologize for the inconvenience, but we felt it necessary at the time to offline all services as part of our disaster recovery plan to ensure no damage occurred to the containers while we investigated.
- Instance: liberdon.com
- Type: Defederation
- Affects: Pawb.Social, furry.engineer, pawb.fun
- Reason: Harassment, trolling, misinformation, sexism, homophobia
- Fediseer Action: Censured
Evidence
- https://liberdon.com/@ghast
- https://liberdon.com/@ghast/111178732016951128
- https://liberdon.com/@rimugu/111178647646581863
- https://liberdon.com/@aristoh4ck8r/111177188127718387
- https://liberdon.com/@gunkslinger/111175171054509579
- https://liberdon.com/@TylerAbeoJordan/111174105820298526
- https://liberdon.com/@TylerAbeoJordan/111174078685171464
- https://liberdon.com/@TylerAbeoJordan/111173743376687580
- https://liberdon.com/@medicineman9/111173062104385765
- https://liberdon.com/@spinneria/111169619274938220
- https://liberdon.com/@nosat/111165212240469156
We've migrated all of the Pawb.Social (Lemmy) media from within the container to the new local NAS.
We'll be performing the same updates for pawb.fun and furry.engineer over the course of the next week, minimizing downtime where possible.
We will need to take the services offline once the initial transfer is completed to perform a final check for any new data, and transition to the local NAS, but we'll post an announcement prior to the final maintenance for each instance.
These changes are to allow us longer and cheaper retention of remote and local media across all of our services, and to allow us to begin backing up media in case of a catastrophic failure.
- Instance: asimon.org
- Type: Defederation
- Affects: Pawb.Social, furry.engineer, pawb.fun
- Reason: Racism, homophobia, transphobia, trolling, abusive admin
- Fediseer Action: Censured
Evidence
https://asimon.org/@coin/posts/Aa8tebnT4kYwTVwrwW https://asimon.org/@coin/posts/AZxmCGq8YxrIx5B6UC https://asimon.org/objects/eda7faae-454b-46f7-a309-94066c261ce6 https://asimon.org/@coin/posts/AZKA8C9YIF3zLb2WLA
With the upgrade to Mastodon 4.2.0, the way the search system works is changing to allow more broad searches across posts made across the fediverse.
Cutting to the chase: Full-text search across opted-in posts will be possible in the next few days.
----
In more depth, the system will allow you to search across your own posts and posts you've interacted with from others irrespective of their opt-in status for full-text search, but will additionally allow you to search ANY posts made by users that opt-in to allow their posts to be indexed.
To that effect, a new setting was added to the Public Profile > Privacy and Reach page called "Include public posts in search results" which is disabled by default. Turning this on will allow any user across the Fediverse to search and find your posts using full-text search.
Shortcuts:
- furry.engineer users click here
- pawb.fun users click here
- For everyone else: There's Mastercard
(Sorry not sorry xD)But, just take your instance's domain and add/settings/privacy
to the end (e.g.https://INSTANCE.TLD/settings/privacy
)
To allow our users to decide if this is a feature they want to use on their posts going forward, we won't be enabling ElasticSearch until Friday Sept. 22.
----
Additionally, new keywords will be added to the search system:
from:me
before:2022-11-01
,after:2022-11-01
,during:2022-11-01
language:fr
has:poll
in:library
for searching only in posts you have written or interacted with
These will be enabled on Friday along with the rest of the changes to the search system.
----
If you've got any questions, please let us know!
Here's a link to the post I made with some pictures, some of the specs, and a look at the other hardware we're got in the rack: https://furry.engineer/@crashdoom/110821928529948298 :3
We've got a few we'll be posting once we've got the rest of the rack all tidied up again :3
It was actually remarkably simple to do, just following the guide on the docs page, but we were on 4.1.2 so here be dragons if you're on 3.4.6. But, Glitch-soc does make you do both sets of migrations just in case, so it might be fine.
Yep, markdown is the formatting language used by Lemmy on the backend so all of these should work here too!
Maintenance will begin shortly on all Pawb.Social services. We anticipate the downtime being no longer than two hours, and will endeavor to bring the services online as soon as possible.
I’d say so, they do serve different purposes and it isn’t yet possible to follow Mastodon accounts from Lemmy.
Mastodon is to Twitter, as Lemmy is to Reddit. :3
Apologies for the delay, GitHub went down yesterday so I couldn't pull the build tag. Should be fixed now :3
Stand by, I just realized the version isn't even showing up in the UI...
Yep! But I had a scare for a little while as it initially migrated and loaded everything. There seems to be a lot less output in the docker logs
command too which is unhelpful and nerve wracking.
Mind taking some screenshots of the problematic areas?
Also, apparently there's emoji now... Just the implementation is a bit... jank XD
Potentially, it's also a catch-22.
Preemptively stating we'll block them is on the expectation that their moderation practices will follow to this new platform and will inevitably lead to the same issue a lot of users opted to leave Facebook and Twitter for: Transphobia, homophobia, sexism, racism, misinformation, and an unwillingness to moderate such away.
Not blocking them has the opposite effect, we end up with content flooding from this new platform drowning out users with abusive content, having to go through deleting it with the small team we have, and inevitably blocking them.
While I don't think Facebook would knowingly or willingly host illegal content, immoral and toxic content that is a detriment to our community is their bread and butter which we have a clear-cut policy of not tolerating.
Facebook is a known toxic entity that is unwilling to moderate, in the same way as Gab or Truth Social, and we don't want to expose users to that. If I end up with egg on my face and being wrong, and Facebook does completely change their tune, I'll own up to my preconceptions being incorrect and apologize.
There’s no reason we couldn’t reconsider in the future if they show signs of meaningful change and that they would be good actors in the Fediverse.
I just want to trend towards caution given their previous track record and that appeared to be the trend I was seeing in the community as well.
![crashdoom](https://pawb.social/pictrs/image/41a2b1fa-efe3-40e7-a5f4-a65cb0623919.png?format=webp&thumbnail=64)
Network Administrator for Pawb.Social, furry, and a programmer
Mastodon: @crashdoom@furry.engineer