Configurer BackBlaze S3 avec BunnyCDN

So I checked BunnyCDN. I can verify that it did not go through the CDN for the backup. The traffic says 0 KB. The host CDN url is different from the upload one so it seems Discourse isn’t using it. However, I can verify that the backups are being uploaded to Backblaze B2 from Discourse.

1 « J'aime »

Ah, great, thank you for checking. That confirms what I suspected. Perhaps @Bill should update the OP guide?

1 « J'aime »

Sure! Not sure how to word it. Should I just put that you only need one pull zone and the CDN cannot access a private bucket?

1 « J'aime »

I would eliminate everything from ‘On your BunnyCDN dashboard, you should create a second pull zone’ up thru the paragraph ending with ‘“standard tier 10$/TB” that I used my for uploads bucket.’

Also, it seems you do need a second CDN pull zone, but it’s not for the backup. I was confused about this, and couldn’t get offsite uploads working until I correctly set up one pull zone to send uploads to BackBlaze (as you outlined) and a second pull zone to pull assets from BackBlaze. See my question about that and the response I got here for more info.

It looks like I don’t have the discourse permissions for editing the original thread anymore, it probably expired after a set time or I edited it too many times. I cant get to the edit area.

Ah, ok. I guess you would need to ask a mod. In any case, even though there was a glitch, I was grateful for your how-to!

1 « J'aime »

The first post is a wiki now (it was when I checked it, not sure if someone got to it before now) so any TL1 or higher user can edit it.

2 « J'aime »

Salut, je voulais juste signaler que Bunny a également conclu un partenariat avec Backblaze ! Ainsi, le transfert de Backblaze vers Bunny est désormais totalement gratuit. Vous pouvez donc, en plus d’une sécurité accrue, simplement transférer vos données vers Bunny sans passer par Cloudflare !

2 « J'aime »

Cette étape est-elle excessive ? Je suppose qu’une meilleure question serait… quelle est l’importance des avantages de cette étape supplémentaire si vous avez déjà Backblaze configuré pour le stockage et Bunny comme CDN ? Des éclaircissements à ce sujet m’aideraient énormément. :folded_hands:

J’ai besoin d’aide. Je me suis perdu pendant les deux derniers jours à essayer de faire fonctionner les sauvegardes et les images sur Backblaze.

J’ai utilisé ce post de forum et d’autres pour essayer de le configurer. Maintenant, je reçois un message d’erreur sur les sauvegardes (bien que je n’aie toujours pas réussi à faire fonctionner les téléchargements, mais les sauvegardes d’abord).

J’ai configuré des buckets dans Backblaze, des clés et des zones de téléchargement.

Voici les paramètres dans Tous les paramètres du site pour S3

Voici les paramètres dans les Paramètres de sauvegarde

Voici mon app.yml - la deuxième section qui est commentée, j’ai joué avec hier mais cela faisait planter Discourse à l’écran de chargement.

Lorsque j’exécute des sauvegardes, j’obtiens cet écran, je suppose parce que je n’ai pas réussi à faire fonctionner la partie téléchargements. Cela peut être sans importance, mais j’ai pensé que je devrais l’ajouter.

Voici le journal d’erreurs sur la sauvegarde

Voici le journal d’erreurs

Je devrais aussi mentionner que j’ai exécuté les tâches Rake en utilisant

rake uploads:migrate_to_s3
rake posts:rebake

Mon cerveau tourne en boucle après deux jours d’essais pour y arriver. Quelqu’un peut-il m’aider à comprendre où je me trompe ? J’espère avoir inclus tout ce qui est nécessaire pour le dépannage. :tired_face:

1 « J'aime »

Si vous avez les paramètres dans votre fichier yml, ils n’apparaîtront pas dans les paramètres du système.

Je vous recommande de suivre Configurer un fournisseur de stockage d’objets compatible S3 pour les téléchargements

Bonjour, merci pour la réponse. J’ai essayé ce lien hier et cela ne fonctionnait pas. Cela empêchait le chargement du site.

La progression la plus éloignée que j’ai pu obtenir est avec les paramètres actuels que j’ai. Bien qu’il semble se plaindre d’une région invalide et je ne suis pas sûr du réglage que je dois changer.

C’est parce que vous avez manqué la partie en haut qui télécharge les actifs vers s3

J’ai ajouté le code des hooks et j’ai de nouveau utilisé la configuration du lien que vous avez posté. Ça bloque encore.

J’ai de nouveau mis cette configuration en commentaire et j’ai remis celle que j’utilisais précédemment. J’ai remarqué que le paramètre de région S3 que j’avais était l’URL complète, je l’ai donc changé pour qu’il soit « us-west-002 ».

Maintenant, lorsque j’exécute la sauvegarde, elle échoue et j’obtiens une erreur différente : EXCEPTION : En-tête non pris en charge ‘x-amz-checksum-crc32’ reçu pour cet appel d’API.

Je pense que je vais abandonner et télécharger manuellement les sauvegardes tous les jours.

J’ai persévéré en essayant de faire fonctionner cela au risque de perdre la raison :wink:

Donc, la dernière erreur de somme de contrôle que j’ai obtenue, je l’ai résolue avec l’aide de ceci - Can't rebuild due to AWS SDK gem bump and new AWS Data Integrity Protections - #28 by PatPatterson

Cela a été fait en ajoutant ce qui suit à la section env de app.yml

AWS_REQUEST_CHECKSUM_CALCULATION: WHEN_REQUIRED
AWS_RESPONSE_CHECKSUM_VALIDATION: WHEN_REQUIRED

Et en commentant ceci dans la section hooks de app.yml

after_assets_precompile:
    - exec:
        cd: $home
        cmd:
          - sudo -E -u discourse bundle exec rake s3:upload_assets
  #        - sudo -E -u discourse bundle exec rake s3:expire_missing_assets

les autres paramètres env sont définis comme suit

DISCOURSE_S3_ACCESS_KEY_ID: 'key'
DISCOURSE_S3_SECRET_ACCESS_KEY: ‘key’
DISCOURSE_BACKUP_LOCATION: 's3'
DISCOURSE_ENABLE_S3_UPLOADS: true
DISCOURSE_S3_BACKUP_BUCKET: 'backupbucketonbackblaze’
DISCOURSE_S3_REGION: 'us-west-002'
DISCOURSE_INCLUDE_S3_UPLOADS_IN_BACKUPS: true

J’ai effectué une sauvegarde avant d’inclure DISCOURSE_INCLUDE_S3_UPLOADS_IN_BACKUPS: true

Et j’ai eu une sauvegarde réussie vers Backblaze. OUIIII !!!

Lorsque j’ai ajouté la ligne dans app.yml pour inclure les téléchargements, la sauvegarde a généré une erreur qui est la suivante

EXCEPTION: tar --append --file /var/www/discourse/public/backups/default/my-server-name-2025-04-17-222758-v20250417043438.tar uploads/default
Failed to append uploads to archive.
tar: uploads/default: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors

Je ne suis pas sûr où ce répertoire est censé être ni comment le corriger. Est-ce un répertoire que je dois créer sur le serveur discourse ou sur Backblaze ? Ou un paramètre que j’ai manqué dans les paramètres du site ou dans app.yml

Toute aide serait grandement appréciée.

1 « J'aime »