Մի քանի տնօրինակների անկախություն (Multi-Tenancy Isolation)
Ultimate Multisite: Multi-Tenancy 1.2.0-ը աջակցում է յուրաքանչյուր ենթատարածքի համար առանձին բազայի և ֆայլային համակարգի անկախության (isolation)՝ ինքնին տիրապետող հաճախորդների համար։ Սա պահպանում է հաճախորդի տվյալները առանձին, միևնույն ժամանակ պահպանելով ցանցային մակարդակի տրամադրումը (provisioning), հաշվարկները (billing) և վարչական գործողությունները։
Անկախության ռազմավարություն (Isolation strategy)
Օգտագործեք տիրապետող անկախություն (sovereign isolation) այն հաճախորդների համար, ովքեր պահանջում են ပိုմակարտ անվտանգության բաժանում, հատուկ ֆայլային տարածքի պահպանում կամ առանձին հոստիի սահման։
Յուրաքանչյուր տիրապետող տնօրինակ պետք է ունենա.
- Հատուկ տնօրինակի բազա (tenant database) կամ հոստիի համար հաստատված բազայի նախածանցի (database prefix strategy) ստեղծում։
- Հատուկ տնօրակի ֆայլային համակարգի արմատ (dedicated tenant filesystem root)։
- Տնօրակի գրանցման մուտքագրում (tenant registry entry), որը կապում է սайտը դրա բազայի, արմատական ուղու (root path), հոստի անունի (hostname) և անկախության մոդելի հետ։
- Միգրացիայի վավերացման արդյունք (migration verification result)՝ տնօրակը համարվելու կենդանի (live) լինելուց առաջ։
Բազայի հոստիի կապակցում (Database host binding)
Տարբերակ 1.2.0-ը փոխում է ստանդարտ «միևնույն մեքենայով» հոստիի կապակցման վարքագիծը տիրապետող (sovereign) ինստալացիաների համար։ Միևնույն մեքենայի արժեքները, ինչպիսին է localhost-ը, նորմալացվում են այնպես, որ Bedrock-ը, FrankenPHP-ը և կոնտեյներով (containerized) WordPress ինստալացիաները կարողանան թույլ տալ և ստուգել թույլտվությունները հոստիի տողի (host string) համապատասխան MySQL-ին։
Տիրապետող տնօրակ կազմաձևելիս.
- Սահմանեք բազայի հոստին այն արժեքով, որը պահանջում է տնօրակի runtime-ի (տեղական գործարկման)։
- Օգտագործեք
localhost-ը տեղական սոկետային ինստալացիաների համար, երբ հոստինը սպասում է տեղական կապեր։ - Օգտագործեք
127.0.0.1կամ միայն սերվիսի անուն (service hostname), միայն այն դեպքում, եթե բազայի սերվերը տալիս է այդ հոստինին իրավունքներ։ - Կատարեք միգրացիայի վավերացումը՝ հոստիի կապակցում փոխելուց հետո։
Եթե վավերացումը ցույց է տալիս թույլտվությունների բացակայություն (grant failures), համեմատեք տնօրակի բազայի օգտվողի (DB user) տրամադրված իրավունքները կազմաձևված հոստիի կապակցման հետ։ user@localhost-ին տրամադրված օգտվողը տարբեր է [email protected]-ից կամ user@%-ից։
Ֆայլային համակարգի արմատ (Filesystem root)
Անվտանգության արմատը (tenant root) պետք է կայուն լինի վերաբերում վերաբերում վերագործարկմաններին և տեղադրություններին։ Խուսափեք ժամանակավոր մոնտաժային ուղիներից։ Bedrock-ոիլի (Bedrock-style) տեղադրումների համար ստուգեք, որ անվտանգության արմատը ցույց է տալիս WordPress-ի վեբ արմատը, որը ենթադրվում է տենանտի բութստրափի (bootstrap) կողմից, այլ ոչ միայն նախագծի արմատը։
Հաստատման հերթականություն (Provisioning order)
Նոր սովրենային տենանտների համար օգտագործեք հետևյալ հերթականությունը.
- Ստեղծել տենանտի գրանցման մուտքը (tenant registry entry):
- Ստեղծել տենանտի բազան և բազայի օգտվողը։
- Բութստրափել տենանտի սխեման (schema)։
- Անվտանգության տենանտի օգտվողները (users) ստեղծել։
- Կազմաձևել տենանտի ֆայլային ուղիները (filesystem paths)։
- Կատարել մIGRATION-ի հաստատումը (migration verification)։
- Հաստատման անցնելուց հետո փոխել ռուտինգը կամ DNS-ը։
Այս հերթականությունը կանխում է, որ մասնակիորեն մեկուսացված տենանտները չստանան տրաֆիկ նախքան այնպես, երբ բազայի գրողը (writer), օգտվողները և ֆայլային համակարգը պատրաստ լինեն։