本文介紹網絡工程師常用的監控工具有Nagios和Zabbix。Nagios是一款開源的網絡監控工具,支持多種監控功能,如網絡和服務器監控、服務監控、資源使用監控等。Zabbix則是一款功能強大的工具,可擴展性好,...
轉載請注明以下內容:
來源:公眾號【網絡技術干貨圈】
作者:圈圈
ID:wljsghq
在現代網絡管理中,監控工具是確保網絡運行正常、快速發現和解決問題的關鍵。本文將詳細介紹網絡工程師常用的兩款監控工具:Nagios、Zabbix。每款工具都有其獨特的功能和使用場景,了解并掌握這些工具的使用對于網絡工程師而言至關重要。
Nagios
Nagios是一款開源的網絡監控工具,最初由Ethan Galstad在1999年發布。它的設計目的是監控系統的運行狀態,包括網絡設備、服務器、應用程序及服務,并在問題發生時提供告警。Nagios的核心優勢在于其靈活的插件系統,可以通過各種插件擴展其功能,適應不同的監控需求。
https://www.nagios.org/
主要功能
Nagios的主要功能包括:
網絡和服務器監控:監控主機的可達性和服務的運行狀態。
服務監控:支持HTTP、SMTP、POP3、NNTP、PING等常見協議的監控。
資源使用監控:監控CPU負載、內存使用、磁盤使用等系統資源。
告警機制:通過電子郵件、短信等方式發送告警通知,及時報告問題。
插件支持:通過自定義插件擴展監控功能,支持幾乎所有的應用程序、服務和系統。
安裝與配置
為了使用Nagios進行網絡監控,首先需要在服務器上安裝并配置Nagios。
在安裝Nagios之前,需要準備一臺運行Linux操作系統的服務器。本文以CentOS 7為例,介紹Nagios的安裝過程。
更新系統包:
sudo yum update
安裝必要的軟件包:
sudo yum install httpd php gcc glibc glibc-common gd gd-devel make net-snmp
啟動并配置HTTP服務器:
sudo systemctl start httpd
sudo systemctl enable httpd
下載并解壓Nagios Core源碼包:
cd /tmp
wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.6.tar.gz
tar -zxvf nagios-4.4.6.tar.gz
cd nagios-4.4.6
配置、編譯并安裝Nagios:
./configure
make all
sudo make install
sudo make install-init
sudo make install-commandmode
sudo make install-config
sudo make install-webconf
創建Nagios用戶和組:
sudo useradd nagios
sudo groupadd nagcmd
sudo usermod -a -G nagcmd nagios
sudo usermod -a -G nagcmd apache
下載并解壓Nagios插件:
cd /tmp
wget https://nagios-plugins.org/download/nagios-plugins-2.3.3.tar.gz
tar -zxvf nagios-plugins-2.3.3.tar.gz
cd nagios-plugins-2.3.3
配置、編譯并安裝Nagios插件:
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
sudo make install
啟動Nagios服務并配置為開機自啟動:
sudo systemctl start nagios
sudo systemctl enable nagios
確保Apache服務器也在運行:
sudo systemctl start httpd
sudo systemctl enable httpd
使用方法
Nagios的配置文件主要位于/usr/local/nagios/etc目錄下。通過編輯這些配置文件,可以定義需要監控的主機、服務和告警規則。
nagios.cfg:主配置文件,控制Nagios的全局設置。
objects/commands.cfg:命令定義文件,包含Nagios使用的檢查命令。
objects/contacts.cfg:聯系人定義文件,定義告警接收者。
objects/localhost.cfg:本地主機和服務定義文件,默認示例。
配置示例
編輯nagios.cfg,確保配置正確:
cfg_file=/usr/local/nagios/etc/objects/commands.cfg
cfg_file=/usr/local/nagios/etc/objects/contacts.cfg
cfg_file=/usr/local/nagios/etc/objects/localhost.cfg
添加監控對象
在objects/localhost.cfg文件中,添加需要監控的主機和服務。例如:
define host {
use linux-server
host_name webserver
alias My Web Server
address 192.168.1.1
}
define service {
use generic-service
host_name webserver
service_description HTTP
check_command check_http
}
檢查配置文件并重啟Nagios
檢查配置文件語法:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
如果沒有錯誤,重啟Nagios:
sudo systemctl restart nagios
實際案例
案例一:監控Web服務器
配置Nagios監控一臺Web服務器的運行狀態,并設置告警策略。當Web服務器無法訪問時,Nagios會發送郵件告警。
添加Web服務器的主機定義:
define host {
use linux-server
host_name webserver
alias My Web Server
address 192.168.1.1
}
添加HTTP服務的監控:
define service {
use generic-service
host_name webserver
service_description HTTP
check_command check_http
notification_interval 10 ; 每10分鐘通知一次
notification_options w,u,c,r ; 通知類型:warning, unknown, critical, recovery
}
配置聯系人以接收告警通知:
編輯contacts.cfg文件,添加聯系人信息:
define contact {
contact_name admin
alias Nagios Admin
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-service-by-email
host_notification_commands notify-host-by-email
email admin@example.com
}
配置告警命令:
編輯commands.cfg文件,定義告警命令:
define command {
command_name notify-service-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$\n" | /bin/mail -s "** $NOTIFICATIONTYPE$ alert - $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$
}
define command {
command_name notify-host-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nHost: $HOSTNAME$\nState: $HOSTSTATE$\n\nAddress: $HOSTADDRESS$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$HOSTOUTPUT$\n" | /bin/mail -s "** $NOTIFICATIONTYPE$ alert - $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$
}
案例二:監控數據庫服務器
配置Nagios監控一臺MySQL數據庫服務器的性能指標,包括CPU使用率、內存使用率、磁盤I/O、數據庫查詢性能等。當某項指標超出閾值時,發送告警郵件。
添加數據庫服務器的主機定義:
define host {
use linux-server
host_name dbserver
alias My Database Server
address 192.168.1.2
}
添加MySQL服務的監控:
首先,需要安裝MySQL監控插件,如check_mysql。假設插件已安裝并配置好,可以在Nagios中添加相應的服務定義:
define service {
use generic-service
host_name dbserver
service_description MySQL
check_command check_mysql
notification_interval 10
notification_options w,u,c,r
}
深入配置與高級功能
除了基本的安裝和配置,Nagios還提供了一些高級功能,可以更有效地幫助管理員監控和管理網絡系統。
使用NRPE插件進行遠程監控
NRPE(Nagios Remote Plugin Executor)插件允許Nagios服務器執行遠程主機上的插件,從而監控遠程主機的狀態。下面是配置NRPE插件的步驟:
在遠程主機上安裝NRPE和Nagios插件:
sudo yum install nrpe nagios-plugins-all
配置NRPE:
編輯/etc/nagios/nrpe.cfg文件,允許Nagios服務器訪問:
allowed_hosts=127.0.0.1,192.168.1.10
在NRPE配置文件中定義命令:
command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
啟動并啟用NRPE服務:
sudo systemctl start nrpe
sudo systemctl enable nrpe
在Nagios服務器上配置遠程主機和服務檢查:
在Nagios服務器的配置文件中添加遠程主機和服務定義:
define host {
use linux-server
host_name remote_host
alias Remote Host
address 192.168.1.20
}
define service {
use generic-service
host_name remote_host
service_description Users
check_command check_nrpe!check_users
}
define service {
use generic-service
host_name remote_host
service_description Load
check_command check_nrpe!check_load
}
使用Nagios XI進行高級管理
Nagios XI是Nagios的商業版本,提供了更加用戶友好的界面和一些高級功能,如自動發現、配置向導、報告和預測分析等。雖然Nagios XI是付費軟件,但對于大規模部署和需要更復雜管理功能的企業來說,它是一個非常值得考慮的選項。
安裝Nagios XI:
Nagios XI的安裝比Nagios Core稍微復雜,需要更多的系統資源。可以參考官方文檔進行安裝:https://www.nagios.com/products/nagios-xi/
使用自動發現功能:
Nagios XI提供自動發現功能,可以快速發現網絡中的設備并進行初始配置,大大減少手工配置的工作量。
配置向導:
配置向導幫助用戶快速配置常見的監控場景,如Web服務器、數據庫服務器、網絡設備等,極大地簡化了配置過程。
使用Nagios Fusion進行集中管理
Nagios Fusion是另一款Nagios的商業產品,允許用戶集中管理多個Nagios服務器。對于大型企業或多站點的網絡監控,Nagios Fusion提供了統一的視圖和集中管理功能。
安裝Nagios Fusion:
同樣,Nagios Fusion的安裝可以參考官方文檔:https://www.nagios.com/products/nagios-fusion/
添加多個Nagios服務器:
在Nagios Fusion的管理界面中,可以添加多個Nagios服務器,集中查看和管理它們的狀態。
統一視圖:
Nagios Fusion提供了統一的視圖,顯示所有連接的Nagios服務器的狀態,幫助管理員快速了解整個網絡的健康狀況。
以下是一個復雜的實際案例,展示了如何使用Nagios監控一個包含多種設備和服務的網絡環境。
某公司擁有一個大型網絡環境,包括多個Web服務器、數據庫服務器、文件服務器和網絡設備(如路由器、交換機)。公司希望使用Nagios監控所有這些設備,并在出現問題時及時通知相關管理員。
定義主機組:
為了更好地組織和管理主機,可以將相同類型的主機分組。例如,將所有Web服務器分為一個組:
define hostgroup {
hostgroup_name web-servers
alias Web Servers
members webserver1,webserver2,webserver3
}
define hostgroup {
hostgroup_name db-servers
alias Database Servers
members dbserver1,dbserver2
}
define hostgroup {
hostgroup_name file-servers
alias File Servers
members fileserver1,fileserver2
}
定義服務模板:
為了減少重復配置,可以定義一些服務模板。例如,定義一個HTTP服務模板:
define service {
name http-service
use generic-service
check_command check_http
notification_interval 30
notification_options w,u,c,r
register 0
}
應用模板到主機組:
將HTTP服務模板應用到所有Web服務器:
define service {
use http-service
hostgroup_name web-servers
service_description HTTP
}
添加特定服務監控:
為數據庫服務器添加MySQL監控:
define service {
use generic-service
hostgroup_name db-servers
service_description MySQL
check_command check_mysql
notification_interval 10
notification_options w,u,c,r
}
配置告警策略:
為每個主機組配置不同的告警策略。例如,為Web服務器配置郵件告警,為數據庫服務器配置短信告警:
define contact {
contact_name webadmin
alias Web Admin
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-service-by-email
host_notification_commands notify-host-by-email
email webadmin@example.com
}
define contact {
contact_name dbadmin
alias Database Admin
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-service-by-sms
host_notification_commands notify-host-by-sms
pager +1234567890
}
Zabbix
Zabbix是一款企業級開源監控解決方案,由Alexei Vladishev在1998年創建,并于2001年發布第一個版本。Zabbix的設計目標是提供全面的監控功能,涵蓋從硬件到軟件、從網絡設備到虛擬化環境的監控需求。Zabbix不僅支持實時監控,還能生成詳細的報告和圖表,幫助管理員進行性能分析和容量規劃。
Zabbix的主要功能包括:
自動發現:能夠自動發現網絡中的設備和服務,并生成相應的監控項。
多種監控方式:支持SNMP、JMX、IPMI、WMI、agent、agentless等多種監控方式。
高級告警:支持多種告警渠道,如電子郵件、短信、即時通訊工具等,具備靈活的告警策略和依賴關系管理。
可視化:提供豐富的圖表、儀表盤、報告等可視化工具,幫助管理員直觀地了解系統狀態。
數據存儲和趨勢分析:支持大規模數據存儲和長時間趨勢分析,方便進行歷史數據查詢和分析。
Zabbix安裝與配置
為了使用Zabbix進行網絡監控,首先需要在服務器上安裝并配置Zabbix。
在安裝Zabbix之前,需要準備一臺運行Linux操作系統的服務器。本文以CentOS 7為例,介紹Zabbix的安裝過程。
更新系統包:
sudo yum update
安裝MariaDB數據庫:
sudo yum install mariadb-server mariadb
sudo systemctl start mariadb
sudo systemctl enable mariadb
安裝Apache和PHP:
sudo yum install httpd php php-mysql php-gd php-xml php-bcmath php-mbstring
sudo systemctl start httpd
sudo systemctl enable httpd
添加Zabbix倉庫:
sudo rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/7/x86_64/zabbix-release-5.4-1.el7.noarch.rpm
sudo yum clean all
安裝Zabbix Server、Web前端和Agent:
sudo yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent
創建Zabbix數據庫和用戶:
mysql -uroot -p
CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
FLUSH PRIVILEGES;
exit;
導入初始架構和數據:
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
編輯/etc/zabbix/zabbix_server.conf文件,配置數據庫連接:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=password
啟動并啟用Zabbix Server和Agent:
sudo systemctl start zabbix-server
sudo systemctl enable zabbix-server
sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent
編輯Apache配置文件/etc/httpd/conf.d/zabbix.conf:
php_value date.timezone Europe/Riga
將Europe/Riga替換為實際的時區,例如Asia/Shanghai。
啟動并啟用Apache:
sudo systemctl restart httpd
通過Web瀏覽器訪問Zabbix前端安裝向導,完成安裝配置:
訪問//your-server-ip/zabbix,根據提示完成安裝向導的配置。
使用方法
完成安裝和基本配置后,可以開始使用Zabbix進行監控。
添加主機和監控項
添加主機:
在Zabbix前端界面,導航到“Configuration” -> “Hosts”,點擊“Create host”按鈕,添加需要監控的主機。配置主機名、群組、接口等信息。
創建監控項:
在主機配置頁面,導航到“Items”標簽,點擊“Create item”按鈕,添加需要監控的項。例如,監控CPU使用率:
Name: CPU Load
Type: Zabbix agent
Key: system.cpu.load[percpu,avg1]
Type of information: Numeric (float)
Units: %
創建觸發器:
在主機配置頁面,導航到“Triggers”標簽,點擊“Create trigger”按鈕,添加告警觸發條件。例如,CPU使用率超過80%時觸發告警:
Name: CPU load is too high
Expression: {hostname:system.cpu.load[percpu,avg1].last()} > 0.8
Severity: High
配置告警和通知
添加媒體類型:
導航到“Administration” -> “Media types”,添加新的媒體類型(如電子郵件、短信等)。
配置告警動作:
導航到“Configuration” -> “Actions”,點擊“Create action”按鈕,配置告警動作。例如,配置當CPU使用率超過閾值時發送電子郵件通知:
Name: CPU load high alert
Event source: Trigger
Condition: Trigger severity = "High"
Operation: Send message to user group "Zabbix administrators"
使用模板
Zabbix提供了許多預定義的模板,幫助快速配置常見的監控場景。可以在Zabbix前端界面導航到“Configuration” -> “Templates”,導入或創建模板,并應用到需要監控的主機上。
實際案例
案例一:監控Web服務器
配置Zabbix監控一臺Web服務器的運行狀態,包括HTTP響應時間、CPU使用率、內存使用率等。當某項指標超出閾值時,發送告警通知。
添加Web服務器主機:
在Zabbix前端添加Web服務器主機,配置基本信息。
創建HTTP監控項:
在主機配置頁面的“Items”標簽,創建HTTP監控項:
Name: HTTP response time
Type: HTTP agent
Key: web.page.get[example.com,,80]
Type of information: Numeric (float)
Units: s
創建觸發器:
在主機配置頁面的“Triggers”標簽,創建觸發器:
Name: HTTP response time is too high
Expression: {hostname:web.page.get[example.com,,80].last()} > 2
Severity: High
配置告警通知:
導航到“Configuration” -> “Actions”,創建告警動作,發送電子郵件通知管理員。
案例二:監控數據庫服務器
配置Zabbix監控一臺MySQL數據庫服務器的性能指標,包括CPU使用率、內存使用率、磁盤I/O、數據庫查詢性能等。當某項指標超出閾值時,發送告警通知。
添加數據庫服務器主機:
在Zabbix前端添加數據庫服務器主機,配置基本信息。
導入MySQL模板:
導航到“Configuration” -> “Templates”,導入MySQL監控模板。
應用模板到數據庫服務器:
在數據庫服務器主機配置頁面,導航到“Templates”標簽,選擇MySQL模板并應用。
創建自定義監控項和觸發器:
根據具體需求,創建額外的監控項和觸發器。例如,監控MySQL查詢時間:
Name: MySQL query time
Type: Zabbix agent
Key: mysql.query.time
Type of information: Numeric (float)
Units: s
創建觸發器:
Name: MySQL query time is too high
Expression: {hostname:mysql.query.time.last()} > 1
Severity: High
深入配置與高級功能
除了基本的安裝和配置,Zabbix還提供了一些高級功能,可以更有效地幫助管理員監控和管理網絡系統。
使用Zabbix代理和代理守護進程
Zabbix代理(Agent)和代理守護進程(Proxy)是Zabbix的重要組件,允許在被監控主機上收集數據,并將其發送到Zabbix服務器。
Zabbix代理:
Zabbix代理安裝在被監控主機上,直接從操作系統和應用程序收集數據,并將其發送到Zabbix服務器。以下是安裝和配置Zabbix代理的步驟:
在被監控主機上安裝Zabbix代理:
sudo yum install zabbix-agent
配置Zabbix代理:
編輯/etc/zabbix/zabbix_agentd.conf文件,配置服務器地址和主機名:
Server=your_zabbix_server_ip
Hostname=your_monitored_host_name
啟動并啟用Zabbix代理:
sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent
Zabbix代理守護進程:
Zabbix代理守護進程用于代理模式下,可以收集分布式網絡中的數據并匯總到一個或多個Zabbix服務器。這對于大規模分布式網絡環境尤為有用。
在代理服務器上安裝Zabbix代理守護進程:
sudo yum install zabbix-proxy-mysql
配置Zabbix代理守護進程:
編輯/etc/zabbix/zabbix_proxy.conf文件,配置數據庫和Zabbix服務器連接:
Server=your_zabbix_server_ip
Hostname=your_proxy_name
DBHost=localhost
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=password
啟動并啟用Zabbix代理守護進程:
sudo systemctl start zabbix-proxy
sudo systemctl enable zabbix-proxy
使用Zabbix API進行自動化
Zabbix提供了功能強大的API接口,允許用戶通過編程方式與Zabbix系統進行交互,進行自動化操作。例如,批量添加主機、監控項、觸發器等。
Zabbix API認證:
首先,需要獲取Zabbix API的認證令牌:
import requests
import json
url = "http://your_zabbix_server_ip/api_jsonrpc.php"
headers = {"Content-Type": "application/json"}
data = {
"jsonrpc": "2.0",
"method": "user.login",
"params": {
"user": "Admin",
"password": "zabbix"
},
"id": 1
}
response = requests.post(url, headers=headers, data=json.dumps(data))
auth_token = response.json()["result"]
通過API添加主機:
使用獲取的認證令牌,通過API添加主機:
data = {
"jsonrpc": "2.0",
"method": "host.create",
"params": {
"host": "New_Host",
"interfaces": [
{
"type": 1,
"main": 1,
"useip": 1,
"ip": "192.168.1.10",
"dns": "",
"port": "10050"
}
],
"groups": [
{
"groupid": "2"
}
]
},
"auth": auth_token,
"id": 2
}
response = requests.post(url, headers=headers, data=json.dumps(data))
print(response.json())
通過這些API調用,可以實現Zabbix系統的自動化配置和管理,極大地提高工作效率。
使用Zabbix的可視化和報表功能
Zabbix提供了豐富的可視化和報表功能,幫助管理員更好地分析和展示監控數據。
創建圖表:
在Zabbix前端界面,導航到“Monitoring” -> “Graphs”,選擇需要展示的主機和監控項,創建圖表。例如,展示CPU使用率、內存使用率等。
創建儀表盤:
導航到“Monitoring” -> “Dashboard”,創建自定義儀表盤,添加多個小組件(如圖表、地圖、報警視圖等),實時監控系統狀態。
生成報表:
導航到“Reports” -> “Availability Report”或“Triggers Top 100”,生成系統可用性報告或最頻繁觸發的告警報告,進行深入分析。
實際案例:監控復雜網絡環境
以下是一個復雜的實際案例,展示了如何使用Zabbix監控一個包含多種設備和服務的網絡環境。
案例背景
某公司擁有一個大型網絡環境,包括多個Web服務器、數據庫服務器、文件服務器和網絡設備(如路由器、交換機)。公司希望使用Zabbix監控所有這些設備,并在出現問題時及時通知相關管理員。
案例配置
定義主機組:
為了更好地組織和管理主機,可以將相同類型的主機分組。例如,將所有Web服務器分為一個組:
define hostgroup {
hostgroup_name web-servers
alias Web Servers
members webserver1,webserver2,webserver3
}
define hostgroup {
hostgroup_name db-servers
alias Database Servers
members dbserver1,dbserver2
}
define hostgroup {
hostgroup_name file-servers
alias File Servers
members fileserver1,fileserver2
}
定義監控模板:
為了減少重復配置,可以定義一些監控模板。例如,定義一個HTTP服務模板:
define service {
name http-service
use generic-service
check_command check_http
notification_interval 30
notification_options w,u,c,r
register 0
}
應用模板到主機組:
將HTTP服務模板應用到所有Web服務器:
define service {
use http-service
hostgroup_name web-servers
service_description HTTP
}
添加特定服務監控:
為數據庫服務器添加MySQL監控:
define service {
use generic-service
hostgroup_name db-servers
service_description MySQL
check_command check_mysql
notification_interval 10
notification_options w,u,c,r
}
配置告警策略:
為每個主機組配置不同的告警策略。例如,為Web服務器配置郵件告警,為數據庫服務器配置短信告警:
define contact {
contact_name webadmin
alias Web Admin
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-service-by-email
host_notification_commands notify-host-by-email
email webadmin@example.com
}
define contact {
contact_name dbadmin
alias Database Admin
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-service-by-sms
host_notification_commands notify-host-by-sms
pager +1234567890
}
來源:https://mp.weixin.qq.com/s/r2Y1yLxQYGv1LjJGib53hQ
來源:本文內容搜集或轉自各大網絡平臺,并已注明來源、出處,如果轉載侵犯您的版權或非授權發布,請聯系小編,我們會及時審核處理。
聲明:江蘇教育黃頁對文中觀點保持中立,對所包含內容的準確性、可靠性或者完整性不提供任何明示或暗示的保證,不對文章觀點負責,僅作分享之用,文章版權及插圖屬于原作者。
Copyright?2013-2024 JSedu114 All Rights Reserved. 江蘇教育信息綜合發布查詢平臺保留所有權利
蘇公網安備32010402000125
蘇ICP備14051488號-3技術支持:南京博盛藍睿網絡科技有限公司
南京思必達教育科技有限公司版權所有 百度統計