GNU/Linux >> Linux Esercitazione >  >> Linux

Avvia una Web farm di Windows con Web Deploy

Introduzione

Questo articolo è destinato agli amministratori di sistema con almeno un livello di competenza intermedio che lavorano con le operazioni e l'amministrazione del sistema operativo Windows Server® 2012.

Non è possibile avviare una Web farm di Internet Information Services (IIS) utilizzando Microsoft® Web Farm Framework (WFF) in IIS8. Microsoft afferma che non stanno abbandonando la tecnologia WFF, ma non hanno fornito una soluzione.

Tuttavia, questo articolo mostra come utilizzare Web Deploy e gli script PowerShell® per mantenere sincronizzati i tuoi contenuti Web mentre li gestisci da un unico server primario. Questo processo non è rapido o intuitivo come WFF, ma utilizza la tecnologia Microsoft ufficiale e mantiene i tuoi contenuti web sincronizzati.

Preparazione

Per iniziare, crea un nuovo account utente con lo stesso nome utente e password su ogni server della farm. Rendi questo account un membro degliAmministratori locali gruppo su ciascun server. Sul server primario, aggiungi questo account a Log On As Batch impostazione di sicurezza accedendo a Strumenti amministrativi -> Criteri di sicurezza locali -> Criteri locali -> Assegnazione diritti utente .Questo esercizio utilizza le seguenti credenziali:

Username: SyncMan
Password: P@ss1234

Su ciascuno dei tuoi server cloud secondari, crea una regola di Windows Firewall per consentire TUTTO IL TRAFFICO dal server primario.

Solo sul server primario, esegui le seguenti azioni:

  • Crea una directory comune, come C:\WebSync , per archiviare i modelli di Web Deploy.

  • Apri una finestra di PowerShell ed esegui Set-ExecutionPolicy Unrestricted . Quando richiesto, digita Y e premere INVIO.

Per semplificare i tuoi script, modifica C:\Windows\system32\drivers\etc\Hosts includere un elenco per ogni nodo, abbinando il suo indirizzo IP interno a un nome easyhost, come WEB2 .

Distribuzione Web

Scarica Web Deploy da IIS e installalo su ogni server della farm.

Script

Utilizzare la seguente procedura per creare due script sul server primario.

Script batch

Apri un nuovo file Blocco note e incolla il codice seguente nel file:

"powershell.exe -command C:\WebSync\WebDeploySync.ps1"

Salva questo file come C:\WebSync\WDSync.bat .

Script di PowerShell

In un nuovo file Blocco note, inserisci le seguenti righe:

add-pssnapin wdeploysnapin3.0

New-WDPublishSettings -ComputerName [MasterServerName] -AgentType MSDepSvc -FileName c:\WebSync\[MasterServerName].publishsettings

New-WDPublishSettings -ComputerName [SecondaryServerName] -AgentType MSDepSvc -FileName c:\WebSync\[SecondaryServerName].publishsettings -UserID SyncMan -Password P@ss1234

Sync-WDServer -SourcePublishSettings c:\WebSync\[PrimaryServerName].publishSettings -DestinationPublishSettings c:\WebSync\[SecondaryServerName].publishSettings

Nota: Il codice precedente riflette una configurazione a 2 nodi. Se vuoi avere più nodi secondari, devi aggiungere un altro New-WDPublishSettings -ComputerName [SecondaryServerName]... riga per ogni server secondario e aggiungere un nuovo Sync-WDServer.. riga che sincronizza il server primario con ogni server secondario successivo.

Salva questo file come C:\WebSync\WebDeploySync.ps1 .

Pianifica gli script

Imposta un'attività pianificata per eseguire gli script a una velocità semicostante per garantire che il contenuto Web rimanga sincronizzato tra i nodi. Questa attività deve essere impostata solo sul server primario. L'attività dovrebbe avere le seguenti caratteristiche:

  • Utilizza le credenziali SyncMan che abbiamo specificato in precedenza.
  • Esegui anche quando l'utente non è connesso.
  • Sii un'attività quotidiana che viene eseguita ogni 1 minuto per la durata di 1 giorno per garantire che venga eseguita indefinitamente a intervalli di 1 minuto.

Utilizzare i seguenti passaggi per pianificare l'attività:

  1. Per accedere all'Utilità di pianificazione, vai su START -> Strumenti di amministrazione -> Utilità di pianificazione .

  2. Seleziona Libreria dell'Utilità di pianificazione nella colonna di sinistra.

  3. Fai clic su Crea attività a destra Azioni riquadro.

  4. Sul Generale scheda di Crea attività casella, inserisci un Nome descrittivo per l'attività, inserisci le credenziali di SyncMan facendo clic su Cambia utente o gruppo e seleziona Esegui se l'utente è connesso o meno dall'elenco radiale.Seleziona Windows Server 2012 da Configura per elenco a discesa.

  5. Sui Trigger scheda di Crea attività casella, fai clic su Nuovo .

  6. Nel Nuovo trigger casella, seleziona Giornaliero dall'elenco radiale e scegli un'ora di inizio di 5 o 10 minuti in futuro. Imposta Ripeti ogni a 1 .In Impostazioni avanzate , seleziona Ripeti attività ogni e inserisci 1 minuto nella casella di testo. Lascia per una durata di impostato su 1 giorno . (Nota:"1minuto" non è un errore di battitura. Assicurati di lasciare "minuti" al plurale).

  7. Nelle Azioni scheda di Crea attività casella, fai clic su Nuovo .

  8. In Azione di modifica , seleziona Avvia un programma e in Programma/script , inserisci C:\WDSync\WDSync.bat . Fai clic su OK .

  9. Sulle Condizioni scheda di Crea attività casella, deseleziona tutte le caselle.

  10. Nelle Impostazioni scheda di Crea attività casella, seleziona Consenti l'esecuzione dell'attività su richiesta e lasciare deselezionate tutte le altre caselle di controllo. In Se l'attività è già in esecuzione, si applica la seguente regola elenco a discesa, seleziona Esegui una nuova istanza in parallelo .

  11. Fai clic su OK nella casella Crea attività.

Per assicurarti che l'attività venga eseguita, fai clic su Abilita cronologia di tutte le attività nelle Azioni riquadro sul lato destro dell'Utilità di pianificazione. Dopo che l'attività inizia a essere eseguita, puoi evidenziarla e fare clic su Cronologia scheda per assicurarti che funzioni regolarmente ogni minuto, come mostrato nell'immagine seguente:

Test

Dopo aver completato lo script e l'attività pianificata, è possibile verificarlo apportando una modifica sul server primario e assicurandosi che la modifica venga visualizzata all'interno di IIS sui server secondari. Dovresti anche essere in grado di apportare una modifica ai server secondari in IIS o nelle directory controllate da IIS e verificare che la modifica sul server primario venga sovrascritta in un minuto o meno.

Conclusione

Questo articolo illustra come implementare una Web farm in Windows Server 2012 senza distribuire Active Directory e senza dover acquistare server aggiuntivi.


Linux
  1. Come configurare più siti Web con il server Web Apache

  2. Utilizzo di Wget con FTP per scaricare/spostare siti Web in modo ricorsivo

  3. Previeni problemi con il riavvio del server Windows

  4. Installa e configura il server Web Linux con il pannello di controllo di Virtualmin

  5. Come registro il server Linux con il server DNS di Windows

Protezione del tuo server Web Apache con Mod Security

Come installare il server Web OpenLiteSpeed ​​con MariaDB e PHP

Come confrontare le prestazioni del server Web con Apache Bench

Installa MySQL su Windows Server 2008 R2 e 2012

Accedi a un server Linux con una chiave privata SSH su un client Windows

Sviluppo Web e Tecniche Avanzate con Linux su Windows (WSL)