NetXMS come sistema di monitoraggio per pigri… e un po' di confronto con Zabbix

NetXMS come sistema di monitoraggio per pigri… e un po' di confronto con Zabbix

0. Introduzione

Non ho trovato su Habr nessun articolo su NetXMS, nonostante abbia cercato a lungo. Solo per questo motivo ho deciso di scrivere questa opera, per dedicare attenzione a questo sistema.

Funge sia da tutorial che da guida e offre una panoramica superficiale delle possibilità del sistema.

Questo articolo contiene un’analisi superficiale e una descrizione delle capacità del sistema. Non sono andato in profondità nelle funzionalità per vari motivi. Inoltre, una descrizione di tutte le funzionalità richiederebbe più di un articolo.

Dal momento che ho lavorato abbastanza con Zabbix, questo articolo menzionerà spesso questo sistema per confrontarlo con il soggetto. Inoltre, in un certo senso, c'è una consuetudine che tutto venga confrontato con qualcosa di ampiamente riconosciuto.

1. Cosa e perché?

Un sistema di monitoraggio, come indicato dalla definizione, è un sistema che consente di ottenere in qualsiasi momento informazioni aggiornate su un nodo della rete, sia esso un computer, un router o altro.

A cosa serve, è altrettanto ovvio. Per essere al corrente di ciò che accade.

Spesso, un sistema di monitoraggio può fornire informazioni estremamente dettagliate sullo stato dell'intera infrastruttura e delle sue singole componenti. Inoltre, se si impostano le notifiche (senza di esse, qualsiasi monitoraggio ha poco valore), si ottiene uno strumento potente che consente non solo di reagire tempestivamente a situazioni di emergenza già verificatesi, ma spesso offre anche la possibilità di prevenire tali emergenze.

2. Perché NetXMS?

Un po' di otto per coloro che amano i testi lunghiQuando ero giovane e inesperto... Così iniziano di solito tutte le favole? In parole povere, quando ero un massimalista, studiavo la questione del monitoraggio dell'infrastruttura, e il risultato di quelle "ricerche" è stato che non c'è nulla di meglio di Zabbix. E a quel tempo mi è davvero piaciuto, perché può fare tanto, è molto versatile, e la sua funzionalità può essere ampliata con script personalizzati, quindi si può dire che può fare praticamente di tutto, se le mani crescono dal posto giusto. Ma Zabbix è uno strumento piuttosto complesso. Per riuscire a comprendere almeno un po' il suo funzionamento, ci sono volute quasi due settimane. E questa è solo la fase di implementazione. Poi ci sono volute altre due settimane per configurare il monitoraggio di tutto ciò che mi serviva allora. E su come usare Zabbix per controllare lo stato delle porte sui router, ho letto, ho letto, mi sono spaventato e ho deciso che non era poi così necessario... No, lì è davvero spaventoso per una mente non preparata subito dopo l'università...

E così, dopo qualche anno, crescendo e maturando, ho deciso che era giunto il momento di rinfrescare le mie conoscenze sui sistemi di monitoraggio. E finalmente fare un monitoraggio della rete normale e stabile, dato che questo problema è diventato attuale a causa della crescita dei segmenti, del collegamento di una filiale e di altre piccole cose. Tutto scorre, tutto cambia. E ho iniziato a testare vari strumenti. A volte installavo questo sistema, lo provavo, altre volte ne testavo un altro. E ovunque c'era qualcosa che mancava, ovunque c'era qualcosa che non mi piaceva. A volte l'interfaccia era scomoda, a volte la configurazione era frustrante, o altro ancora. E a quel punto mi sono imbattuto in NetXMS. A proposito: dove con Zabbix ho impiegato due settimane, con NetXMS tutto è andato a posto in poche ore. Forse ha influito l'esperienza acquisita con Zabbix, o forse è proprio il NetXMS a fare la differenza... difficile dirlo.

NetXMS si è rivelato un sistema abbastanza semplice da installare e configurare. Ha versioni del server e di una console di amministrazione sia per Windows che per Linux, la creazione di grafici, un "browser" integrato che consente di collegarsi dai parametri della console di amministrazione agli stessi router tramite protocolli httphttps, e un'interfaccia intuitivamente comprensibile, e anche un agente per qualsiasi sistema operativo. In una parola, questo sistema si è rivelato semplice e comodo. A prima vista.

La documentazione, a proposito, è da 8 su 10. Le cose principali sono indicate, ma per addentrarsi nei dettagli bisogna scavare un po'.

I principali vantaggi indicati dallo sviluppatoreMonitoraggio approfondito della rete
Scoperta, visualizzazione e ricerca automatica dei componenti connessi a livello 2 e 3
Completa supporto per SNMPv3
Scoperta attiva tramite sonde di scansione
Scoperta passiva basata su informazioni da dispositivi controllati — ARP e tabelle di routing, interfacce
Monitoraggio di applicazioni e server
Tutte le metriche principali che ci si aspetta: CPU, filesystem, input-output, memoria, traffico
Bridge JMX per il monitoraggio delle applicazioni Java
Estensioni per applicazioni specifiche: Oracle, MySQL, PostgreSQL, MongoDB, DB2, Tuxedo e molte altre
API di integrazione per applicazioni personalizzate
Progettato per reti di grandi dimensioni
Un server può monitorare centinaia di metriche su migliaia di dispositivi
Completo supporto per il monitoraggio distribuito e scalabilità orizzontale
Monitoraggio di sotto-reti IP sovrapposte
Controllo flessibile degli accessi per operatori e clienti

3. Approfondiamo

Come installare il sistema — c'è un intero il manuale amministratore, disponibile su sito dello sviluppatore, e non c'è nulla di complicato in questo, quindi non mi fermerò qui. La parte più difficile dell'installazione è collegare il sistema al database... Qui la differenza sarà solo nella scelta del DBMS e del sistema operativo del server. Ho scelto Windows (poi -inserire dati- fatto) e MSSQL, poiché ce l'avevo già.

3.1. Attiviamo la scoperta automatica

La scoperta automatica dei nodi di rete può essere attivata durante l'installazione. Se non è stata attivata per qualche motivo, può sempre essere attivata in «Configuration-Network Discovery» o cliccando sull'icona con lo stesso nome. Nella workspace appariranno le proprietà di scoperta. È necessario attivarla, impostandola in modalità passiva o attiva, e definire altre proprietà, come le sotto-reti da interrogare. Qui è anche possibile impostare filtri, e si possono sia selezionare e affinare quelli già presenti nel sistema, sia scrivere propri script. A dire il vero, non ne ho avuto bisogno. Ma la configurazione sembra piuttosto amichevole e chiara.

È anche possibile specificare la community SNMP predefinita e le sue credenziali.

3.2. Aggiunta di nodi

Con la scoperta automatica attivata, i nodi finali (PC, stampanti) saranno aggiunti e distribuiti automaticamente tra le sotto-reti. Con l'attrezzatura di rete attiva le cose sono un po' più complicate.

Si dovrebbe iniziare attivando SNMP sull'attrezzatura di rete e configurando la community. Se il valore predefinito per la community SNMP non è stato modificato nelle proprietà di scoperta automatica dei nodi di rete, il sistema utilizzerà la community pubblica, e questa impostazione può essere modificata per ciascun nodo nelle proprietà del nodo aggiunto (node).

Per comodità, è possibile raggruppare i dispositivi secondo qualsiasi principio che si preferisca; a tal fine, nel tree è possibile creare contenitori nel ramo Infrastructure Services e collegarvi i nodi dalla Entrie Network.

Dopo aver attivato e configurato SNMP sui router e averli aggiunti all'elenco delle attrezzature monitorate, il sistema si connetterà automaticamente con essi, interrogherà, determinerà di quali dispositivi si tratta, applicherà i modelli, inizierà la raccolta dei dati e mostrerà il pannello frontale per ciascun router. Automaticamente. Di fabbrica. Quando ho configurato Zabbix, di simile potevo solo sognare.

NetXMS come sistema di monitoraggio per pigri… e un po' di confronto con Zabbix

Ho aggiunto manualmente tutti i miei dispositivi di rete, poiché per qualche motivo non si sono rilevati automaticamente. Qui è tutto semplice. Creiamo un contenitore in Infrastructure Services con un nome a piacere (ad esempio switches), e Fai clic con il tasto destro per creare un nodo, specifica il nome visualizzato del nodo, il suo indirizzo IP e sarebbe meglio spuntare "disabilita l'uso dell'agente NetXMS", poiché non può comunque essere installato sull'attrezzatura di rete, e pacchetti superflui non servono.

Browser integrato. Puoi semplicemente fare clic con il tasto destro sul router desiderato e aprire l'interfaccia web del dispositivo. Questo mi è sembrato più comodo, piuttosto che dover cercare ogni volta il necessario nei miei appunti. Certo, il browser non è dei migliori.

3.3. Creazione della mappa di rete

Prima di tutto, è necessario creare la mappa di rete come oggetto. Come al solito, nel ramo Networks Map fai clic con il tasto destro, crea, seleziona il tipo di mappa, definisce i parametri, e il sistema farà tutto da solo.

I tipi di mappe sono i seguenti:

  1. Personalizzata. Questa è una mappa destinata a essere creata manualmente, secondo il desiderio dell'utente.
  2. Topologia di Livello 2. Questa è una mappa che consente di fare automaticamente tutto per l'utente, basandosi sul secondo livello del modello OSI (praticamente, costruisce la mappa in base agli indirizzi MAC dei dispositivi).
  3. Topologia IP, noto anche come Livello 3. È la stessa cosa di quanto visto con il Livello 2, solo che la mappa è costruita sulla base del terzo livello del modello OSI (indirizzi IP).

Quando si sceglie di realizzare manualmente la mappa, è necessario trascinare i nodi dal tree al piano della mappa, collegarli e così via. È un normale disegno.

In altri due casi, è necessario scegliere un punto di partenza da cui il sistema inizierà a costruire la mappa. Ad esempio, un nodo di un router. Il sistema legge da esso i dati sui dispositivi connessi e le porte a cui sono collegati, e poi legge i dati dal successivo router, confronta e così via. Dopo aver analizzato tutti i dispositivi, NetXMS disegnerà automaticamente le connessioni tra i dispositivi di rete indicando le porte a cui sono collegati. È anche possibile specificare che il sistema includa nella mappa i dispositivi finali (stampanti, PC, server), semplicemente cliccando sull'opzione corrispondente nelle proprietà della mappa (Clic destro — proprietà — proprietà della mappa). Inoltre, in questa sezione, è possibile impostare il "raggio di rilevamento" se lo si desidera o se è necessario.

Un piccolo consiglio. Attiva l'opzione 'Adatta sempre il layout allo schermo' in modo che ogni volta che aggiorni la mappa di rete non sia necessario scorrere lo spazio di lavoro e utilizzare lo zoom.

NetXMS come sistema di monitoraggio per pigri… e un po' di confronto con Zabbix

In una topologia di rete distribuita, è possibile sovrapporre oggetti su una mappa del territorio. È anche possibile utilizzare come sfondo, ad esempio, una foto di un armadio con attrezzature nel server, sovrapponendo su di essa gli oggetti necessari. In questo modo è possibile determinare rapidamente lo stato di qualsiasi dispositivo nell'armadio. A mio avviso, è uno strumento estremamente utile nel caso sia necessario trasferire la situazione a un successore o spiegare la situazione a un nuovo collega. È chiaro, comodo e autoevidente.

3.4. Agenti

Gli agenti esistono sia per Windows che per Linux. Il principio di funzionamento è lo stesso degli agenti di Zabbix: viene installato sulla macchina da cui devono essere raccolte le metriche e trasmette i dati al server di monitoraggio. L'agente può essere installato sia prima che dopo l'aggiunta del nodo nel sistema. Dopo l'arrivo dell'agente sul nodo, il sistema inizierà a ricevere dati da esso dopo un po', applicando il modello standard. È possibile aggiungere parametri monitorati sia a un singolo nodo che associandone uno o più modelli predefiniti. Naturalmente, si raccomanda di lavorare con i modelli, poiché questa configurazione è più flessibile.

L'elenco dei parametri monitorati per gli agenti è piuttosto ampio. È possibile consultare l'elenco completo in Wiki NetXMS

Non appena il sistema determina che un agente è attivo sul nodo, lo collegherà immediatamente a uno dei modelli predefiniti — Windows, Linux, HP-UX, Generic UNIX, AIX, a seconda del sistema operativo del nodo.

Modello standard per host Windows:

NetXMS come sistema di monitoraggio per pigri… e un po' di confronto con Zabbix

Puoi aggiungere un parametro per monitorare un nodo specifico facendo clic su «Pulsante destro del mouse - Parametro di raccolta dati», poi «Pulsante destro del mouse nell'area di lavoro — Nuovo parametro», e selezionare quello desiderato dall'elenco. Qui puoi anche configurare i trigger per il parametro monitorato.

È importante notare che gli agenti, proprio come in Zabbix, possono eseguire script personalizzati.

Come installare?Questo è un off-topic, poiché ognuno... hmm... fa come vuole.

La questione è: è necessario distribuire gli agenti solo sui server o su tutte le macchine della rete? Se sui server, e sono pochi — è più facile farlo manualmente. Se sono molti — politiche di dominio, KIX, PoSh. Qualsiasi cosa. Gli agenti hanno la chiave /SILENT, che consente di «inserirlo» in modo trasparente per l'utente (se stiamo parlando di distribuzione su tutte le macchine della rete). Preferisco gli script, poiché è possibile impostare una condizione e creare un flag, a differenza delle politiche che installeranno il programma ogni volta che il PC viene acceso. Quindi, scriviamo uno script del tipo «controlla la presenza del file flag, se non c'è — avvia l'installatore con la chiave /SILENT e dopo un'installazione riuscita crea il file flag». Profitti.

3.5. Trigger

I trigger possono essere configurati per rispondere a determinati eventi nei dati raccolti. Ad esempio, il superamento di un certo valore di ping-pong verso il router. Viene anche configurato il metodo di notifica per ogni trigger (per alcuni è sufficiente un'icona nella console, mentre altri inviano immediatamente notifiche ovunque sia possibile). La reazione a un evento è scelta tra quelle preimpostate nella Configurazione delle Azioni.

Per creare un trigger: entrando nella Configurazione della Raccolta Dati del nodo o del modello, facendo doppio clic sul parametro di interesse (se non esiste, è necessario crearlo prima), e nelle proprietà, passare alla scheda Soglie, e fare clic sul pulsante Aggiungi.

NetXMS come sistema di monitoraggio per pigri… e un po' di confronto con Zabbix

«Funzione» — quale o quali valori utilizzare per calcolare la condizione. Può assumere i seguenti valori (il numero di valori utilizzati per il controllo è indicato nel campo Campioni):
— Ultimo valore interrogato: ultimo/i valore/i ricevuto/i
— Valore medio: valore medio degli ultimi
— Deviazione media: deviazione media
— Differenza con il valore precedente: differenza con il valore precedente
— Errore di raccolta dati: errore nel recupero dei dati
— Somma dei valori: somma dei valori
— Script: valore ottenuto dall'esecuzione dello script personalizzato

«Operazione» — condizione di attivazione del trigger. Può assumere valori (il valore è specificato nel campo Value corrispondente):
— <: minore di: meno di
— <=: minore o uguale a: meno o uguale a
— == uguale a: equivalente a
— >=: maggiore o uguale a: maggiore o uguale a
— >: maggiore di: maggiore di
— !=: diverso da: non equivalente a
— like: simile a
— not like: non simile a
Non ho certezza su come funzionino gli ultimi due parametri. Pertanto, non farò neanche supposizioni sui limiti al loro interno.

In breve, tutto come in Zabbix, solo che non è necessario digitare le formule manualmente, temendo di commettere errori o fare refusi. Per il ripristino del trigger (evento di disattivazione), il sistema inserirà automaticamente il valore. (In Zabbix è di nuovo necessario digitare e non fare errori di battitura).

3.6. Modelli

Clic destro per creare un modello, inserire il nome del modello. Clic destro Configurazione Raccolta Dati.

Un po' di teoriaLe informazioni raccolte possono provenire da diverse fonti. Queste possono essere l'agente NetXMS, che opera sulla macchina, potrebbe essere "una semplice query" o "Interno", inviata dallo stesso server (ad esempio lo stesso ping), "SNMP«, «check point SNMP«, «Push«, «Contatori delle Prestazioni di Windows«, «SM-CLP", oppure una "query personalizzata".script". Per ogni tipo di informazione, è possibile scegliere il tipo che il sistema si aspetta di ricevere. Ad esempio, il ping restituirà un valore intero (integer), la quantità di spazio libero su disco in byte sarà anch'essa un intero, mentre la temperatura sarà un valore non intero, quindi reale).

Per raccogliere informazioni tramite SNMP, NetXMS ha un enorme elenco di parametri predefiniti, quindi non è necessario digitare un OID specifico, ma è possibile trovarlo nell'albero MIB, cosa che in realtà è piuttosto problematica... Ma, alla fine, bisogna frugare nella documentazione del fornitore e cercare i valori IOD per ogni dispositivo singolarmente. Può richiedere molto tempo per configurare la lettura delle informazioni dai dispositivi, imbattersi nel messaggio di sistema "UNSUSTENUTO", e alla fine scoprire che quel determinato dispositivo semplicemente non è in grado di fornire le informazioni richieste. Qui non resta che leggere i manuali e sperare.

Ad esempio, per raccogliere informazioni sul tempo di risposta del nodo (ping), è necessario aggiungere un nuovo parametro (Clic destro per nuovo parametro), nel campo Origine scegliere Interno, premere il pulsante Seleziona e scegliere Ping Time. Lì c'è una ricerca, di cui in Zabbix ho solo sognato. Ha anche senso modificare il periodo di polling del nodo (di default è impostato a 60 secondi, quindi se il router smette di rispondere subito dopo essere stato interrogato dal sistema di monitoraggio, passerà quasi un intero minuto prima che il sistema capisca che qualcosa non va e suoni l'allerta).

Elenco dei dati Interni che possono essere elaborati:

NetXMS come sistema di monitoraggio per pigri… e un po' di confronto con Zabbix

Dopo aver aggiunto tutte le impostazioni necessarie al modello, è necessario premere tasto destro-applica e selezionare tutti i nodi a cui applicare questo modello (ctrl+clic sinistro). E basta. Dopo di che, nell'albero sotto il modello apparirà un ramo, espandendolo, sarà possibile vedere tutti i nodi a cui questo modello è stato applicato.

In caso di scollegamento dal modello, i dati raccolti non smettono di essere raccolti; per annullare la raccolta bisogna entrare nella Configurazione Raccolta Dati di ciascun nodo e eliminare tutto manualmente, oppure prima eliminare i parametri dal modello e poi eliminare i nodi. Non so perché sia fatto in questo modo, ma, a mio parere, è una cosa molto strana. Ma… così è.

Nel modello è possibile selezionare i dati raccolti necessari e copiarli in un altro modello. In massa. E non è necessario copiare e incollare manualmente da un modello all'altro… Inizio già a odiare Zabbix.

3.7. Dashboard

Stranamente, ma il Wiki di NetXMS contiene solo un link a youtube riguardo a questo: Creazione di un Dashboard, non c'è nemmeno un elenco e una descrizione degli elementi che possono essere aggiunti al Dashboard. In linea di massima, è tutto piuttosto intuitivo. Etichetta — è semplicemente… beh… è un'etichetta... Non so nemmeno come tradurlo. Comunque, un campo con un testo, utilizzato per designare e delimitare gli elementi, poiché gli stessi elementi non contengono nomi. Grafico a linee — è un grafico a linee. Grafico a barre — è un diagramma. Visualizzatore di allarmi — elenco di avvisi per il nodo/i selezionato/i. Diciamo che i nomi parlano da soli.

Successivamente, è necessario aprire le proprietà del dashboard e configurare le visualizzazioni. Ci interessa la scheda Elementi del Dashboard. Numero di colonne — è il numero di colonne, elementi che saranno disposti in orizzontale. Ogni oggetto ha proprie proprietà, e consiglio di togliere il segno di spunta dall'opzione Layout-Occupare spazio verticale eccessivo, per minimizzare le dimensioni di ogni elemento.

NetXMS come sistema di monitoraggio per pigri… e un po' di confronto con Zabbix

3.8. Configurazione delle azioni

(Configurazione-Azioni Configurazione)
In sostanza, si tratta di azioni in risposta all'attivazione di trigger.

NetXMS come sistema di monitoraggio per pigri… e un po' di confronto con Zabbix

NetXMS è in grado di inviare e-mail, sms, messaggi xmpp, in risposta all'attivazione di un trigger. Qui tutto è semplice: basta compilare i campi necessari.

È anche possibile:

— Inviare una notifica a un altro server NetXMS
— Eseguire un comando sul server di amministrazione di NetXMS
— Eseguire un comando sul nodo utilizzando l'agente NetXMS
— Eseguire uno script NXSL (NSXL è un proprio linguaggio di programmazione per script di NetXMS)

Dopo aver creato un'azione, è possibile impostare il tempo di ritardo per l'esecuzione e applicare un macro per l'esecuzione. Il tempo di ritardo è necessario per non disturbare l'operatore nel caso in cui il problema si risolva da solo (ad esempio, il tempo di risposta a una richiesta ping era superiore al valore impostato, ma al successivo controllo potrebbe tornare nella norma, quindi perché disturbare per dettagli insignificanti?).

3.9. Controllo dei diritti di accesso

Per ogni oggetto è possibile impostare diritti di accesso specifici. Per ogni oggetto all'interno di un altro oggetto è anche possibile impostare diritti di accesso. Questo consente di distribuire in modo molto flessibile i compiti e le possibilità di monitoraggio per diversi gruppi di utenti. Questo è tutto ciò che volevo dire.

4. Conclusione

Vorrei smentire il titolo del mio stesso articolo. NetXMS non è per i pigri. Semplicemente, gli sviluppatori non hanno messo l'accento sulle funzionalità come altri, ma, oltre a tutto, si sono anche preoccupati dell'interfaccia.

Facciamo così. Ho utilizzato Zabbix e NetXMS. Pertanto, scriverò semplicemente le mie impressioni su questi due sistemi.

Dunque.

NetXMS mi sembra un sistema estremamente user-friendly. Bene… per l’amministratore… sì, per l’amministratore. Ha quel che si chiama un'interfaccia intuitiva, ed è davvero fantastico. Non è necessario scrivere formule proprie, leggere una marea di documentazione per attivare il controllo dei ping fino allo switch o altre cose semplici. Ma. In Zabbix, quella stessa cosa semplice non è molto diversa da qualcosa di veramente complesso, cioè se la impari, riesci a fare anche tutto il resto. In NetXMS ci sono suggerimenti, la maggior parte delle opzioni si possono trovare nell’interfaccia, selezionare con il mouse e configurare. In Zabbix bisogna scoprire se il sistema può fare questo o quello, e se sì, come si scrive e quali parametri restituisce. Zabbix vince nella comunità e con tonnellate di template per ogni evenienza... se riesci a trovare quello che ti serve in questa massa di ricchezze... D'altra parte, anche NetXMS ha una marea di fan e plugin creati da loro per questo sistema. E la stessa applicazione, out of the box, è in grado di monitorare le applicazioni più popolari, come indicato sulla homepage del progetto.

Il principale vantaggio di NetXMS rispetto a Zabbix per me è stata la possibilità di eseguire uno script su un nodo problematico in risposta a un trigger. Se la temperatura della CPU supera la soglia, spegnerà automaticamente l’host. E poi ci occuperemo del problema. Forse anche in Zabbix c'è qualcosa di simile, ma non ci sono riuscito. Così come nel monitoraggio delle porte sui router. Qui invece è tutto automatico... beh, quasi… bisogna imparare il linguaggio di scripting e basta...

I diritti di accesso in NetXMS consentono una gestione abbastanza flessibile delle capacità degli utenti nel sistema. Ma per impostare tutto ciò è necessario dedicare un po' di tempo.

In generale, i sistemi sono abbastanza simili, e le loro capacità, a prima vista, sembrano almeno comparabili. Anche se si sente che Zabbix può fare di più, ma queste capacità sono nascoste profondamente sotto il cofano e per un admin comune sono inaccessibili. NetXMS, invece, appare semplice e chiaro, accogliente e piacevole.

Zabbix ha una documentazione eccellente, wiki, how to, F.A.Q., best practice, e vari forum, dove si possono trovare risposte a quasi tutte le domande. E se c'è qualcosa, puoi sempre porre una domanda.

In sintesi, vorrei raccomandare NetXMS per le persone che stanno appena iniziando o per chi non ha bisogno di un'analisi approfondita del monitoraggio di tutto e di tutti. Sono certo che, approfondendo le funzionalità, si possano ottenere osservazioni molto dettagliate.

Tuttavia, vedo come principale vantaggio proprio l'interfaccia molto piacevole e la semplicità di configurazione.

5. Materiali utilizzati

canale YouTube Tomas Kirnak
Wiki di NetXMS
Ricerca Google

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster