Multitenantní režim
V multitenantním režimu jedna instalace ALVAO Serveru obsluhuje několik zákazníků (tenantů).
Vytvoření databáze tenantů
Na SQL Serveru vytvořte databázi tenantů pomocí spuštění skriptu (např. z SQL
Server Management Studia):
create database
AlvaoTenants
go
use AlvaoTenants
go
create table Tenant
(
id int
identity(1,1)
constraint
PK_Tenant_id primary
key
clustered,
Organization
nvarchar(255),
Domain
nvarchar(255),
ConnectionString
nvarchar(max),
IsProvider
bit
not null
default
(0)
)
Poznámka:
Provede se pouze jednou.
Poznámka: Na Azure SQL Serveru spusťte skript ve dvou samostatných krocích:
- Vytvořte databázi tenantů (create database AlvaoTenants).
- Připojte se k nové databázi a vytvořte v ní tabulku tenantů (create table Tenant (...)).
Poznámka: Na SQL Serveru nastavte potřebná práva pro IIS procesy. Pro databázi tenantů je zapotřebí povolit uživatelskou roli db_datareader.
Nastavení multitenantního režimu
Asset Management WebService
- Upravte soubor web.config, např. pomocí
Poznámkového bloku.
- Najděte sekci
configuration/connectionStrings.
- V této sekci nahraďte stávající připojení za nové. Nahraďte jej připojením s názvem
AlvaoTenants, které obsahuje připojovací řetězec na databázi tenantů.
Př.:
<add name="AlvaoTenants" connectionString="Data Source=server1;Initial Catalog=AlvaoTenants; Max Pool Size=2000; Integrated Security=True" providerName="System.Data.SqlClient"/>
Poznámka:
Pokud AM WS běží v multitenantním režimu, ukládá přijaté soubory detekcí
implicitně do složky:
c:\ProgramData\ALC\ALVAO Asset Management Collector\Detections\<název organizace tenanta>
Asset Management Collector
Pro multitenantní režim si nejprve připravte ZIP balíček, kterým budete pro jednotlivé tenanty instalovat instance služby:
- Nainstalujte MSI balíček
AlvaoAssetCollector.msi
pomocí "administrátorské"
instalace:
msiexec /a AlvaoAssetCollector.msi
Pozn.: Příkazovou řádku spusťte "jako administrátor".
- Do složky, kam jste balíček
nainstalovali (kde jsou EXE a
DLL knihovny aplikace) rozbalte
obsah balíčku
CollectorServiceControlScripts.zip
- Všechny soubory pak
"zazipujte" a vytvořte jeden ZIP
archiv, např.:
AMCollector.zip
Mailbox Reader
Pro multitenantní režim si nejprve připravte ZIP balíček, kterým budete pro jednotlivé tenanty instalovat instance služby:
- Nainstalujte MSI balíček
AlvaoServiceDeskMailboxReader.msi
pomocí "administrátorské"
instalace:
msiexec /a AlvaoServiceDeskMailboxReader.msi
Pozn.: Příkazovou řádku spusťte "jako administrátor".
- Do složky, kam jste balíček
nainstalovali (kde jsou EXE a
DLL knihovny aplikace) rozbalte
obsah balíčku
MailboxReaderServiceControlScripts.zip
- Všechny soubory pak
"zazipujte" a vytvořte jeden ZIP
archiv, např.:
SDMailboxReader.zip
Service Desk WebService
- Upravte soubor web.config, např. pomocí Poznámkového bloku.
- Najděte sekci
configuration/connectionStrings.
- V této sekci nahraďte stávající připojení za nové. Nahraďte jej připojením s názvem AlvaoTenants, které obsahuje připojovací řetězec na databázi tenantů.
Př.:
<add name="AlvaoTenants" connectionString="Data Source=server1;Initial Catalog=AlvaoTenants; Max Pool Size=2000; Integrated Security=True" providerName="System.Data.SqlClient"/>
WebApp
- Upravte soubor web.config, např. pomocí Poznámkového bloku.
- Najděte sekci
configuration/connectionStrings.
- V této sekci nahraďte stávající připojení za nové. Nahraďte jej připojením s názvem AlvaoTenants, které obsahuje připojovací řetězec na databázi tenantů.
Př.:
<add name="AlvaoTenants" connectionString="Data Source=server1;Initial Catalog=AlvaoTenants; Max Pool Size=2000; Integrated Security=True" providerName="System.Data.SqlClient"/>
Custom Apps WebService
Tato komponenta se instaluje pouze pro tenanty, kteří mají zakoupený modul ALVAO Asset Management Custom Apps nebo ALVAO Service Desk Custom Apps.
Pro multitenantní režim si nejprve připravte ZIP balíček, kterým budete pro jednotlivé tenanty instalovat instance služby:
- Nainstalujte MSI balíček AlvaoCustomAppsWebService.msi pomocí "administrátorské" instalace:
msiexec /a AlvaoCustomAppsWebService.msi
Poznámka:
Příkazovou řádku spusťte "jako administrátor".
- 2. Složku z IIS, kam se aplikace nainstalovala (např. C:\inetpub\wwwroot\AlvaoCustomAppsWebService), „zazipujte“ a vytvořte jeden ZIP archiv, např.: CustomAppsWebService.zip
Přidání nového tenanta
- Pro nového zákazníka zaregistrujte v DNS novou (sub)doménu (např.
zakaznik1.alvao.com), která míří na IP adresu serveru s nainstalovanými webovými aplikacemi Alvao.
- Na SQL Serveru vytvořte pomocí utility DatabaseDeploy pro zákazníka
novou databázi v odpovídajícím jazyce (dle požadavku
zákazníka). Databázi aktivujte.
Poznámka:
- Název databáze je zaznamenán jako case sensitive text, proto dbejte na dodržení velkých a malých písmem při přepisování.
- Při vytvoření nové databáze se automaticky vygeneruje silný ověřovací kód pro AM Agenty. Kód je možné změnit v
globálním nastavení detekcí.
Poznámka: Na SQL Serveru nastavte potřebná práva pro IIS procesy. Nastavení pro databáze tenantů je stejné jako u databáze v single tenant režimu.
Doporučené uživatelské role jsou db_datareader, db_datawriter, db_ddladmin a db_executor.
- Jděte do databáze AlvaoTenants např. pomocí SQL Server Management Studia, upravte tabulku
Tenant a vložte do ní odpovídající hodnoty.
Př.:
- Organization = Zákazník 1
- Domain = zakaznik1.alvao.com
- ConnectionString = Data Source=server1;Initial Catalog=Zakaznik1;
Max Pool Size=2000; Integrated Security=True
Poskytovatel Alvao
Jeden z tenantů může být označen jako poskytovatel Alvao.
Poskytovatel má právo vytvářet Aktuální zprávy i pro ostatní tenanty.
Pro označení poskytovatele nastavte do jeho řádku v databázi tenantů do sloupce IsProvider hodnotu 1.
Asset Management Collector
- Vytvořte novou složku s názvem tenanta ve složce:
C:\Program Files (x86)\ALVAO\ Asset Management Collector\
Např.: Zákazník 1
- Rozbalte ZIP balíček se soubory
AMCollector.zip (viz. Nastavení multitenantního režimu) do této složky.
- Upravte soubor AMCollector.config a v sekci
configuration/database/connectionStrings nastavte připojovací řetězec k databázi tenanta.
- Spusťte skript CreateService.cmd ("jako administrátor"), který vytvoří službu AM Collector pro daného tenanta. Skript službu rovnou spustí.
Poznámka:
Pro správné fungování služby doporučujeme vytvořit servisní účet, kterému přidělíte
dostatečná práva pro správu databáze. Daného tenanta pak bude možné ve službách snadno identifikovat.
Poznámka:
Pro správné fungování služby doporučujeme vytvořit servisní účet, kterému přidělíte dostatečná práva pro správu databáze (tj. právo
db_ddladmin, db_datawriter, db_datareader a db_executor). Pod tímto účtem poté spusťte všechny služby Collectoru. Tomuto účtu nezapomeňte povolit také přístup do složek, odkud bude provádět načítání souborů. Jedná se o složku
"C:\Windows\Temp" a o skrytou složku
"C:\ProgramData\ALC".
- Jděte do Alvao WebApp daného tenanta a ve
Správa – Asset Management – Servery vytvořte nastavení pro konkrétní server.
- Zadejte název v síti serveru, kde běží služby Alvao.
- V sekci Načítání souborů povolte automatické načítání CXM souborů ze složky:
c:\ProgramData\ALC\ALVAO Asset Management Collector\Detections\<název organizace tenanta>
Mailbox Reader
- Vytvořte novou složku s názvem tenanta ve složce:
C:\Program Files (x86)\ALVAO\MailboxReader\
Např.: Zákazník 1
Poznámka:
Složka se musí jmenovat stejně, jak je tenant pojmenován v databázi tenantů (ve sloupci
Tenant.Organization).
- Rozbalte ZIP balíček se soubory
SDMailboxReader.zip (viz. Nastavení multitenantního režimu) do této složky.
- Upravte soubor MailboxReader.exe.config a v sekci
configuration/connectionStrings nastavte připojovací řetězec k databázi tenanta.
- Spusťte skript CreateService.cmd ("jako administrátor"), který vytvoří službu Mailbox Reader pro daného tenanta. Skript službu rovnou spustí.
Poznámka:
Skript vytvoří službu pod názvem
ALVAO MailboxReader (<název složky>), tedy např.:
ALVAO MailboxReader (Zákazník 1). Daného tenanta pak bude možné ve službách snadno identifikovat.
Custom Apps WebService
- Na IIS vytvořte novou složku s názvem AlvaoCustomAppsWebService_<název tenanta bez háčků, čárek, mezer a dalších speciálních znaků>, např.:
C:\inetpub\wwwroot\AlvaoCustomAppsWebService_Zakaznik1
- Rozbalte ZIP balíček CustomAppsWebService.zip (viz Nastavení multitenantního režimu) do této složky.
- Upravte soubor web.config, např. pomocí Poznámkového bloku. Najděte sekci configuration/connectionStrings a
nastavte připojovací řetězec k databázi tenanta.
- Vytvořte fond aplikací speciálně pro Custom Apps WebService tohoto tenanta se stejným nastavením,
jako mají ostatní aplikace Alvao. Identitu fondu ponechte na ApplicationPoolIdentity.
- Na SQL Serveru nastavte účtu IIS APPPOOL\<fond aplikací> oprávnění db_datareader, db_datawriter a db_executor pouze pro databázi tenanta.
- Ve Správci IIS vyberte nově vytvořenou složku a v kontextové nabídce vyberte volbu Převést na aplikaci.. Vyberte fond aplikací vytvořený v předchozích krocích a dialog potvrďte stisknutím OK.
- Do následujícího SQL skriptu zapište správnou adresu služby a skript spusťte na databázi nového tenanta:
exec spUpdateInsertProperty 'CustomAppsWebService.Url',
'https://<server>/CustomAppsWebService_Zakaznik1'
Distribuce AM Agentů
Na počítače v organizaci nainstalujte AM Agenty s parametry příkazové řádky:
- WSURL=<adresa AM WS s konkrétní (sub)doménou tenanta>, např.:
https://zakaznik1.alvao.com/AssetWebService/AssetWebService.asmx
- AUTHCODE=<ověřovací kód>
Poznámka:
Agenty je možné rozšířit i pomocí GPO s přednastavenými parametry – viz
Instalace přes GPO, příp. jinými nástroji.
Upgrade tenantů
Všechny tenanty na určitém serveru je nutné upgradovat současně, protože sdílí společné serverové aplikace. Pokud potřebujete upgradovat pouze některé tenanty, musíte je nejprve přesunout na jiný server.
Upgrade databáze
Pokud je potřeba upgradovat databázi (instalace SP1, případně nové „velké“ verze), pomocí
utility DatabaseDeploy upgradujte databáze všech tenantů na novou verzi.
Asset Management WebService
- Nainstalujte novou verzi AM WS.
Poznámka:
AM WS je
společná pro všechny tenanty na daném serveru.
Asset Management Collector
- Znovu vytvořte ZIP balíček pro aktuální verzi Alvao, viz výše.
- Ve Windows - Správa počítače - Služby a aplikace - Služby zastavte služby AM Collector pro všechny tenanty.
Pozn.: Tj. všechny služby AM Collector, které mají na konci názvu služby v závorce uveden název organizace.
- Do složek všech tenantů postupně rozbalte připravený ZIP balíček bez souboru AMCollector.config, aby se nepřepsalo nastavení instance.
- Spusťte opět všechny služby.
Mailbox Reader
- Znovu vytvořte ZIP balíček pro aktuální verzi Alvao, viz výše.
- Ve Windows - Správa počítače - Služby a aplikace - Služby zastavte služby ALVAO MailboxReader pro všechny tenanty.
Pozn.: Tj. všechny služby ALVAO MailboxReader, které mají na konci názvu služby v závorce uveden název organizace.
- Do složek všech tenantů postupně rozbalte připravený ZIP balíček bez souboru MailboxReader.exe.config, aby se nepřepsalo nastavení instance.
- Spusťte opět všechny služby.
Service Desk WebService
- Nainstalujte novou verzi SD WS.
Poznámka:
SD WS je
společná pro všechny tenanty na daném serveru.
WebApp
- Nainstalujte novou verzi WebApp.
Poznámka:
WebApp je
společný pro všechny tenanty na daném serveru.
Custom Apps WebService
- Znovu vytvořte ZIP balíček pro aktuální verzi Alvao, viz výše.
- Do složek tenantů postupně rozbalte připravený ZIP balíček bez souboru web.config, aby se nepřepsalo nastavení instance.
Odstranění tenanta
- Jděte do databáze tenantů AlvaoTenants a upravte tabulku
Tenant, vyhledejte správného tenanta a celý řádek odstraňte.
- Na SQL serveru odstraňte databázi Alvao daného tenanta.
Asset Management Collector
- Jděte do složky C:\Program Files (x86)\ALVAO\ Asset Management Collector\ a najděte podsložku konkrétního tenanta.
- Ve složce spusťte skript RemoveService.cmd ("jako administrátor").
- Odstraňte celou složku tenanta.
Mailbox Reader
- Jděte do složky C:\Program Files (x86)\ALVAO\ MailboxReader\ a najděte podsložku konkrétního tenanta.
- Ve složce spusťte skript RemoveService.cmd ("jako administrátor").
- Odstraňte celou složku tenanta.
Custom Apps WebService
- Ve Správci IIS odstraňte aplikaci tenanta příkazem Odebrat v místní nabídce.
- Odstraňte fond aplikací pro Custom Apps WebService tohoto tenanta.
- Ve složce C:\inetpub\wwwroot odstraňte složku instance daného tenanta.
Nenašli jste co jste hledali? Zeptejte se našeho týmu technické podpory.