Casa / Tutorial Windows / Come aprire la porta 1540 per 1s. Risoluzione di possibili problemi di installazione

Come aprire la porta 1540 per 1s. Risoluzione di possibili problemi di installazione

26.07.2017

Aggiunta di una regola al firewall di Windows Server 2012 R2 per 1C: Enterprise

Durante il funzionamento di vari servizi e Software in base ai protocolli di rete, questi oggetti di lavoro utilizzano porte specifiche attraverso le quali vengono scambiati i dati.

La configurazione del firewall di Windows Server 2008/2012 R2 è impostata su blocco per impostazione predefinita attività di rete. Per consentire ai programmi client di comunicare con i componenti server sulle porte appropriate, è necessario aggiungere regole a Windows Firewall che consentano la comunicazione sulla rete utilizzando porte specifiche.

Spesso, gli utenti incontrano situazioni in cui il software client non riesce a trovare il server 1C:Enterprise in esecuzione in un ambiente server gestito da Win Server 2012. In questo caso, possono verificarsi errori della seguente natura:

    errore durante l'accesso al server sulla rete;

    errore durante l'esecuzione di operazioni con l'infobase;

    un tentativo fallito di stabilire una connessione, la risposta richiesta non è stata ricevuta da un altro computer;

    è già stato rotto connessione stabilita a causa di una risposta errata di un computer già connesso.

Questi errori indicano che il software client non è riuscito a trovare il server 1C all'indirizzo specificato. Accade spesso che sul server la porta richiesta per la connessione sia semplicemente chiusa. Nel caso di un server 1C, questo è il numero di porta 1541.

Per aprire questa porta, devi andare al server tramite una connessione RDP ed eseguire Controllo Windows Firewall. Questa operazione può essere eseguita in due modi. La prima opzione è andare al "Pannello di controllo", quindi alla sottosezione "Sistema e sicurezza", dove è necessario avviare, appunto, il firewall.

Puoi anche utilizzare la riga di comando per questo eseguendo il comando firewall.cpl al suo interno: per fare ciò, premi i tasti di scelta rapida Win + R, quindi vai alla sezione "Apri", inserisci il nome del comando e fai clic sulla conferma dell'azione.

Dopo che abbiamo accesso a Firewall di Windows, nella sua finestra attiva dobbiamo selezionare la sezione dei parametri aggiuntivi, che si trova nel menu a sinistra. Inoltre, nella parte sinistra della nuova finestra che si apre, devi andare nella sezione delle regole per le connessioni in entrata e selezionare "Crea una nuova regola" tramite il menu "Azioni".

Vedremo una procedura guidata per la creazione di regole per le nuove connessioni in entrata. Nella pagina del titolo, devi selezionare il tipo di regola da selezionare, contrassegnato con il nome "Per i porti" e puoi andare avanti. Ora specifichiamo il protocollo di trasferimento dei dati di rete (nel nostro caso, specifichiamo TCP), nonché il numero della porta da aprire.

Nella scheda successiva, dovremo specificare direttamente l'azione che verrà associata alla regola che stiamo creando. Siamo interessati all'azione "Consenti connessioni". Selezionalo e fai clic su "Avanti". Ora contrassegniamo il richiesto Profili Windows Firewall, che dovrebbe essere coperto dall'azione che creiamo. ultima pagina La procedura guidata ci chiede di inserire un nome per la nuova regola, nonché di aggiungere una descrizione, se lo si desidera. Fare clic su Fine e completare la procedura guidata.

Dopo aver creato la regola, è necessario riprovare a connettersi al server 1C. Durante la connessione, vedremo lo stesso errore, ma ora il messaggio parla di un altro numero di porta 1560.

Per analogia con lo schema per l'aggiunta di porte sopra descritto, aggiungiamo un'altra regola in cui specifichiamo l'intervallo di porte 1560-1591. Queste porte sono necessarie per supportare i vari flussi di lavoro del programma 1C. Le porte comprese in questo intervallo sono indicate con un trattino nella sezione "Protocollo e porte".

Dopo le manipolazioni eseguite, vai allo snap-in "Windows Firewall con sicurezza avanzata". Qui, nella sezione delle regole per la connessione in entrata, potremo vedere le regole che abbiamo creato. Allo stesso tempo, ora il client 1C dovrebbe connettersi liberamente all'ambiente server. Se devi connetterti al tuo server tramite la console di amministrazione del server 1C, dovrai creare una regola separata che apra la porta 1540.

Se è necessario aggiungere regole alle connessioni in uscita, è possibile utilizzare lo stesso schema per creare regole per singoli protocolli e programmi.

Configurazione di Windows Firewall per Win Server 2012 su 1C Server + MS SQL

Ora alcune parole su come configurare il firewall sotto Windows Server 2012 nella configurazione specificata. Un tale gruppo non è raro per gli uffici moderni, ma a volte ci vuole più tempo per capire il principio. Windows funziona Firewall relativo all'ambiente server 1C.

A condizione che il server accetti connessioni sulla porta TCP standard 1433, è sufficiente abilitare questa porta utilizzando la creazione di regole per il firewall, il principio di cui abbiamo discusso sopra. Per verificare se il lavoro sta effettivamente attraversando questa porta, è possibile avviare lo snap-in Gestione configurazione SQL Server in Server 2012 e passare alla scheda Configurazione di rete. Qui è necessario selezionare la scheda dei protocolli per MSSQLSERVER e trovare il protocollo TCP / IP nella finestra di sinistra. Lo selezioniamo e facciamo clic su "Proprietà", dopodiché cerchiamo la scheda "Indirizzi IP" e apriamo il ramo "IPAII".

Se la porta SQL è dinamica, sarà necessaria l'autorizzazione per connettersi alla seguente applicazione %ProgramFiles%\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn\sqlservr.exe.

Come accennato in precedenza, il server 1C funziona con la porta 1541 e le porte nell'intervallo 1560-1591. Tuttavia, accade spesso che, per motivi sconosciuti, questo elenco le porte aperte non ti consentono ancora di connetterti al server. Affinché tutto funzioni al 100%, è sufficiente espandere questo intervallo specificando le porte da 1540 a 1591 al suo interno.

Background… Nella nostra azienda, 1C:Enterprise versione 8.2 funziona con successo, in cui sono stati creati circa 100 database contabili utilizzati in modo intensivo. Per questa attività è stato assegnato un server separato con caratteristiche piuttosto impressionanti. durante il funzionamento, si è scoperto che il bundle 1C: Enterprise 8.2 + MS SQL 2005 è molto esigente su risorse hardware come dischi rigidi, processore e, soprattutto, il numero memoria ad accesso casuale. Il costo di un tale server per noi ha superato i 250 mila rubli (senza contare le licenze sia per il sistema operativo che per 1C stesso).

È stato considerato irragionevole allocare l'hardware separatamente per 1C:Enterprise versione 8.3 e inoltre, pagare altri 100 mila rubli per il secondo set di chiavi per il server 1C è molto costoso! Un tentativo di installare "sulla fronte" 1C:Enterprise versione 8.3 ha portato alla perdita del cluster con i database esistenti. È stato qui che sono state rivelate le funzionalità di installazione ed esecuzione di due versioni server di 1C: Enterprise su un computer.

Il programma di installazione di 1C:Enterprise 8.2 e 8.3 configura il software per utilizzare le sue porte standard: 1540 (utilizzato dall'agente del server), 1541 (utilizzato dal gestore cluster), 1560-1591 (intervallo di porte utilizzato per i processi di lavoro). Pertanto, se il server 1C:Enterprise 8.3 deve funzionare contemporaneamente al server 1C:Enterprise 8.2, allora il primo deve specificare porte diverse da quelle già utilizzate dall'istanza del server in esecuzione versione precedente.

Su un computer con un server 1C:Enterprise versione 8.2 già installato, viene registrato e avviato il servizio "Server Agent 1C:Enterprise 8.2", che utilizza già le porte standard di cui sopra. Se hai installato un server 1C:Enterprise 8.3 "nelle vicinanze", l'avvio del suo servizio "1C:Enterprise 8.3 Server Agent" terminerà in modo anomalo, perché cercherà di utilizzare le porte già "occupate". Per evitare ciò, è necessario eseguire le seguenti operazioni.

(Tutto quanto descritto di seguito è valido per Windows Server 2008 R2 Enterprise (e Standard) a 64 bit + SP1 e versioni server a 32 bit di 1C: Enterprise 8.2 e 8.3).

1C:Enterprise 8.2 (versione 8.2.19.90) è stato installato da me come servizio Windows con diritti di esecuzione per conto di un servizio esistente utente locale"Amministratore".

Al termine dell'installazione, la finestra Server Manager -> Configurazione -> Servizi vediamo servizio in esecuzione"Agente server 1C: Impresa 8.2":

avviato con parametri:

C:\Programmi (x86)\1cv82\8.2.19.90\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Programmi (x86)\1cv82\ srvinfo"

Server 1C: Enterprise 8.3 (versione 8.3.4.437) è stato installato da me nello stesso modo:

Tuttavia, come vediamo nella finestra Server Manager -> Configurazione -> Servizi, il servizio "Server Agent 1C:Enterprise 8.3" non è stato avviato:

Ora dobbiamo aprire una finestra del prompt dei comandi cmd e vai alla directory bin del file installato versione server 1C:Enterprise 8.3 e provare a rimuovere la registrazione del servizio "Server Agent 1C:Enterprise 8.3" con il comando ragent.exe -rmsrvc:

C:\Utenti\amministratore>cd C:\Programmi (x86)\1cv8\8.3.4.437\bin C:\Programmi (x86)\1cv8\8.3.4.437\bin>ragent.exe -rmsrvc Errore! Errore ControlService!

Sono saltato fuori Errore! Errore ControlService! , che è previsto in linea di principio, poiché il servizio non è correttamente registrato nel sistema. Ma davvero, dovrebbe andarsene. Nella finestra Server Manager -> Configurazione -> Servizi non lo vedrai più.

Ora è necessario registrare nuovamente questo server, ma allo stesso tempo specificare porte diverse da quelle già utilizzate dall'agente 1C:Enterprise 8.2. Nel mio caso, il comando sarà simile a:

C:\Programmi (x86)\1cv8\8.3.4.437\bin>

  • -porta 2540- la porta su cui verrà eseguito l'agente server 1C:Enterprise versione 8.3;
  • -rapporto 2541- la porta attraverso la quale verrà amministrato il cluster di server 1C:Enterprise versione 8.3;
  • -intervallo 2560:2591- gamma di porte per processi di lavoro;
  • -a "C:\Programmi (x86)\1cv8\srvinfo"- una directory per la memorizzazione delle informazioni sul cluster di server appena creato 1C: Enterprise versione 8.3;
  • -usr .\Amministratore- l'utente per conto del quale verrà avviato il server agent 1C: Enterprise versione 8.3;
  • -pwd ******— password per l'utente specificato (inserire la propria).

Successivamente, vedrai di nuovo il servizio "Server Agent 1C: Enterprise 8.3" nella finestra Server Manager -> Configurazione -> Servizi. Devi solo avviarlo con il comando ragt.exe -start:

C:\Programmi (x86)\1cv8\8.3.4.437\bin>ragent.exe -start

Nella finestra Server Manager -> Configurazione -> Servizi vediamo il servizio “Server Agent 1C: Enterprise 8.3”:

avviato con parametri:

dove il campo “File eseguibile” ha l'impostazione:

C:\Programmi (x86)\1cv8\8.3.4.437\bin\ragent.exe" -srvc -agent -regport 2541 -port 2540 -range 2560:2591 -d "C:\Programmi (x86)\1cv8\ srvinfo"

E ora il più interessante: devi fare questa operazione ogni volta che devi aggiornare la versione del server 1C:Enterprise 8.3! Bravi sviluppatori...

Ora un po 'su come vivere con il gruppo specificato. Non è necessario eseguire il programma 1C:Enterprise stesso con la versione precedente (dalla cartella C:\Program Files (x86)\1cv82\common). Quando si installa 1C:Enterprise versione 8.3, il collegamento sul desktop verrà automaticamente sovrascritto per avviare il programma dalla cartella C:\Program Files (x86)\1cv8\common. Se si apre un database di contabilità in esecuzione su un server versione 8.2, si aprirà automaticamente nella versione richiesta del thin client.

I modelli per la creazione di database (contabilità o ZIK) vengono inseriti per impostazione predefinita nella directory dell'utente per conto del quale è stata avviata l'installazione. Se lo fai come amministratore, li troverai in C:\Users\administrator\AppData\Roaming\1C\1cv8\tmplts . Se vuoi aggiungere una nuova base basata su modello installato, cliente sottile la versione 8.3 li vedrà tutti:

Ora, se è necessario registrare il database della versione 8.3, sarà necessario indicare nel campo "1C: Enterprise Server Cluster" il computer con installato il server 1C versione 8.3 e la porta del gestore del cluster, separati da due punti, specificato durante la registrazione dell'agente server 1C versione 8.3. Nel mio caso, questo è 2541:

Quando si aggiunge all'elenco dei database di account uno nuovo situato sul server di un'azienda gestita da 1C:Enterprise versione 8.3, è necessario specificare anche il nome del server e, tramite i due punti, la porta utilizzata dal gestore cluster:

Rimane la necessità di registrare un'utilità per l'amministrazione di un cluster di entrambi i server 1C (entrambe le versioni 8.2 e 8.3) dopo ogni installazione / aggiornamento.

Passiamo ora all'amministrazione dei cluster che eseguono versioni diverse dei server 1C:Enterprise sullo stesso computer. Apri la cartella in Explorer lungo il percorso C:\Program Files (x86)\1cv8\common e crea un collegamento sul desktop per la console di amministrazione del cluster versione 8.3 (è meglio rinominare immediatamente il collegamento di conseguenza, ad esempio 1CV8.3):

Allo stesso modo, apri la cartella in Explorer lungo il percorso C:\Program Files (x86)\1cv82\common , e crea un collegamento sul desktop per la console di amministrazione del cluster versione 8.2 (è meglio rinominare il collegamento immediatamente, per esempio, a 1CV8.2):

Sul tuo desktop otterrai quanto segue:

Lanciamo l'utilità di amministrazione del cluster di server 1C:Enterprise versione 8.2 con l'etichetta "1CV8.2" (poiché il server utilizza porte predefinite, il cluster verrà visualizzato senza problemi):

Quando si tenta di aprire questo cluster dalla console destinata all'amministrazione del cluster di server 1C:Enterprise versione 8.3 (utilizzando il collegamento dal desktop con il nome "1CV8.3"), verrà visualizzato un errore:

Errore di connessione con il server 1C:Enterprise 8.3: le versioni client e server differiscono (8.3.4.437 - 8.2.19.90), applicazione client: console cluster

Per visualizzare il cluster di server 1C: Enterprise versione 8.3 di cui abbiamo bisogno, è necessario creare un nuovo server 1C: Enterprise 8.3 centrale in questo snap-in:

  • in campo Nomeè necessario specificare il nome del computer con il server installato 1C: Enterprise 8.3;
  • in campo porta IPè necessario specificare la porta su cui è in esecuzione l'agente server 1C:Enterprise 8.3, designata durante la configurazione del servizio di avvio dell'agente;
  • in campo Descrizione segnare la descrizione.

Dopo aver fatto clic sul pulsante "OK", puoi vedere il tuo nuovo cluster, che si è rivelato dopo l'installazione del server 1C: Enterprise versione 8.3.

Quelli. l'amministrazione di cluster di versioni diverse del server 1C:Enterprise installate sullo stesso computer viene eseguita dagli snap-in corrispondenti.

Fondamentalmente è così. Buona fortuna!

_________
UPD. Come ha dimostrato la pratica, il metodo descritto in questo articolo non è adatto per l'esecuzione simultanea di più istanze del server 1C:Enterprise versione 8.3 sullo stesso server. Quando si cerca di creare nuovo servizio agente 1C da un'altra versione di 1C: Enterprise, in esecuzione su altre porte, operazione:

C:\Programmi (x86)\1cv8\8.3.4.437\bin>ragent.exe -instsrvc -port 2540 -regport 2541 -range 2560:2591 -d "C:\Programmi (x86)\1cv8\srvinfo" - usr .\Amministratore -pwd ********

termina con l'eliminazione del servizio già in esecuzione della vecchia versione di 1C 8.3 e non ne viene creata una nuova.

In ho descritto come installare, creare quelli corrispondenti ed eseguire diverse versioni del server 1C: Enterprise 8.3 su un server ...

Trova nel thread

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8 Server Agent, parametro ImagePath.

Per impostazione predefinita, il server 1C:Enterprise utilizza le seguenti porte:

  • 1540 - agente del server
  • 1541 - gestore del cluster
  • 1560:1691 è l'intervallo di porte dinamico per i processi di lavoro.

O informazioni ufficiali da http://its.1c.ru:

Problemi di installazione e configurazione di 1C: Enterprise 8.1 nella versione "client-server".

Nella maggior parte dei casi, per installare 1C:Enterprise 8.1 nella versione “client-server”, è sufficiente eseguire il programma di installazione di 1C:Enterprise 8.1. Allo stesso tempo, il server 1C:Enterprise riceve i valori dei parametri standard necessari per il suo normale funzionamento.

Prendi in considerazione l'installazione del server 1C:Enterprise in modo più dettagliato. Durante l'installazione del server 1C:Enterprise 8.1, il programma di installazione di 1C:Enterprise 8.1 esegue le seguenti azioni:

    Copia i moduli di avvio del server 1C:Enterprise nella directory specificata dal programma di installazione di 1C:Enterprise come cartella di destinazione.

    Se durante l'installazione viene selezionato "Crea utente USR1CV81", viene creato l'utente USR1CV81. Il server 1C:Enterprise 8.1 viene eseguito per conto di questo utente se viene eseguito come servizio. Ha accesso solo alle risorse di cui ha bisogno il server 1C:Enterprise. È importante che il server 1C:Enterprise abbia bisogno di due directory per funzionare: una directory comune con i dati del server (di solito "C:\Program Files\1cv81\server") e una directory di file temporanei (di solito "C:\Documents and Settings\ usr1cv81\Impostazioni locali \Temp" o "C:\WINNT\Temp"). L'utente USR1CV81 ottiene i diritti sulla directory condivisa con i dati del server. La directory dei file temporanei è solitamente disponibile per tutti gli utenti.

    Se "Installa 1C:Enterprise 8.1 server come servizio Windows" è abilitato durante l'installazione, registra il servizio agente server 1C:Enterprise in Windows e lo avvia. Al primo avvio, viene creato un cluster di server 1C:Enterprise con impostazioni predefinite. Ha un server funzionante e un processo funzionante. L'indirizzo del server funzionante corrisponde al nome del computer su cui è stata eseguita l'installazione.

Utente USR1CV81 e suoi diritti

Server 1C:Enterprise è un'applicazione server il cui funzionamento non dovrebbe dipendere da quale utente ha effettuato l'accesso al computer server in modalità interattiva, ammesso che qualcuno abbia effettuato l'accesso. Pertanto, durante l'installazione del server 1C:Enterprise, è consigliabile creare un utente speciale USR1CV81, dotato dei diritti minimamente necessari per il server 1C:Enterprise e non destinato al login interattivo. Server 1C:Enterprise è rappresentato Sistema Windows utente USR1CV81.

Diamo un'occhiata più da vicino ai diritti assegnati all'utente USR1CV81. 1C:Enterprise Server utilizza le seguenti directory:

    La directory dei moduli di avvio si trova nella directory specificata dal programma di installazione di 1C:Enterprise come cartella di destinazione. Contiene i moduli di avvio del server 1C:Enterprise. L'utente USR1CV81 necessita dei diritti per leggere i dati ed eseguire programmi da questa directory e dalle relative sottodirectory. Riceve questi diritti implicitamente essendo incluso nel gruppo Utenti.

    La directory dei dati del server è generalmente denominata "C:\Program Files\1cv81\server". L'utente USR1CV81 necessita di diritti completi su questa directory. Il programma di installazione 1C:Enterprise, durante la creazione dell'utente USR1CV81, gli concede i diritti su questa directory.

    La directory dei file temporanei è in genere denominata "C:\Documents and Settings\usr1cv81\Local Settings\Temp" o "C:\WINNT\Temp", che è determinata dal valore della variabile TEMP dell'ambiente utente o della variabile TEMP dell'ambiente di sistema . È possibile visualizzare il valore di questa variabile nella finestra di dialogo Proprietà del sistema (Start -> Impostazioni -> Pannello di controllo -> Sistema -> Avanzate -> Variabili d'ambiente). Il programma di installazione di 1C:Enterprise concede all'utente USR1CV81 diritti completi su questa directory. Di solito durante l'installazione Rubrica di Windows i file temporanei sono disponibili per tutti gli utenti includendo il gruppo CREATOR OWNER nel proprio elenco di accesso. Tuttavia, questo accesso non è completo. In particolare, l'operazione di ricerca dei file in questa directory non è disponibile per tutti gli utenti. L'impostazione dei diritti completi dell'utente USR1CV81 sulla directory dei file temporanei consente al server 1C:Enterprise di eseguire tutte le operazioni necessarie. È possibile visualizzare l'elenco di accesso nella finestra di dialogo delle proprietà della directory nella scheda Sicurezza. La presenza del gruppo CREATOR OWNER consente l'accesso alla directory da parte di qualsiasi utente che crea qualsiasi file in questa directory o possiede qualsiasi file in questa directory. In questo caso, l'utente che ha creato il file verrà scritto nell'elenco di accesso del file creato anziché nel gruppo CREATOR OWNER. Tra gli utenti autorizzati ad accedere a questa directory deve esserci l'utente USR1CV81, che dispone di tutti i diritti su questa directory.
    È importante tenere presente che la directory dei file temporanei di un particolare utente (incluso l'utente USR1CV81) è determinata da una combinazione delle variabili di ambiente dell'utente e delle variabili di ambiente del sistema. Per trovare questa directory, il programma di installazione di 1C:Enterprise richiede il contesto utente USR1CV81. Per eseguire questa operazione in Windows 2000, l'utente per conto del quale viene avviato il programma di installazione 1C:Enterprise può richiedere i seguenti privilegi: agire come parte del sistema operativo e ignorare il controllo incrociato. È possibile controllare i privilegi dell'utente con l'utilità Impostazioni di sicurezza locale nel ramo Criteri locali -> Assegnazione diritti utente. Durante l'installazione di un nuovo software, il programma di installazione di solito riceve questi privilegi automaticamente.

Registrazione di un server 1C:Enterprise come servizio Windows

Server 1C:Enterprise è una semplice console Applicazione Windows e può essere eseguito in modo interattivo. Tuttavia, per un uso permanente, questo è scomodo, poiché imposta l'avvio del server 1C: Enterprise dall'accesso dell'utente inattivo al computer server. Per eliminare questa dipendenza, il server 1C:Enterprise può essere eseguito come servizio Windows. Per fare ciò, deve essere registrato nel gestore Servizi Windows.

Per visualizzare l'elenco dei servizi Windows e dei relativi parametri, utilizzare l'utilità Servizi componenti (Start -> Impostazioni -> Pannello di controllo -> Strumenti di amministrazione -> Servizi). Il server 1C:Enterprise è rappresentato nell'elenco dei servizi dal servizio 1C:Enterprise Server Agent 8.1. I parametri del servizio determinano l'avvio del processo 1C:Enterprise Server Agent (ragent), l'utente sotto il cui nome viene avviato e il metodo di riavvio in situazioni di emergenza.

Nella finestra di dialogo delle proprietà del servizio 1C:Enterprise Server Agent 8.1, nella scheda Generale, viene mostrata la stringa per l'avvio del processo ragent, che è 1C:Enterprise Server Agent. Di solito questa riga è simile a:

Afferma che:

    il processo Server Agent è il modulo di avvio "C:\Program Files\1cv81\bin\ragent.exe";

    il processo ragent viene eseguito come servizio Windows e deve essere gestito dal gestore del servizio (-srvc);

    utilizzato come 1C:Enterprise Server Agent (-agente);

    al primo avvio del servizio è necessario creare un cluster con parametri di default e numero di porta IP principale 1541 (-regport 1541). Le applicazioni client devono utilizzare questa porta per connettersi alle infobase registrate nel cluster;

    La porta IP dell'agente server deve essere 1540 (-port 1540). Su questa porta, la console del cluster deve connettersi al server centrale per eseguire le funzioni amministrative;

    quando i processi del cluster vengono avviati su questo server, verranno assegnate dinamicamente le porte IP dall'intervallo 1560-1591 (-intervallo 1560:1591).

    i dati condivisi del cluster verranno inseriti nella directory "C:\Program Files\1cv81\server" (-d "C:\Program Files\1cv81\server").

Il servizio 1C:Enterprise 8.1 Server Agent può essere aggiunto o rimosso non solo durante l'installazione o la disinstallazione di 1C:Enterprise con il programma di installazione di 1C:Enterprise 8.1, ma anche manualmente. Per fare ciò, puoi eseguire l'utilità ragent dalla riga di comando, specificando i parametri appropriati per essa.

Per creare un servizio, è necessario specificare il parametro -instsrvc ei seguenti parametri: -usr è il nome utente con cui il servizio deve essere avviato, -pwd è la password di questo utente. In questo caso, i parametri rimanenti diventeranno i parametri della riga di lancio di 1C:Enterprise Server Agent come servizio. Ad esempio, per la registrazione standard del servizio 1C:Enterprise Server Agent in modalità debug, il set di parametri dovrebbe essere il seguente:

"C:\Programmi\1cv81\bin\ragent.exe" -instsrvc -usr .\USR1CV81 -pwd Password -regport 1541 -port 1540 -range 1560:1591 -d "C:\Programmi\1cv81\server" - eseguire il debug

Per rimuovere un servizio, è necessario specificare l'opzione -rmsrvc. Per esempio:

"C:\Programmi\1cv81\bin\ragent.exe" -rmsrvc

A volte può essere utile modificare la riga iniziale del Server Agent o altri parametri del servizio Agent, ad esempio abilitare la modalità di debug o creare più servizi diverse versioni. La finestra di dialogo delle proprietà del servizio non consente di modificare la riga di avvio dell'applicazione di servizio e alcuni altri parametri, ad esempio l'ID del servizio. Per modificare, avrai bisogno dell'utilità regedit, progettata per visualizzare e modificare registro di sistema Finestre.

Attenzione!
Modifica del sistema Registro di Windows richiede estrema cautela, poiché modifiche errate possono rendere inutilizzabile il sistema operativo.

Esegui l'utilità regedit (apri Start -> Esegui e digita regedit) e seleziona il ramo:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent

I suoi parametri includono il parametro ImagePath, il cui valore è la stringa di avvio di 1C:Enterprise Server Agent. Qui puoi aggiungere nuovi parametri della stringa di lancio o modificare i valori di quelli esistenti. Lista completa i possibili parametri sono riportati nella documentazione del libro "1C:Enterprise 8.1 Client-Server".

Se è necessario registrare diversi servizi indipendenti di 1C:Enterprise Server Agent, è necessario specificare diversi moduli di avvio, diverse porte e diverse directory di dati del cluster per essi. È inoltre necessario registrarli con ID servizio diversi. Questo può essere fatto in questo modo:

    Crea il primo servizio:

"C:\Programmi\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Programmi\1cv81\server"

    Utilizzare l'utilità regedit per modificare l'ID di un servizio registrato. Per fare ciò: seleziona un ramo


    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent First

    Crea un secondo servizio:

"C:\Programmi\1cv81_10\bin\ragent.exe" -srvc -agent -regport 1641 -port 1640 -range 1660:1691 -d "C:\Programmi\1cv81_10\server"

    Forse anche il suo identificatore dovrebbe essere cambiato. Per fare ciò: seleziona un ramo
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent
    e cambiarne il nome, ad esempio in:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent Secondo

Cosa non può fare il programma di installazione di 1C:Enterprise

Come già accennato, il programma di installazione di 1C:Enterprise copia i moduli di avvio di 1C:Enterprise ed esegue registrazione necessaria in COM e nel Service Manager di Windows. Sopra sono le informazioni necessarie per comprendere il funzionamento interno di questa registrazione. Se non solo il server, ma anche la parte client di 1C:Enterprise è installata sul computer server, allora è pronta per l'uso immediatamente dopo l'installazione (e la connessione delle chiavi di sicurezza).

Per rendere disponibile il server 1C:Enterprise da altri computer in rete locale, devi controllare impostazioni di rete sui computer server e client, nonché per la rete nel suo complesso. TCP/IP viene utilizzato per trasferire i dati tra le applicazioni client e il server 1C:Enterprise, nonché tra i processi del cluster di server. Il funzionamento di 1C:Enterprise nella variante client-server dipende dalla correttezza delle sue impostazioni.

I processi del cluster di server 1C:Enterprise sono connessi tra loro agli indirizzi definiti come valori della proprietà "Computer" della finestra di dialogo delle proprietà del server funzionante. Per un cluster, il valore della proprietà "Computer" deve essere un indirizzo IP in notazione puntata o un indirizzo simbolico in base al quale è possibile determinare l'indirizzo IP utilizzando la funzione gethostbyname definita nell'API Protocollo TCP. La determinazione dell'indirizzo IP viene eseguita sulla base della tabella degli indirizzi simbolici locali (C:\WINNT\system32\drivers\etc\hosts) o sulle tabelle degli indirizzi disponibili Server DNS. Se l'indirizzo simbolico del server funzionante non determina il suo indirizzo IP o lo determina in modo errato (ad esempio, l'indirizzo IP non corrisponde all'effettivo indirizzo IP questo computer), il cluster non funzionerà. È importante che i nomi dei computer ei relativi indirizzi definiti in Windows su ciascuno dei server funzionanti nel cluster non siano in conflitto con i relativi nomi in DNS.

Su ogni server funzionante, i processi del cluster utilizzano le seguenti porte: porta IP del server funzionante (in genere 1540); Porte IP dagli intervalli di porte IP del flusso di lavoro (in genere 1560-1591). Inoltre, la porta del cluster (in genere 1541) viene utilizzata sul server centrale del cluster. Se nel sistema vengono utilizzati firewall, la trasmissione dei dati su queste porte dovrebbe essere consentita. Invece di consentire le porte dall'elenco precedente, è possibile consentire il trasferimento dei dati ai processi del cluster (ragent, rmngr, rphost).

La connessione dell'applicazione client 1C:Enterprise con il server viene eseguita in 2 fasi. Innanzitutto stabilisce una connessione al gestore cluster. Questo utilizza l'indirizzo del server centrale (simbolico o numerico) e la porta del cluster (di solito 1541). Successivamente, l'applicazione client stabilisce una connessione con uno dei processi di lavoro. Il valore della proprietà "Computer" del server di lavoro corrispondente e la porta del processo di lavoro, selezionata dall'intervallo di porte IP del server di lavoro, vengono utilizzati come indirizzo. La trasmissione dei dati a queste porte deve essere consentita in tutti i firewall sul percorso dal computer dell'applicazione client ai computer del cluster di server 1C:Enterprise. La determinazione dell'indirizzo IP dei processi del server viene eseguita utilizzando la funzione gethostbyname sul computer client. È importante che i nomi dei server centrali e di lavoro ei relativi indirizzi definiti in Windows su ciascuno dei server nel cluster non siano in conflitto con i relativi nomi nel DNS disponibile per il computer client.

E l'ultimo. Ovviamente, per accedere con successo al server 1C:Enterprise da altri computer, deve essere sulla rete e per questo devono essere effettuate le impostazioni necessarie. La connessione a una rete e l'impostazione di una tecnica sono correlate all'amministrazione delle reti basate su Microsoft Windows e sono descritti nelle rispettive istruzioni.

Caratteristiche della configurazione di un server SQL

1C:Enterprise nella versione "client-server" utilizza un server SQL per memorizzare i dati. In questo caso, solo 1C:Enterprise Server accede al server SQL. 1C: i client Enterprise non hanno accesso diretto al server SQL. L'installazione e la configurazione del server SQL sono descritte in dettaglio nella documentazione di Microsoft SQL Server. Per il corretto funzionamento di 1C:Enterprise Server con un server SQL, è necessario contattare Attenzione speciale alle seguenti impostazioni.

    Componenti richiesti di SQL Server. Per accedere a SQL Server dal lato 1C:Enterprise Server, il computer 1C:Enterprise Server deve avere Componenti Microsoft Accesso ai dati 2.6 o successivo.

    Autenticazione utente tramite server SQL. I diritti di accesso ai database del server SQL sono determinati dall'utente per conto del quale si accede ai database. Dal computer su cui è installato il server SQL, eseguire l'utilità SQL Server Enterprise Manager, trovare il nodo locale (Radice console -> Server Microsoft SQL -> Gruppo SQL Server -> (Locale)) e aprirne le proprietà. Nella scheda Sicurezza, puoi vedere che SQL Server supporta due metodi di autenticazione utente: SQL Server e Windows e solo Windows. L'autenticazione di Windows consentirà a 1C:Enterprise Server di accedere al server SQL solo per conto dell'utente USR1CV81, che non consente di distinguere i diritti di accesso a diverse infobase servite da un server 1C:Enterprise. Si consiglia di selezionare la modalità SQL Server e Windows. In questo caso, l'accesso a una specifica infobase verrà eseguito per conto dell'utente specificato come utente del server SQL durante la creazione di questa infobase. È importante che questo utente disponga non solo dei diritti completi sul database infobase, ma anche dei diritti per creare database nel server SQL e per leggere tabelle nel database master.

    Protocolli di rete per l'accesso al server SQL. Se 1C:Enterprise Server e il server SQL sono ospitati su computer diversi, è necessario effettuare le impostazioni protocolli di rete accesso al server SQL. Questa operazione può essere eseguita utilizzando l'utilità di rete client di SQL Server. Nella scheda Generale è possibile selezionare un elenco di protocolli di rete utilizzati per accedere al server SQL. Il più veloce e versatile è l'uso del protocollo TCP/IP. Quando si utilizzano altri protocolli, tenere presente che alcuni di essi, ad esempio Named Pipes, eseguono un'ulteriore autenticazione di Windows durante la comunicazione con il server SQL. In questo caso, per lavorare con successo con il server SQL, l'utente USR1CV81, dotato dei diritti appropriati, deve essere registrato sul computer con il server SQL. Il protocollo per l'accesso a questo server SQL può essere modificato nella scheda Alias.

L'articolo è dedicato al lancio delle piattaforme 1C:Enterprise versioni 8.1 e 8.2 su un server funzionante. Ciò potrebbe essere necessario in condizioni in cui, ad esempio, è già stata effettuata una transizione parziale a 8.2, ma l'azienda utilizza ancora le configurazioni in 8.1.

E così, abbiamo un server funzionante SERVER-1C Con Windows installato Server 2008 R2 e Windows SQL Server 2008 x64.

A turno installiamo le piattaforme.

Iniziamo con 1C:Enterprise 8.1. Non descriveremo il processo stesso, perché. non c'è niente di soprannaturale in questo. Dopo l'installazione, vai su ed esegui la console Servizi. Andiamo alle proprietà del servizio Agente server 1C:Enterprise 8.1 (agente server 1C:Enterprise 8.1) e assicurati che venga eseguito come utente con diritti di amministratore o con un account di sistema.

Iniziamo questo servizio. Colleghiamo un database di prova FirmaBuh81:

E connettiti ad esso dalla workstation:

Dopo che la connessione di prova è stata completata con successo, procediamo con l'installazione di 1C:Enterprise 8.2. Dopodiché, nello stesso modo in cui abbiamo fatto sopra, vai a Start - Pannello di controllo - Strumenti di amministrazione e avvia la console Servizi. Apparirà il servizio Agente server 1C:Enterprise 8.2 (agente server 1C:Enterprise 8.2). Analogamente alla versione 8.1, impostiamo i parametri di accesso per questo servizio:

C'è una cosa importante da notare qui. Secondo lo standard 1C: l'impresa viene avviata 1541 porta. Per avviare più servizi contemporaneamente Server Agent 1C: Enterprise 8.X, è necessario modificare la porta a cui è associato il servizio. Successivamente cambieremo le porte per la versione 8.2.

Avvia l'Editor del Registro di sistema ( Inizio-corsa accedere regedit e fare clic su OK). Percorriamo il sentiero:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

E vediamo due cartelle con i nomi dei nostri servizi 1C: Enterprise Server Agent (1C: Enterprise 8.X Server Agent)

Dobbiamo modificare il valore del parametro stringa ImagePath from

"C:\Programmi\1cv82\8.2.13.219\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Programmi\1cv82\srvinfo"

"C:\Programmi\1cv82\8.2.13.219\bin\ragent.exe" -srvc -agent -regport 1641 -port 1640 -range 1660:1691 -d "C:\Programmi\1cv82\srvinfo"

Dopo questi passaggi, possiamo avviare in sicurezza il servizio 1C: Enterprise 8.2 Server Agent in Services.

Termini, concetti

Perché hai bisogno di un server 1C

Il termine "cluster di server" si riferisce a diversi computer (server) che eseguono un'attività comune.

Le attività risolte dal cluster di server 1C:Enterprise 8 sono mostrate nella figura seguente.

Differenza tra 8.1 e 8.2

Gruppo 1C 8.1

Il cluster di server 1C:Enterprise 8.1 è un'implementazione delle idee di distribuzione del carico sui server che servono le richieste dei client. Tale meccanismo implementa la distribuzione del carico sulle risorse di calcolo all'interno di uno o più server ("Server di lavoro"), garantendo così la scalabilità dell'applicazione. Il cluster di server duplica il codice che gestisce le connessioni client. Il codice eseguibile del cluster duplicato è denominato "processo di lavoro" (rphost). Quando installi un cluster, viene creato un solo processo di lavoro.
Diversi processi di lavoro sullo stesso server consentono di utilizzare in modo efficiente la quantità di RAM e le risorse del processore per eseguire le richieste, nonché di connettere la sessione client a un altro processo di lavoro quando quello corrente si arresta in modo anomalo.
Il programma Server Agent (ragent) è responsabile della comprensione di ciò che è in esecuzione su un determinato server. L'arresto dell'agente del server renderà il server inutilizzabile dal cluster. L'agente memorizza le proprie informazioni nel file srvribrg.lst.
Il Server Manager (rmngr) possiede le informazioni sulle basi di lavoro, sui processi di lavoro coinvolti. Memorizza queste informazioni nel file 1CV8Reg.lst. L'arresto del gestore del server può portare al riavvio delle applicazioni client in caso di riavvio riuscito del gestore o all'arresto completo dei server funzionanti dell'intero cluster.
1C:Enterprise 8.1 consente di creare diversi cluster indipendenti su un server. Ciascuno di essi è identificato sulla rete da una "porta IP" univoca e numero unico nei file di servizio. Il primo cluster riceve la porta 1541 per impostazione predefinita.
Lo snap-in "Enterprise Servers" è destinato alla gestione dei cluster.
Puoi connetterti ai server per nome o indirizzo IP del server.

Agente server

L'agente server "conosce" tutti i cluster in esecuzione sul server. Queste informazioni vengono memorizzate nel file srvribrg.lst con un elenco di cluster e amministratori di elenchi. La porta dell'agente principale è 1540. Solo un agente può essere eseguito su ciascun server di lavoro, servendo tutti i possibili cluster su questo server.
Per ottenere visivamente informazioni più dettagliate, utilizzare l'utilità Process Explorer (sviluppata da Sysinternals). Il programma ti consente di esaminare più a fondo qualsiasi processo in esecuzione, incluso un cluster di server 1C:Enterprise 8.1.

gestore del cluster

Il gestore cluster è responsabile dell'esecuzione del cluster. Ogni cluster ha il proprio Manager. Il gestore memorizza le informazioni sul cluster nel file 1CV8Reg.lst (registro del cluster). Ogni Gestore Cluster dispone inoltre di una propria porta sul Server di lavoro. Per il primo cluster, per impostazione predefinita, la porta Manager è 1541. È questa porta che viene visualizzata nello snap-in 1C:Enterprise Servers nel ramo Clusters, identificando il cluster.
Il manager accetta le richieste dalla parte client di 1C:Enterprise 8.1 e decide a quale flusso di lavoro inviare questa richiesta di servizio.

Il gestore utilizza una porta di servizio per interagire con i flussi di lavoro.

Il processo di lavoro

Il flusso di lavoro è responsabile del "lavoro con i clienti". Possiamo dire che nella versione precedente di 1C:Enterprise 8.0 c'era un solo "flusso di lavoro".
Possono essere presenti diversi processi di lavoro in un cluster 1C:Enterprise 8.1. Il server manager decide quale processo di lavoro servirà la connessione client. Per le connessioni client, ai processi di lavoro viene assegnato per impostazione predefinita un intervallo di porte IP compreso tra 1560 e 1591. Inoltre, a ciascun processo di lavoro viene assegnata una porta di servizio per comunicare con il gestore cluster. Ogni processo di lavoro utilizza fino a 2 GB di RAM in un sistema operativo a 32 bit. In un sistema operativo a 64 bit, la limitazione è imposta dalla quantità fisica di RAM

Gruppo 1C 8.2

Cluster di server 1C:Enterprise 8.2 - ulteriori sviluppi tecnologie server 8.2.

Il server può funzionare "come 8.1", ad es. rimane compatibile con le tecnologie precedenti.

Inoltre, è stato implementato un nuovo approccio al funzionamento del server. Ora, invece dei processi, le sessioni giocano un ruolo importante.

Le sessioni consentono di eseguire il bilanciamento del carico e il failover in un'applicazione gestita.

gestore del cluster

Il gestore cluster ora è più complesso. Alcune delle funzioni possono ora essere separate in un processo separato e persino posizionate su un altro server funzionante del cluster. Ciò consente di bilanciare il carico sul server.

La tolleranza agli errori del server 8.2 si ottiene tramite:

  • Memorizzazione di informazioni sulla sessione dell'utente.
    • L'utente non è più legato a un flusso di lavoro.
  • Ridondanza dei processi di lavoro in un cluster.
    • Dovrebbero esserci diversi processi di lavoro, inclusi quelli ridondanti
  • Ridondanza del cluster.
    • Viene specificato un cluster di riserva, quando connesso, sono elencati nella stringa di connessione

Ciò consente di garantire la continuità del lavoro:

Quando la connessione fisica del client con il cluster viene interrotta (la donna delle pulizie ha staccato il cavo, l'alimentazione è stata interrotta apparecchiature di rete, problemi con il provider) non è necessario riconnettersi all'infobase e ricominciare tutto da capo. Dopo che la connessione fisica è stata ripristinata, l'utente può continuare a lavorare dal punto in cui era stata interrotta.

Se lo desidera Manutenzione computer cluster, possono essere disattivati ​​durante il funzionamento senza impedire agli utenti di lavorare con l'infobase.

Se un qualsiasi server nel cluster si guasta, il lavoro degli utenti non si interromperà, verrà automaticamente trasferito a un cluster di standby e/o ai processi di lavoro in standby. Per gli utenti, tale transizione sarà impercettibile.

Se uno dei processi di lavoro del cluster termina in modo anomalo, gli utenti ad esso connessi verranno automaticamente trasferiti ad altri processi di lavoro di fallback. Tale transizione sarà anche invisibile agli utenti.

Gruppo 1C 8.3

Il server 8.3 è caratterizzato da un codice interno ridisegnato, anche se "dall'esterno" può sembrare che si tratti di un 8.2 leggermente modificato.

Il server è diventato più "autoconfigurabile", alcuni parametri come il numero di processi di lavoro non vengono più creati manualmente, ma vengono calcolati in base alle descrizioni dei requisiti delle attività per la tolleranza ai guasti e l'affidabilità.

È stato sviluppato un meccanismo di bilanciamento del carico, che può essere utilizzato per migliorare le prestazioni del sistema nel suo insieme o per l'uso nuova modalità"memory saver", che consente di lavorare "con memoria limitata" nei casi in cui la configurazione utilizzata "piace consumare memoria".

La stabilità del lavoro quando si utilizzano grandi quantità di memoria sarà determinata dai nuovi parametri del server funzionante.

Di particolare interesse è il parametro "consumo sicuro di memoria per chiamata". Per coloro che hanno poca idea di cosa sia, meglio non allenarsi su una base "produttiva". Il parametro "Memoria massima del flusso di lavoro" consente, in caso di "overflow", di non far crollare l'intero flusso di lavoro, ma solo una sessione "con il perdente". "Quantità di memoria del processo di lavoro fino alla quale il server è considerato produttivo" consente di bloccare nuove connessioni non appena questa soglia di memoria viene superata.

Raccomando di isolare i flussi di lavoro per infobase, ad esempio, specificare il parametro "Numero di sicurezza delle informazioni per processo = 1". Con diversi database molto caricati, ciò ridurrà l'influenza reciproca sia in termini di affidabilità che di prestazioni.

Un altro contributo alla stabilità del sistema è fornito dalla "spesa" di licenze/chiavi. In 8.3, è diventato possibile utilizzare il file "manager licenze software', che ricorda il manager di 'Aladin'. L'obiettivo è riuscire a portare la chiave su una macchina separata.

È implementato come un altro "servizio" nel gestore cluster. Puoi usare ad esempio un laptop "libero". Aggiungilo al cluster 1s 8.3, crea un gestore separato su di esso con il servizio "servizio di licenza". Puoi collegare una chiave hasp hardware a un laptop o attivare licenze software.

Di grande interesse per i programmatori dovrebbero essere i "Requisiti per l'assegnazione della funzionalità".

Quindi su un laptop con una chiave di sicurezza, per non avviare gli utenti sul server del cluster, è necessario aggiungere "requisiti" per l'oggetto requisito "Connessione client a IS" - "Non assegnare", ad es. impedire ai processi di lavoro su questo server di gestire le connessioni client.

Di interesse ancora maggiore è la possibilità di eseguire "solo lavori in background' su un server di produzione cluster senza sessioni utente. Pertanto, è possibile trasferire attività altamente caricate (codice) su una macchina separata. Inoltre, è possibile un'attività in background di "chiusura del mese" tramite il file "Valore parametro aggiuntivo» eseguito su un computer e l'attività in background «Aggiornamento dell'indice full-text» su un altro. Ad esempio, se specifichi BackgroundJob.CommonModule come valore, puoi limitare il funzionamento del server di lavoro nel cluster solo ai processi in background con qualsiasi contenuto. Il valore di BackgroundJob.CommonModule.<Имя модуля>.<Имя метода>- indicherà un codice specifico.

Risoluzione di possibili problemi di installazione

Quando si installa la parte server 1C:Enterprise 8.1, è possibile creare un nuovo utente o selezionare un account esistente.

Se selezioni un file esistente accountè necessario fornire la password e la conferma corrette, altrimenti l'avvio del back-end comporterà un errore.
La prima volta che si esegue l'agente cluster, viene creato un cluster predefinito.
Il cluster predefinito ha le seguenti caratteristiche:
numero di porta - 1541;
intervallo di porte IP - 1560:1591;
supporto per molti flussi di lavoro - disabilitato;
· un processo di lavoro, il numero di porta è impostato dall'intervallo specificato.
In caso di problemi al primo avvio dell'agente cluster, il cluster predefinito potrebbe non essere creato. Ciò si manifesta nel fatto che quando viene avviato l'agente server (ragent), si avvia, ma non avvia altri processi del cluster (rmngr, rphost). L'elenco dei cluster srvribrg.lst è simile al seguente:
{
{0},
In questo caso, è possibile arrestare il processo ragent, rimuovere l'elenco dei cluster (srvribrg.lst) e riavviare ragent.

Verificare se le porte specificate nel parametro port del servizio dell'agente del server avviano la riga di comando e quelle specificate nella finestra di dialogo dei parametri del server centrale della console dei cluster corrispondono:

- Arrestare il servizio 1C:Enterprise 8.1 Server Agent.

Se Server Agent è in esecuzione come applicazione, può essere interrotto premendo la combinazione di tasti Ctrl+C.
- Assicurati nel Task Manager ( responsabile delle attività) che tutti i processi ragent, rmngr, rphost sono terminati. Se necessario, completali utilizzando il Task Manager.

— Aprire le proprietà del servizio 1C:Enterprise 8.1 Server Agent.

- Prestare attenzione alla riga "File eseguibile" (percorso dell'eseguibile). Ha l'opzione -d seguita dalla directory dei dati del cluster. Tutti i file relativi al cluster si trovano in questa directory.
- Elimina tutti i contenuti di questa directory.
— Avviare il servizio 1C:Enterprise 8.1 Server Agent.
- Assicurati in Task Manager che tutti i processi ragent, rmngr, rphost siano stati avviati.
- Avviare la console del cluster e registrarvi il server centrale. La console dovrebbe connettersi al server centrale e mostrare un cluster predefinito.
Possibili problemi di errore del cluster di server sono problemi con chiavi di sicurezza, diritti dell'account di servizio, parametri di avvio errati.

  1. La chiave di sicurezza lato server è installata LOCALMENTE su ciascun server aziendale
  2. Non impostare un account di servizio con una password vuota
  3. Per più cluster, le porte utilizzate non devono sovrapporsi

Si noti che durante l'installazione della piattaforma 1C:Enterprise 8.1, potrebbero essere generati messaggi di errore. I messaggi più probabili sono elencati di seguito. Sono indicate le cause che hanno generato i messaggi e i passaggi per eliminarli.

Errore 1069: il servizio non è stato avviato a causa di un errore di accesso

Il problema è legato ai diritti dell'account da eseguire come servizio di sistema. Apri l'utilità sicurezza locale Politica( Politica locale security) e aggiungere l'utente (per conto del quale vengono avviati i Cluster Working Server) ai criteri Logon as service e Logon as batch job.
Se i dati memorizzati nei file di servizio vengono violati, l'avvio dei server di lavoro cluster potrebbe non riuscire. Assicurarsi che l'agente server 1C:Enterprise 8.1 sia in esecuzione (processo irregolare in Task Manager).
Non dimenticare che l'audit è anche un mezzo di analisi Eventi Windows. Per fare ciò, controlla se nel registro eventi di Windows vengono visualizzati messaggi "sospetti".

Errore 8007056B / 800708C5

La nuova password non soddisfa i criteri password. La password potrebbe essere troppo breve o l'hai già utilizzata di recente.
Causa: la password specificata per l'account nella finestra di dialogo "Installa 1C:Enterprise Server" non soddisfa i requisiti della politica di sicurezza.
Soluzione: chiedi nuova password per l'account selezionato che soddisfa i requisiti della politica di sicurezza o indebolisce i requisiti della politica di sicurezza applicabile, ad es. non richiedere una password “complessa”, non limitare il numero di caratteri nella password, non controllare i tentativi di ripetizione, ecc.

Errore 1923: nessun privilegio da impostare per servizio

Causa: l'errore è correlato alle autorizzazioni per installare l'account come applicazioni. Questo errore è tipico dei tentativi di installare il server su un controller di dominio in cui sono presenti misure di sicurezza maggiori.
Soluzione: non utilizzare un controller di dominio per ospitare il server aziendale o ridurre i requisiti di sicurezza e specificare i diritti "Lavora come servizio", "Lavora come processo batch" per l'account selezionato.

Errore 80070056

Non è stato possibile modificare la tua password. Ogni password deve essere utilizzata per almeno x giorni.
Causa e soluzione: un altro errore che si verifica quando vengono violati i requisiti della politica di sicurezza per le password utilizzate. La soluzione è simile all'errore 800708C5.

Windows Sockets - 11004 (0x00002AFC)

1) Assicurarsi che sul server di lavoro del cluster nel Task Manager (Task Manager) siano in esecuzione:
Agente del server (ragent.exe),
Gestione cluster (rmngr.exe),
Processo di lavoro del cluster (rphost.exe).
2) Per verificare la risoluzione del nome dell'indirizzo IP, esegui riga di comando:
ping nome host
Nella risposta del sistema al comando, siamo interessati a determinare l'indirizzo IP.
3) Se il nome è determinato, ma il flusso di lavoro non viene ancora trovato, assicurarsi che la definizione dell'indirizzo IP del nome<имя машины>E<имя машины>.<имя домена>non sono definiti diversamente.

(Windows Socket - 10054(0x00002746).

L'host remoto ha interrotto forzatamente la connessione.
Tale messaggio può essere ricevuto in caso di riavvio del server o di rimozione forzata del flusso di lavoro.
Questo errore di solito non viene visualizzato durante la riconnessione. Se l'errore persiste, è necessario indagare sui motivi del guasto dei server funzionanti del cluster.
Questo errore può verificarsi quando il processo di lavoro raggiunge l'utilizzo massimo della memoria nei sistemi a 32 bit.
Un altro caso è un tentativo di connessione da parte di un client con un messaggio di errore:

(Windows Socket - 10060(0x0000274C)

Un tentativo di stabilire una connessione non è riuscito perché la risposta richiesta non è stata ricevuta da un altro computer entro il tempo richiesto o una connessione già stabilita è stata interrotta a causa di una risposta errata da un computer già connesso.
L'essenza di questo errore è la mancanza di risposta entro un certo tempo (timeout).
1) Assicurati che il firewall non stia bloccando il traffico delle applicazioni. Disattiva il firewall.
Per fare ciò, eseguire il comando sulla riga di comando (il comando è disponibile a partire da Windows XP e Windows Server 2003, in più prime versioni non esiste un firewall integrato, ma è possibile installare software di terze parti):
netshfirewallimpostatomodedisattivare
Se il comando va a buon fine, riceverai un messaggio:
OK.
Oltre al firewall, i filtri di rete possono bloccare il traffico. Sono disabilitati per impostazione predefinita. Tuttavia, assicurati che sia così:

  1. Apri la cartella Connessioni di rete.
  2. Clic destro connessione di rete che si desidera configurare e selezionare il comando Proprietà.
  3. Sulla scheda Sono comuni(per connessione LAN) o sulla scheda Netto(per tutte le altre connessioni) selezionare Protocollo Internet (TCP/IP) e premere il pulsante Proprietà.
  4. Fare clic sul pulsante Inoltre.
  5. Apri una scheda Opzioni, seleziona un'opzione Filtraggio TCP/IP e premere il pulsante Proprietà.
  6. Assicurati la casella di controllo Abilita filtro TCP/IP (tutti gli adattatori) RIMOSSO.

2) Assicurarsi che le risorse del processore non siano caricate al 100% (CPU%).
3) Misurare l'attività di rete delle interfacce client e server. Sottolineare scheda di rete non deve superare il 60%.

(Windows Socket - 10061(0x0000274D)

La connessione non è stata stabilita perché il computer di destinazione ha rifiutato la richiesta di connessione.
Un motivo tipico di tale errore è l'assenza di un Server Agent in esecuzione. Avviare il server manualmente o riavviare il server per l'avvio automatico.

Risposte alle domande

Multipiattaforma 1C

Installazione del server

D:Errore durante l'installazione del server 1c su MS Server 2008 R2 x64 Durante l'installazione del server 1c tramite la riga di comando, ad esempio, ragent.exe -instsrvc -port 2040 -regport 2041 -range 2060:2091 -d "C:\Program Files\1cv82 \ (preso dal disco ITS), scrive un messaggio sulla riga di comando: “Errore! Errore OpenSCManager!" Il servizio non è stato creato. Controllato l'8.1.15.14 e l'8.2.10.77

R: Per eseguire l'installazione dalla riga di comando su un sistema operativo in cui è presente UAC, è necessario utilizzare il servizio RunAs. anche se l'utente è un membro del gruppo Administrators, UAC blocca le azioni che modificano lo stato del sistema.

Chiavi di sicurezza

D: La chiave di sicurezza del server 8.2 consente di eseguire il server 8.1?
A: Sì, permette

D: Per eseguire il server 1C, ho bisogno di alcune chiavi hasp del server? Locale o non funzionerà per 5 utenti?

R: sì, il server ha bisogno di una propria chiave, l'utente locale e la rete non funzionano. Leggi di più in « « , diapositiva numero 30.

D: diciamo che un cluster di server 1c è composto da 3 server fisici. di quante chiavi di sicurezza hai bisogno

D: C'è un terminal server e una chiave per 5 licenze, la sesta aggiunta. licenza. È possibile installarlo sul server accanto alla chiave per 5? E tutti e 6 gli utenti lavoreranno in sessioni terminali o 5 - sotto il terminale e 1 nella versione file?
R: No, non lo faranno. La sesta licenza sotto forma di chiave locale deve essere inserita nel computer dell'utente, ma non nel terminale.

Aggiornamenti del server 1C

D: all'uscita nuova versione piattaforme 8.2.xxx qual è la procedura per l'aggiornamento di server e client
R: Le distribuzioni 8.2 installano i propri file in cartelle diverse(ogni versione ha le proprie cartelle), ad es. teoricamente è possibile richiamare più versioni del server in parallelo.

Non ho avuto particolari problemi. Tuttavia, è necessario monitorare attentamente le porte occupate dall'istanza del server 1C. Non dovrebbero esserci incroci.

Configurazione di un server 1C

D: In 1C 8.1, come posizionare al meglio basi informative, se ce ne sono diversi, in un cluster o creare un cluster separato per ogni database? R: Con un volume o un carico elevato, oltre ai database di test, è necessario inserirli in cluster separati!

D: DOMANDA: Il flusso di lavoro 1C:Enterprise 8.1 è un'applicazione a thread singolo o multi-thread? Quelli. può caricare molti core con un utente connesso? Con diversi? E il flusso di lavoro 1C:Enterprise 8.2? Grazie.
R: 1Сv8.exe e rphost.exe nella versione 8.1 mangiavano 1 core. Finché in 8.1 la connessione client è rigidamente legata al processo di lavoro, allora possiamo supporre condizionatamente che l'elaborazione dei client 1C venga eseguita all'interno dello stesso core. L'eccezione è il DBMS, che utilizza i kernel indipendentemente da come funziona il server 1C.

Nella versione 8.2, le connessioni sono state sostituite dalle sessioni. Le sessioni potrebbero essere già in esecuzione in diversi flussi di lavoro. Pertanto, chiamare 8.2 a thread singolo probabilmente non è corretto. Il client 8.2 carica anche visivamente diversi core, quindi in questo modo:

La piattaforma 8.2 non implementa tutte le funzionalità di un sistema multithread, ma sfrutta molto meglio le capacità dell'hardware rispetto alla 8.1, anche in termini di parallelismo.

D: È necessario disporre di diversi processi di lavoro 1C:Enterprise 8.1 affinché il server di database (MS SQL) carichi diversi core? (Si noti che MS SQL di solito "carica" ​​​​solo un core, ovvero la "parallelizzazione" dell'elaborazione di una query su più core, di norma, non si verifica.) Grazie.
A: Non è necessario gestire MS SQL in modo specifico, è un sistema abbastanza autoregolante che utilizza le risorse secondo necessità. Puoi controllare il parallelismo di esecuzione:

EXEC sys.sp_configure N'max grado di parallelismo', N'5'
ANDARE
RICONFIGURA CON OVERRIDE
ANDARE

È possibile creare diversi flussi di lavoro sul server 1C in base al fatto che un flusso di lavoro non offre agli utenti l'opportunità di riconnettersi in caso di arresto anomalo del flusso di lavoro. 2 (su 8.2 è meglio farlo "backup") risolve questo problema. Ma ha senso aggiungere il terzo o più flussi di lavoro solo se i primi due flussi di lavoro sono molto caricati (oltre il 90%). Non vale la pena unire inutilmente i flussi di lavoro, poiché ciò può ridurre le prestazioni.

R: Dovrebbe esserci almeno 1 flusso di lavoro di fallback in 8.2.

Cluster di failover

D: Domanda sull'abilitazione della ridondanza del cluster 1c 8.2. Se il nostro server si è bloccato (la donna delle pulizie ha tirato fuori il filo), il nome della rete, ad esempio "server: 2540", non sarà disponibile. come fa il client, che ha "server:2540" nella stringa di connessione, a sapere che deve connettersi al cluster di backup? da dove prenderà un nome di altro server? E se scrivi cluster separati da virgole nella stringa di connessione al database?
R: Diversi cluster sono combinati in un "gruppo di ridondanza". Per fare ciò, esiste un "elenco di prenotazione" nello snap-in del cluster.

La prima volta che un client accede a un cluster, riceve un elenco di cluster che fanno parte di un gruppo di ridondanza.

Se il client non ha mai contattato, in questo caso è necessario specificare manualmente gli indirizzi di tutti i cluster, ad esempio storm:2541,monster:2541.

I dati sincronizzati vengono scambiati tra i cluster di ridondanza.

D: Cosa succede dopo il ripristino del cluster principale? quando gli utenti sono passati a un backup.

R: Torna indietro. Sono possibili pause durante il passaggio per la durata della sincronizzazione dei dati del cluster.

Lavori in background

D: Come posso eliminare un'attività in background in esecuzione su server 1C:8.1 e 1C:8.2?

R: Possibilità di cancellazione compito di routine funziona solo se il codice viene eseguito all'interno del linguaggio integrato di 1C:Enterprise. Se il codice viene eseguito in librerie esterne, tale lavoro non può essere annullato se non terminando forzatamente il flusso di lavoro. Se nel processo il blocco StartTransaction() - FixTransaction() è improbabile. Altri processi in background possono essere eliminati tramite la console dei processi.

Procedure regolamentari

D: È possibile distruggere la base durante T&I?

A: Non sono a conoscenza di casi del genere, ma IMHO tutto è possibile. Pertanto, sarebbe bello fare un backup prima di T&I.

D: Vyacheslav, per quali motivi non esegui la reindicizzazione utilizzando 1C Testing and Correction?
R: Per questi scopi, le funzionalità del DBMS sono più adatte, poiché essenzialmente eseguono la stessa ricostruzione degli indici, ma non richiedono l'acquisizione esclusiva del database.

Rivista di tecnologia

D: Buon pomeriggio. Domanda sulla rivista tecnologica: ho bisogno di ottenere copie degli schermi delle postazioni di lavoro in caso di errori 1C. Devo configurare il log tecnologico sulle postazioni per questo o è solo per il server?
R: Puoi impostare uno screenshot solo quando la piattaforma va in crash e non per qualsiasi errore. Tuttavia, non c'è molta utilità in tale operazione, è sufficiente raccogliere le eccezioni utilizzando il registro tecnologico. Allo stesso tempo, la maggior parte degli errori può essere vista con l'aiuto di TJ sul lato server 1C. Un'eccezione sarebbero eventi come "format stream error" associati a una cache di metadati obsoleta.

Problemi ed errori

D: Hai riscontrato un problema: la scomparsa delle impostazioni di segnalazione degli utenti durante l'aggiornamento dinamico delle configurazioni sulla piattaforma 8.2. Qualche consiglio su come affrontare questo problema?
R: I problemi relativi all'aggiornamento dinamico si riflettono in "Server 1C: Enterprise 8.1 e 8.2 - con cosa mangiano"), diapositiva numero 60. Cancella cache. Forse in alcuni casi è necessario capire dove sono memorizzate esattamente le impostazioni dell'utente. Se necessario, archiviare come dati binari nel registro delle informazioni.

D: Una domanda passeggera, perché. questo è rilevante per modalità file: quali errori corregge chdbfl.exe?
A: Questo è uno strumento di correzione degli errori della struttura di archiviazione. Questa potrebbe essere una situazione in cui, ad esempio, si verifica "Il file di database è danneggiato .../1Cv8.1CD". Quelli. corregge la corruzione del file di database. Tuttavia, non svolge le funzioni di T&I. Corro chdbfl.exe se T&I "non vende con successo".

D: Per favore dimmi se hai riscontrato un problema del genere. mentre in base un largo numero utenti (circa 40) durante l'esecuzione di documenti di grandi dimensioni, ad esempio, il riflesso della RFP nel reg. pari a circa 8000 linee. viene dato un errore di memoria insufficiente sul server 1C dell'azienda e l'utente che ha avviato la detenzione di questo documento decade. Il documento può quindi essere pubblicato solo dopo aver riavviato l'agente server 1C.
A: Sembra che ci siano perdite di memoria:

1. Riavvia il server 1C, aumenta il numero di processi di lavoro, mantieni solo questa base nel cluster.

2. Batti tenendo in pezzi, diciamo 1000 righe alla volta. Usa TJ per tenere traccia degli oggetti che occupano memoria all'inizio dell'operazione, ma non rilasciano memoria alla fine.

3. Installa la versione x64, aumenta la quantità di RAM, passa a 8.2.

D: Una domanda su test e riferimenti. È possibile eseguire "Referential Integrity Check" basato su URDB con selezione basata sui dati trasmessi? (cioè non ci sono oggetti fisicamente in alcuni nodi, ma ci sono collegamenti ad essi). Grazie!
R: Sfortunatamente, questo non è ancora possibile.

D: Perché i test e le correzioni non risolvono tutti i problemi contemporaneamente, è necessario eseguirlo più volte?

R: Solo gli sviluppatori possono dare una risposta esatta. Gestisco T&I secondo le normative (ciclicamente), quindi questa domanda non è molto rilevante per me. È necessario fare T&I non una volta, ma costantemente, come "TO for a car".

D: C'è differenza tra TI 8.1 e 8.2?

A: Al momento della stesura della risposta e del rilascio 8.2.10, non conosco la differenza.

D: Devo reindicizzare durante la ristrutturazione?
R: Non c'è bisogno.

Altro

D: Gentili signori, nessuno ha provato a eseguire il mirroring dei database utilizzando MSSql 2008, è possibile?

D: Domanda sull'inclusione forzata della memoria condivisa sul server 1c 8.2

A: Non devi forzare nulla, il server capirà.

D: Per 1C:Enterprise 8.1, sono state notate situazioni durante lo stesso hardware la versione file-server con operazioni “pesanti” e un singolo utente lavora molto più velocemente della versione client-server, quando tutti i “link” (database server, 1C:Enterprise server e client) sono installati sullo stesso server. Allo stesso tempo, quando si esegue questa operazione "pesante", non ci sono sovraccarichi espliciti dell'hardware (carico del processore, memoria, dischi fissi minimo). Cioè, ci sono molte risorse hardware, ma funziona lentamente. Per cosa possiamo "sostenere"? Grazie.
R: Dignità architettura client-server in termini di prestazioni: la capacità di elaborare in modo PARALLELO le richieste di dati dei clienti. Quelli. la portata non è l'indicatore da cui vale la pena trarre conclusioni generali. I meccanismi che migliorano la concorrenza possono comunque ridurre leggermente le prestazioni all'interno di un singolo thread.

Per trovare inequivocabilmente un collo di bottiglia nel tuo caso, devi ottenere il carico di lavoro dell'apparecchiatura del server e confrontarlo nel tempo con le operazioni più lunghe in modalità client-server. Spesso si tratta di un movimento ridondante di dati sul lato client. Quelli. invece di eseguire operazioni sul server 1C, i dati dal subd vengono trasmessi attraverso il server al client.

La velocità in un thread della versione client-server raggiungerà solo le prestazioni della versione del file. Vale la pena affrontare questo problema se il tempo di funzionamento in termini assoluti è misurato non meno di un minuto. È dubbio impegnarsi nell'ottimizzazione entro query di 1-3 secondi.

D: Sulla differenza tra un terminale Windows e un thin client 1C.
R: Fino a quando la maggior parte delle soluzioni non sarà COMPLETAMENTE tradotta in 8.2, è decisamente difficile parlare di un confronto pratico di queste tecnologie.

È chiaro che il thin client 1C dovrebbe consumare meno traffico e fornire la possibilità di lavorare tramite il web. Ma questo è qualcosa che deve ancora essere implementato e ora le soluzioni terminali vengono sfruttate molto ampiamente.

Per project manager pragmatici conservatori che convertono la soluzione terminale da 8.1 a 8.2. Per piccoli progetti con bassi costi di errore e configurazione immediatamente implementata con forme gestite e SKD: è preferibile un thin client IMHO.

D: E come condurre i test di carico vicino alle condizioni reali? Dopotutto, non spingerai gli utenti a "fare clic su qualcosa".

A: 1C: Centro test con la scelta delle operazioni più difficili, non è necessaria la riproduzione al 100%, i clic stessi non sono difficili, principalmente esecuzione e richiesta di report. Ci sarà un webinar separato per i test. Ti dirò anche di più.