Nextcloud není třeba představovat. Je to nejoblíbenější software s otevřeným zdrojovým kódem pro vlastní hostování sady pro spolupráci, která vám poskytuje přístup ke spolupráci na dokumentech, hostování souborů, nástěnkám pro řízení projektů a chatovací službě.
Nextcloud jsme používali pro správu našich týmových aktivit na Linux Handbook a It's FOSS. Naši instanci Nextcloud hostujeme sami pomocí kontejneru Docker. Tato zkušenost s vlastním hostováním nás naučila několik důležitých lekcí a já se o ně s vámi podělím. To vám pomůže, pokud se stanete každodenním správcem Nextcloud.
Předpokládám, že k nasazení Nextcloud používáte Docker. Většina tipů je soustředěna kolem toho, zatímco některé jsou obecné rady, které jsou platné pro všechny druhy nasazení Nextcloud.1. Použijte příkaz occ na Nextcloud s Docker
Příkaz occ pochází z ownCloud, což je zkratka „ownCloud Console“ primárně používaná pro údržbu, diagnostiku a opravy. Vzhledem k tomu, že Nextcloud je větev vlastní kódové základny Cloud 2016, occ
design je velmi podobný.
Pro administrátory Nextcloud mohou být znalosti o jeho použití velmi užitečné pro činnosti údržby, a proto je referenční příručka velmi užitečná.
Na Dockeru je však konkrétní syntaxe, jak jej používat, zcela odlišná a zdlouhavější:
docker exec -u www-data -it nextcloud php occ <command>
Zde používáte docker exec
s www-data
jako uživatel. nextcloud
je název kontejneru Nextcloud Docker a php
se používá ke spuštění occ
příkaz z kontejneru.
2. Neupgradujte Nextcloud hned po novém vydání
Zcela nové vydání Nextcloud může být velmi lákavé. Mnohokrát však bylo pozorováno, že okamžitý přechod na upgrade může potenciálně učinit Nextcloud zcela nepoužitelným.
Doporučuji počkat na vydání alespoň prvního patche. Například upgrade z 20.0.6 na 21.0.0 může být riskantní zkušeností. Přímý upgrade z xx.0.x na xy.0.0 se NEDOPORUČUJE. Místo toho by bylo lepší počkat alespoň na verzi xy.0.1.
3. Upřednostněte zabezpečení a opravy chyb před funkcemi, kdykoli upgradujete Nextcloud
Je snadné nechat se zlákat novou funkcí dostupnou pouze v nově vydané verzi. Ujistěte se, že upgrade není za cenu snížení výkonu nebo zhoršené funkčnosti. Může se týkat celého Nextcloudu nebo konkrétní aplikace Nextcloud, která může vážně ovlivnit vaši produktivitu.
4. Co je třeba zvážit před upgradem instance Nextcloud
Důkladně zkontrolujte oficiální fórum a také úložiště GitHub pro nejnovější problémy, kdykoli uvažujete o upgradu. Bohužel, jak si toho v těchto dnech všímáme, je v dnešní době velmi běžné, že kvůli problému je rozhraní Nextcloud extrémně pomalé.
Ujistěte se tedy, že můžete replikovat scénář na klonovaný server a jeho řešení, než to uděláte na produkčním serveru. Pozastavte aktualizaci, pokud zhorší funkčnost.
5. Před upgradem vždy zálohujte databázi a svazek Nextcloud
Na úrovni hostitelského systému nikdy nemůžete použít stejné soubory na upgradovaném Nextcloudu se sníženou verzí. Před provedením upgradu si proto vždy vytvořte zálohu svého Nextcloudu a jeho odpovídajícího databázového svazku. Přístup je stejný, o kterém jsem hovořil pro Ghost v předchozím příspěvku.
7 užitečných tipů pro vlastní hostování blogu Ghost s Dockerem Užitečný kontrolní seznam, který může zabránit mnoha opakujícím se problémům s údržbou na vaší instanci Ghost Docker po jejím nasazení. Příručka pro LinuxAvimanyu Bandyopadhyay6. Pravidelně sledujte sekci „Přehled“ v nastavení Nextcloud
Víte, že v Nastavení je sekce Přehled? Tato část vás varuje před případnými problémy se zabezpečením a nastavením.
Dostanete se k němu tak, že přejdete do pravého horního rohu hlavního panelu a přejdete do nastavení.
V části Správa se zobrazí možnost Přehled.
Zde můžete získat představu o jakýchkoli problémech s výkonem nebo zabezpečením vašeho Nextcloudu prostřednictvím příslušných zpráv na řídicím panelu.
7. Zajistěte pravidelné bezpečnostní kontroly
Nextcloud poskytuje bezplatný webový nástroj pro kontrolu jakýchkoli známých zranitelností na vašem serveru Nextcloud. Nejlepší na tom je, že na svůj server ani nemusíte nic instalovat. Stačí zadat adresu URL vaší instance.
Čas od času se důrazně doporučuje prohledat adresu URL vaší instance, abyste měli představu o bezpečnostních parametrech vašeho nasazení Nextcloud.
8. Sledujte aplikace, které používáte
O mnoha aplikacích na Nextcloud je známo, že způsobily, že celé rozhraní Nextcloud je zcela nepoužitelné. Sledujte fóra a problémy GitHubu jednotlivých aplikací, které používáte ve své instanci Nextcloud.
9. Naklonujte svůj produkční server pro testování upgradů
Pokud používáte cloudový server, jako je Linode, máte možnost snadno naklonovat celý server.
Linode | Nezávislý otevřený cloud pro vývojáře Naším posláním je urychlit inovace tím, že bude cloud computing jednoduchý, cenově dostupný a dostupný pro všechny. LinodeToto je mimořádně užitečný krok k udržení prostojů (pokud existují) na absolutním minimu, kdykoli uvažujete o upgradu instance Nextcloud. Zajišťuje také živou záložní kopii vaší instance Nextcloud dostupnou v pravidelných intervalech při každém klonování serveru.
Jakmile se ujistíte, že jde o stabilní aktualizaci, nějakou dobu ji sledujte na klonovaném serveru. Když jste si naprosto jisti, že se jedná o stabilní přechod, zaznamenejte si své zkušenosti prostřednictvím kompletní dokumentace procesu upgradu a kroků, které jste možná podnikli k vyřešení případných problémů po upgradu. Později můžete pokračovat a replikovat stejné kroky na produkčním serveru podle vlastní dokumentace.
10. Hledejte nahlášené problémy na fórech
Nextcloud obvykle poskytuje postupný proces řešení problémů, které hlásí v nastavení přehledu. Pokud to nestačí, můžete zkopírovat a vložit nahlášené problémy na „Problémy s GitHubu“ nebo na fórum Nextcloud.
Existuje vysoká pravděpodobnost, že problém je známý a oprava již byla poskytnuta. Bez čekání na další opravu můžete opravu nejprve otestovat na klonovaném serveru a sami ji zmírnit.
Bonusový tip
Nextcloud obecně doporučuje přepnout do režimu údržby, když jsou nutné specifické příkazy.
Například occ db:convert-filecache-bigint
což zahrnuje BigInt (64bitové) identifikátory navržené po upgradu.
Ale raději bych vždy přepnul do režimu údržby, než spustíte jakýkoli příkaz occ navržený v části „Systém a zabezpečení“.
V návaznosti na ukázkový příkaz uvedený v bodě 1 by odpovídající příkaz byl:
docker exec -u www-data -it nextcloud php occ maintenance:mode --on
Nyní spusťte příkaz podle návrhu. Předpokládejme například, že si všimnete této zprávy:
Some indices are missing in the database. Because adding indexes to large tables may take some time, they have not been added automatically. By executing "occ db: add-missing-indices", missing indexes can be added manually while the instance is running. Once the indexes have been added, queries to these tables are usually faster.
Zde je doporučeno spustit occ db: add-missing-indices
. Jak je však uvedeno v bodě 1, toto doporučení je nedostatečné; zvláště pokud používáte Nextcloud s Dockerem. Kompletní požadovaný příkaz je tedy:
docker exec -u www-data -it nextcloud php occ db: add-missing-indices
[email protected]:~$ docker exec -u www-data -it nextcloud php occ db:add-missing-indices
Check indices of the share table.
Check indices of the filecache table.
Check indices of the twofactor_providers table.
Check indices of the login_flow_v2 table.
Check indices of the whats_new table.
Check indices of the cards table.
Check indices of the cards_properties table.
Check indices of the calendarobjects_props table.
Adding calendarobject_calid_index index to the calendarobjects_props table, this can take some time...
calendarobjects_props table updated successfully.
Check indices of the schedulingobjects table.
Adding schedulobj_principuri_index index to the schedulingobjects table, this can take some time...
schedulingobjects table updated successfully.
Nyní vypněte režim údržby:
docker exec -u www-data -it nextcloud php occ maintenance:mode --off
Námět k zamyšlení
Všech výše uvedených 10 ukazatelů je výsledkem více než roční zkušenosti s živým produkčním systémem. Během této doby byl pro mě následující trojúhelník velmi důležitým vodítkem, jak udržet křehkou rovnováhu mezi zabezpečením, použitelností a funkčností a korelovat to s tím, jak Nextcloud funguje.
To platí pro každý systém nasazení a nejen pro Nextcloud. Toto jsou bezpochyby základní pilíře jakéhokoli nasazení založeného na DevOps.
Pokud jde o Nextcloud, musíte mít vždy na paměti klíčový rozdíl mezi Nextcloud a Nextcloud Hub. Nextcloud sám o sobě je primárně služba hostování souborů, zatímco Nextcloud Hub je platforma pro spolupráci na obsahu (podmnožina Nextcloud).
Jak můžete spojit tento scénář s funkčností a snadností použití? V diskuzi výše jsem zmínil Collabora Online, což je součást Nextcloud Hub, kterou lze jasně korelovat se snadností použití.
Pokud se celý Nextcloud Dashboard zastaví kvůli nově vydané verzi Collabora Online, jeho funkčnost jde úplně do háje. Collabora Online byla spojena s Nextcloud Hub s ohledem na snadné použití správa dokumentů online. Ale pokud to přijde za cenu drastického zpomalení celého GUI a jeho úplné nepoužitelnosti, zcela to marí jeho primární účel! Proto je vždy velmi nutné hlídat udržování této jemné rovnováhy mezi funkčností a použitelností (samozřejmě s obezřetným ohledem na bezpečnost).
Každá aplikace je jiná, a proto může být způsob kalibrace každé z těchto 3 metrik extrémně důležitý, záleží případ od případu.
Opravdu doufám, že vám tyto odkazy a myšlenky pomohou při každodenní správě instance Nextcloud, zvláště pokud jste správce, který spravuje službu Nextcloud s vlastním hostitelem pomocí Dockeru. Pokud máte nějaké připomínky, návrhy nebo nový bod ke sdílení, udělejte to prosím v sekci níže.