一、CMDB系統簡介
CMDB(Configuration Management DataBase,配置管理資料庫)是一種IT管理工具,用於記錄IT資源及其相關性,使企業更好地規劃、管理資源,並進行資源之間的關聯分析。CMDB系統可以幫助企業管理IT基礎設施,追蹤配置項並與其它ITIL流程進行集成。
CMDB系統在IT管理中起著重要作用,它不僅可用於設備管理,還可用於人員管理和事務管理等方面。CMDB系統集成了ITIL的所有過程,包括完整的配置管理、變更管理和發布管理等。
二、CMDB系統報價
不同的CMDB系統的價格不盡相同,價格的差別取決於系統的功能和規模。目前市面上的CMDB系統價格一般在10萬到幾百萬不等。
如果你想使用開源的CMDB系統,一般不需要花費太多費用。但需要考慮到自己的實際需求,確定所需要的功能,以及項目的規模等因素,選擇適合自己的CMDB系統。
三、CMDB系統好處
CMDB系統可以幫助企業管理其IT基礎設施,優化IT服務和IT運維,提高IT管理的效率。通過CMDB系統,企業可以更加有效的管理其IT資源和相關性,幫助企業規劃、管理和控制其IT資源和相關業務活動,降低運營成本。
CMDB系統提供了一個信息中心,幫助企業控制其IT服務和基礎設施的複雜性,從而更好地管理IT資源的完整性和配置。CMDB系統還可以將企業的核心業務和IT基礎架構集成在一起,實現業務的協同。
四、CMDB系統功能
1、資產管理:CMDB系統可以幫助企業管理其所有IT硬體和軟體資源的相關信息,包括設備名稱、型號、配置信息、IP地址、負責人、關係、狀態等信息。
2、配置管理:CMDB系統可以幫助企業對IT服務和IT基礎設施進行配置管理,包括對IT基礎設施的部署、監視、測試、記錄和控制等方面進行管理。
3、變更管理:CMDB系統可以幫助企業管理IT服務和基礎設施的變更,包括變更申請、變更評估、變更批准、變更實施和變更記錄等。
4、發布管理:CMDB系統可以幫助企業管理IT服務和基礎設施的發布,包括發布計劃、發布準備、發布驗證、發布實施和發布評估等。
5、事件管理:CMDB系統可以幫助企業管理IT服務和基礎設施的事件,包括事件篩選、事件分析、事件解決和事件記錄等。
6、服務水平管理:CMDB系統可以幫助企業跟蹤IT服務和IT基礎設施的運營,包括服務目標、服務水平、服務質量和服務成本等。
7、容量管理:CMDB系統可以幫助企業管理IT服務和基礎設施的容量,包括容量規劃、容量監測和容量優化等。
五、開源CMDB系統推薦
1、Open-AudIT: Open-AudIT是一個開源CMDB系統,支持Windows、Linux和Mac OS,可以幫助IT管理員輕鬆管理IT資產。
2、Ralph: Ralph是一個用於數據中心資產管理的開源CMDB系統,支持IT硬體和軟體的管理,包括網路設備、伺服器和虛擬化資源等。
3、GLPI: GLPI是一個功能齊全的IT管理工具,包括CMDB、IT服務台和網路監控等功能,支持多種IT資源管理。
六、CMDB是什麼意思
CMDB是Configuration Management DataBase的縮寫,翻譯為配置管理資料庫。CMDB系統主要用於管理IT資源及其相關性,使企業更好地規劃、管理資源,並進行資源之間的關聯分析。
七、CMDB的全稱
CMDB的全稱是Configuration Management DataBase,中文翻譯為配置管理資料庫。它是一種IT管理工具,用於記錄IT資源及其相關性,可以幫助企業更好地規劃、管理資源。
八、運維CMDB開源架構選取
#!/usr/bin/python # -*- coding:utf-8 -*- # writer: gzc # des:此腳本用於自動收集ip,交互進行安裝前的信息確認 import os import re import sys import argparse import time import socket import json import urllib2 import logging INSTALL_FILE_NAME = "omserver-2.3.3a-Linux-nodebug.tar.gz" INSTALL_FOLDER_NAME = "omserver" def parse_args(): global INSTALL_FILE_NAME, INSTALL_FOLDER_NAME parser = argparse.ArgumentParser(description="opsagent install script.") parser.add_argument("--install_file", dest="install_file_path", metavar="path/to/file", help="opsagent install file if not use default.") parser.add_argument("--install_path", dest="install_folder_path", metavar="/path/to/folder", help="opsagent install folder if not use default.") args = parser.parse_args() if not args.install_file_path: args.install_file_path = INSTALL_FILE_NAME if not args.install_folder_path: args.install_folder_path = INSTALL_FOLDER_NAME logging.debug("Install file path is %s , Install folder path is %s" % (args.install_file_path, args.install_folder_path)) if args.install_file_path and not os.path.isfile(args.install_file_path): raise Exception("File not exists %s " % args.install_file_path) return args def check_port(port): sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) result = sock.connect_ex(('localhost', port)) sock.close() if result == 0: return True else: return False def check_sudo(): user = os.environ.get('SUDO_USER') uid = os.environ.get('SUDO_UID') gid = os.environ.get('SUDO_GID') # user can only by number if not uid or not gid or uid.isdigit() or gid.isdigit() or user != uid: print("請使用sudo指令執行此安裝腳本") return False return True def check_system(): os_v, os_n, os_r, os_i, architecture = os.uname() if os_n.lower() != "linux": print("This script only support linux.") return False if architecture != "x86_64": print("Unsupported platform:%s." % architecture) return False def get_ip(): myip = "unknown.ip" try: myip = json.load(urllib2.urlopen("http://httpbin.org/ip", timeout=2))['origin'] except: try: myip = json.load(urllib2.urlopen('http://icanhazip.com', timeout=2)).strip() + "\ticanhazip" except: try: myip = json.load(urllib2.urlopen('http://ip.42.pl/raw', timeout=2)).strip() + "\tip.42.pl" except: pass return myip def pre_install_confirm(args): global INSTALL_CONFIG ip_address = get_ip() if not check_sudo(): sys.exit(1) if not check_system(): sys.exit(1) install_confirm = raw_input("""Start OpsAgent install? ______ _ _ _ |__ ___| |_|___ ___ _ __ ___ | |_ | __/ _ \/ __| '__/ _ \\ | |___| || (_) \__ \ | | (_) | |____/ \__\___/|___/_| \___/ The installation directory is %s Press Y to continue: """ % args.install_folder_path) if install_confirm.lower() != "y": sys.exit(1) check_port_confirm = raw_input("""It will check whether port 21020&21021 is free. Press Y to continue: """) if check_port_confirm.lower() != "y": sys.exit(1) if not check_port(21020) and not check_port(21021): return if not check_port(21020): print("\n\nPort 21020 already in use, please exit or kill the program occupying the port") sys.exit(1) if not check_port(21021): print("\n\nPort 21021 already in use, please exit or kill the program occupying the port") sys.exit(1) INSTALL_CONFIG["myIp"] = ip_address INSTALL_CONFIG["hostname"] = socket.gethostname() if socket.gethostname() == ip_address: print("*** Warning ***") print("Your host name is the same as the IP address, Are you sure it's not a loopback address?(y/n)") install_confirm = raw_input() if install_confirm.lower() != "y": sys.exit(1) def install_server(args): global INSTALL_CONFIG logging.info("Install agent start...") os.system("mkdir -p %s" % args.install_folder_path) os.system("tar xvf %s -C %s >/dev/null" % (args.install_file_path, args.install_folder_path)) logging.info("agent package extracted to %s" % args.install_folder_path) try: os.system("rm -f /usr/bin/opendatatunnel_*") os.system("ln -s %s/%s/odt/bin/opendatatunnel /usr/bin/opendatatunnel" % ( args.install_folder_path, INSTALL_CONFIG["version"])) except: logging.error("install opendatatunnel failed.") os.system("echo install success. Log in %s/odt/logs for details." % args.install_folder_path) logging.info("Install agent end.") if __name__ == '__main__': INSTALL_CONFIG = { "version": "2.3.3a", "serverPort": 21020, "exposeTime": 60, "engineInterval": 10, "loglevel": "INFO", "logfile": "/var/log/opendatatunnel/opendatatunnel.log", "myIp": None, "hostname": None, } log_file = "/var/log/opsagent_install.log" logging.basicConfig(filename=log_file, level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s') logging.getLogger().addHandler(logging.StreamHandler()) try: args = parse_args() pre_install_confirm(args) install_server(args) except Exception as ex: logging.error(ex) sys.exit(1)
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/293484.html