Rumah pangkalan data tutorial mysql zabbix根据主机和端口列表自动发现监控远程MongoDB实例

zabbix根据主机和端口列表自动发现监控远程MongoDB实例

Jun 07, 2016 pm 04:48 PM
mongodb zabbix

在有些情况下,只能使用远程的MongoDB实例而不能登录到MongoDB实例所在的服务器上,这时可以在一台服务器上维护一个远程MongoDB实例的主机和端口列表,然后通过z

在有些情况下,只能使用远程的MongoDB实例而不能登录到MongoDB实例所在的服务器上,这时可以在一台服务器上维护一个远程MongoDB实例的主机和端口列表,,然后通过zabbix的低级发现功能去根据主机和端口自动添加相应的监控。


  • MongoDB主机和端口发现脚步mongodb_discovery.py

    主机和端口列表文件mongodb_servers.txt,文件中存放每个实例的主机,端口信息


  • 10.4.9.112:28018:root:xxxx 10.4.9.2:27017:root 10.4.9.3:28018#/usr/bin/python #This script is used to discovery disk on the server import subprocess import json args='''awk -F':' '{print $1":"$2}' /usr/local/zabbix/bin/mongodb_servers.txt''' t=subprocess.Popen(args,shell=True,stdout=subprocess.PIPE).communicate()[0] mongodbs=[] for mongo in t.split('\n'):     if len(mongo) != 0:        mongodbs.append({'{#MONGO_HOST}':mongo}) print json.dumps({'data':mongodbs},indent=4,separators=(',',':'))


    显示结果:

    {     "data":[         {             "{#MONGO_HOST}":"192.168.5.7:30000"         },         {             "{#MONGO_HOST}":"192.168.5.7:30001"         },         {             "{#MONGO_HOST}":"192.168.5.23:30002"         },         {             "{#MONGO_HOST}":"192.168.5.23:30003"         }     ] }



    2.获取MongoDB端口状态信息脚本discovery_mongodb_status.sh

    这里会根据{#MONGO_HOST}传来的值在mongodb_servers.txt文件中找到相应的行,并以冒号 “:” 判断整行的长度,然后使用不同的mongodb连接方式

     

    #This script is used to get discovered  mongodb servers status #echo "db.serverStatus().uptime"|mongo 192.168.5.23:30002/admin  -uroot -pxxxx #echo "db.serverStatus().mem.mapped"|mongo 192.168.5.23:30002/admin  -uroot -pxxx #echo "db.serverStatus().globalLock.activeClients.total"|mongo 192.168.5.23:30002/admin  -uroot -pxxx # Macro {#MONGO_INFO}  "HOSTNAME:PORT:USERNAME:PASSWORD" #sh discovery_mongodb_status.sh  uptime  {#MONGO_HOST}  #sh discovery_mongodb_status.sh  mem mapped  {#MONGO_HOST}  #sh discovery_mongodb_status.sh  globalLock activeClients total  {#MONGO_HOST}  #one more parameter mongo_info="" command_line="" function check_mongo_info() {     num=$(echo $mongo_info|awk -F":" '{print NF}')     host=$(echo $mongo_info|awk -F":" '{print $1}')     port=$(echo $mongo_info|awk -F":" '{print $2}')     username=$(echo $mongo_info|awk -F":" '{print $3}')     password=$(echo $mongo_info|awk -F":" '{print $4}')         case $num in      2)        command_line="/data/app_platform/mongodb/bin/mongo $host:$port/admin"        ;;      3)        command_line="/data/app_platform/mongodb/bin/mongo $host:$port/admin -u$username -p''"        ;;      4)        command_line="/data/app_platform/mongodb/bin/mongo $host:$port/admin -u$username -p$password"        ;;      esac                                          } case $# in   2)         mongo_info=$(grep $2 /usr/local/zabbix/bin/mongodb_servers.txt)     check_mongo_info      output=$(/bin/echo "db.serverStatus().$1" |$command_line|sed -n '3p')     ;;   3)     mongo_info=$(grep $3 /usr/local/zabbix/bin/mongodb_servers.txt)     check_mongo_info     output=$(/bin/echo "db.serverStatus().$1.$2" |$command_line|sed -n '3p')     ;;   4)     mongo_info=$(grep $4 /usr/local/zabbix/bin/mongodb_servers.txt)     check_mongo_info     output=$(/bin/echo "db.serverStatus().$1.$2.$3" |$command_line|sed -n '3p')     ;; esac #check if the output contains "NumberLong" if [[ "$output" =~ "NumberLong"   ]];then   echo $output|sed -n 's/NumberLong(//p'|sed -n 's/)//p' else    echo $output fi


    Kenyataan Laman Web ini
    Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

    Alat AI Hot

    Undresser.AI Undress

    Undresser.AI Undress

    Apl berkuasa AI untuk mencipta foto bogel yang realistik

    AI Clothes Remover

    AI Clothes Remover

    Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

    Undress AI Tool

    Undress AI Tool

    Gambar buka pakaian secara percuma

    Clothoff.io

    Clothoff.io

    Penyingkiran pakaian AI

    AI Hentai Generator

    AI Hentai Generator

    Menjana ai hentai secara percuma.

    Artikel Panas

    R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
    2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
    Repo: Cara menghidupkan semula rakan sepasukan
    1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
    Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
    1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

    Alat panas

    Notepad++7.3.1

    Notepad++7.3.1

    Editor kod yang mudah digunakan dan percuma

    SublimeText3 versi Cina

    SublimeText3 versi Cina

    Versi Cina, sangat mudah digunakan

    Hantar Studio 13.0.1

    Hantar Studio 13.0.1

    Persekitaran pembangunan bersepadu PHP yang berkuasa

    Dreamweaver CS6

    Dreamweaver CS6

    Alat pembangunan web visual

    SublimeText3 versi Mac

    SublimeText3 versi Mac

    Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

    Versi mana yang biasanya digunakan untuk mongodb? Versi mana yang biasanya digunakan untuk mongodb? Apr 07, 2024 pm 05:48 PM

    Adalah disyorkan untuk menggunakan versi terkini MongoDB (kini 5.0) kerana ia menyediakan ciri dan penambahbaikan terkini. Apabila memilih versi, anda perlu mempertimbangkan keperluan fungsian, keserasian, kestabilan dan sokongan komuniti Sebagai contoh, versi terkini mempunyai ciri seperti transaksi dan pengoptimuman saluran paip. Pastikan versi itu serasi dengan aplikasi. Untuk persekitaran pengeluaran, pilih versi sokongan jangka panjang. Versi terkini mempunyai sokongan komuniti yang lebih aktif.

    Perbezaan antara nodejs dan vuejs Perbezaan antara nodejs dan vuejs Apr 21, 2024 am 04:17 AM

    Node.js ialah masa jalan JavaScript bahagian pelayan, manakala Vue.js ialah rangka kerja JavaScript sisi klien untuk mencipta antara muka pengguna interaktif. Node.js digunakan untuk pembangunan bahagian pelayan, seperti pembangunan API perkhidmatan belakang dan pemprosesan data, manakala Vue.js digunakan untuk pembangunan sisi klien, seperti aplikasi satu halaman dan antara muka pengguna yang responsif.

    Perkongsian pengalaman tentang melaksanakan sistem pengesyoran masa nyata menggunakan MongoDB Perkongsian pengalaman tentang melaksanakan sistem pengesyoran masa nyata menggunakan MongoDB Nov 03, 2023 pm 04:37 PM

    Dengan perkembangan Internet, kehidupan orang ramai menjadi lebih digital, dan permintaan untuk pemperibadian menjadi lebih kuat dan lebih kukuh. Dalam era ledakan maklumat ini, pengguna sering berhadapan dengan jumlah maklumat yang besar dan tidak mempunyai pilihan, jadi kepentingan sistem pengesyoran masa nyata telah menjadi semakin menonjol. Artikel ini akan berkongsi pengalaman menggunakan MongoDB untuk melaksanakan sistem pengesyoran masa nyata, dengan harapan dapat memberikan sedikit inspirasi dan bantuan kepada pembangun. 1. Pengenalan kepada MongoDB MongoDB ialah pangkalan data NoSQL sumber terbuka yang terkenal dengan prestasi tinggi, skalabiliti mudah dan model data yang fleksibel. Berbanding dengan biografi

    Di manakah pangkalan data yang dibuat oleh mongodb? Di manakah pangkalan data yang dibuat oleh mongodb? Apr 07, 2024 pm 05:39 PM

    Data pangkalan data MongoDB disimpan dalam direktori data yang ditentukan, yang boleh terdapat dalam sistem fail tempatan, sistem fail rangkaian atau storan awan Lokasi khusus adalah seperti berikut: Sistem fail tempatan: Laluan lalai ialah Linux/macOS: /data/db, Windows: C:\data\db. Sistem fail rangkaian: Laluan bergantung pada sistem fail. Storan Awan: Laluan ditentukan oleh pembekal storan awan.

    Apakah kelebihan pangkalan data mongodb Apakah kelebihan pangkalan data mongodb Apr 07, 2024 pm 05:21 PM

    Pangkalan data MongoDB terkenal dengan fleksibiliti, skalabiliti dan prestasi tingginya. Kelebihannya termasuk: model data dokumen yang membolehkan data disimpan dengan cara yang fleksibel dan tidak berstruktur. Skala mendatar kepada berbilang pelayan melalui sharding. Fleksibiliti pertanyaan, menyokong pertanyaan kompleks dan operasi pengagregatan. Replikasi data dan toleransi kesalahan memastikan lebihan data dan ketersediaan tinggi. Sokongan JSON untuk penyepaduan mudah dengan aplikasi bahagian hadapan. Prestasi tinggi untuk respons pantas walaupun semasa memproses sejumlah besar data. Sumber terbuka, boleh disesuaikan dan percuma untuk digunakan.

    Apakah maksud mongodb? Apakah maksud mongodb? Apr 07, 2024 pm 05:57 PM

    MongoDB ialah sistem pangkalan data teragih berorientasikan dokumen yang digunakan untuk menyimpan dan mengurus sejumlah besar data berstruktur dan tidak berstruktur. Konsep terasnya termasuk penyimpanan dan pengedaran dokumen, dan ciri utamanya termasuk skema dinamik, pengindeksan, pengagregatan, pengurangan peta dan replikasi. Ia digunakan secara meluas dalam sistem pengurusan kandungan, platform e-dagang, laman web media sosial, aplikasi IoT dan pembangunan aplikasi mudah alih.

    Di manakah fail pangkalan data mongodb? Di manakah fail pangkalan data mongodb? Apr 07, 2024 pm 05:42 PM

    Fail pangkalan data MongoDB terletak dalam direktori data MongoDB, iaitu /data/db secara lalai, yang mengandungi .bson (data dokumen), ns (maklumat pengumpulan), jurnal (tulis rekod operasi), wiredTiger (data apabila menggunakan WiredTiger enjin storan ) dan konfigurasi (maklumat konfigurasi pangkalan data) dan fail lain.

    Bagaimana untuk membuka mongodb Bagaimana untuk membuka mongodb Apr 07, 2024 pm 06:15 PM

    Pada Linux/macOS: Cipta direktori data dan mulakan perkhidmatan "mongod". Pada Windows: Cipta direktori data dan mulakan perkhidmatan MongoDB daripada Pengurus Perkhidmatan. Dalam Docker: Jalankan arahan "docker run". Pada platform lain: Sila rujuk dokumentasi MongoDB. Kaedah pengesahan: Jalankan arahan "mongo" untuk menyambung dan melihat versi pelayan.

    See all articles