WO2018113514A1 - Cdn管理系统、方法及装置 - Google Patents

Cdn管理系统、方法及装置 Download PDF

Info

Publication number
WO2018113514A1
WO2018113514A1 PCT/CN2017/114579 CN2017114579W WO2018113514A1 WO 2018113514 A1 WO2018113514 A1 WO 2018113514A1 CN 2017114579 W CN2017114579 W CN 2017114579W WO 2018113514 A1 WO2018113514 A1 WO 2018113514A1
Authority
WO
WIPO (PCT)
Prior art keywords
management
task
address
instruction
service server
Prior art date
Application number
PCT/CN2017/114579
Other languages
English (en)
French (fr)
Inventor
杨晓颖
李琦
Original Assignee
腾讯科技(深圳)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Publication of WO2018113514A1 publication Critical patent/WO2018113514A1/zh
Priority to US16/353,150 priority Critical patent/US10812597B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/668Internet protocol [IP] address subnets

Definitions

  • the embodiments of the present application relate to the field of computer technologies, and in particular, to CDN management.
  • a Content Delivery Network is a technology that enables users to access Internet services provided by CDN nodes by setting CDN nodes throughout the network.
  • the internet service can be a video on demand service, a file download service, and the like.
  • the CDN system includes: a centrally located Internet Data Center (IDC) and a plurality of CDN nodes disposed at the edge of the network.
  • the IDC stores a full amount of content data
  • each CDN node stores partially accelerated content data, that is, the content data stored in the CDN node is a subset of the full amount of content data
  • the network edge usually refers to only the user. It is a network location with one hop distance, which is convenient for users to access the content data nearby.
  • the number of CDN nodes is large, and can reach several hundred or even thousands, and each CDN node includes dozens of service servers.
  • the management is mainly performed by manual field operations, for example, the normal management operations such as starting, shutting down, restarting, and reinstalling the operating system of the service server are performed by the manual site.
  • the normal management operations such as starting, shutting down, restarting, and reinstalling the operating system of the service server are performed by the manual site.
  • some CDN nodes are set in Beijing, some CDN nodes are set in Shenzhen, and some CDN nodes are set in the United States, and only manual on-site operations are performed on CDN nodes. The efficiency of management is very low.
  • the embodiment of the present application provides a CDN management system, method and device.
  • the technical solution is as follows:
  • a content distribution network CDN management system comprising a central controller and N CDN nodes, N being a positive integer; each of the CDN nodes comprising a node controller, at least one service server and a switch ;
  • the central controller is configured to receive a task call request, where the task call request is used to request remote management of the service server in the CDN node; wherein the management task is generated according to the task call request; Sending a task to the node controller;
  • the node controller is configured to receive the management task sent by the central controller; execute the management task; wherein the management task is generated by the central controller according to the task call request.
  • the node controller is configured to allocate a management IP address to the service server according to a dynamic host configuration protocol DHCP request sent by the service server, to the central controller.
  • the central controller is configured to receive the service server reported by the node controller
  • the management IP address is stored and stored; the central controller is configured to, when receiving the task invocation request, query a task instruction corresponding to the task invocation request and the management IP address of the service server, and generate and carry The task instruction and the management task of the management IP address.
  • a content distribution network CDN management method comprising:
  • the CDN node comprising a node controller and at least one service server;
  • the method before the receiving the task call request, further includes: receiving a management IP address of the service server reported by the node controller; the management IP address is the node
  • the controller allocates an address for the service server, where the management IP address is different from the IP address when the service server provides the service;
  • the task invoking the request to generate the management task includes: querying the task instruction corresponding to the task invocation request and the management IP address of the service server; and generating a management task carrying the task instruction and the management IP address.
  • the management IP address includes: an out-of-band management IP address and a deployment management IP address; and the generating a management task carrying the task instruction and the management IP address
  • the method includes: when the task instruction belongs to the first type of task instruction, generating a first management task that carries the first type of task instruction and the out-of-band management IP address; and the task instruction belongs to the second type of task instruction And generating a second management task that carries the second type of task instruction and the deployment management IP address, where the first type of task instruction includes: a power on command, a shutdown command, a restart instruction, and a PXE environment instruction, At least one of a PING detection instruction and an SSH detection instruction, where the PXE is a pre-boot environment when the operating system is installed; the second type of task instruction includes: an installation instruction of the operating system, and a password modification of the operating system At least one of an instruction and a customized instruction of the operating system.
  • the method further includes: receiving an execution result of the first management task reported by the node controller; And recording a task status of the first management task according to an execution result of the first management task.
  • the method further includes: receiving an execution result of the second management task reported by the node controller; And detecting, according to the execution result of the second management task, whether the operating system is deployed; if the operating system is not deployed, generating a next second management task according to the execution result of the second management task; The node controller sends the next second management task.
  • the receiving the task call request includes: receiving, by using a predetermined API interface, the task call request sent by the operation and maintenance client; and detecting whether the IP address of the operation and maintenance client belongs to The whitelist IP address; if the IP address of the operation and maintenance client belongs to the whitelist IP address, it is determined that the task call request is a valid task call request.
  • the method further includes: sending, by the CDN acceleration server, at least a predetermined time interval to the node controller, at least one of an image file, a first script file, and a second script file.
  • One of the image files is an image file for installing the operating system
  • the first script file is an image file for password modification
  • the second script file is for customizing the image file.
  • a content distribution network CDN management method for a node controller of a CDN node, the CDN node comprising the node controller and at least one service server, the method comprising: receiving a central controller a management task that is generated by the central controller according to a task invocation request for requesting remote management of the service server in the CDN node; performing the management task.
  • the method before receiving the management task sent by the central controller, the method further includes: receiving a dynamic host configuration protocol DHCP request sent by the service server; and according to the DHCP request, The service server allocates a management IP address, which is different from an IP address when the service server provides a service; and sends the management IP address of the service server to the central controller.
  • a dynamic host configuration protocol DHCP request sent by the service server
  • the service server allocates a management IP address, which is different from an IP address when the service server provides a service
  • the assigning a management IP address to the service server according to the DHCP request including: from the first IP network segment corresponding to the first virtual local area network, to the service The server allocates an outband management IP address; and allocates a deployment management IP address to the service server from the second IP network segment corresponding to the second virtual local area network; wherein the outband management IP address is used to perform the first type of task
  • the IP address of the command, the first type of task instruction includes: at least one of a boot command, a shutdown command, a restart command, an entry PXE environment command, a PING probe command, and an SSH probe command, where the PXE is an operating system installation a pre-boot environment;
  • the deployment management IP address is an IP address when the second type of task instruction is executed, and the second type of task instruction includes: an installation instruction of the operating system, a password modification instruction of the operating system And at least one of the customized instructions of the operating system.
  • the management task includes: a first management task that carries the first type of task instruction and the out-of-band management IP address; and the performing the management task, The method includes: parsing the first type of task instruction and the out-of-band management IP address from the first management task; performing the first management according to the first type of task instruction and the out-of-band management IP address task.
  • the method further includes: directly reading an execution result of the first management task; and sending the central controller to the central controller Sending an execution result of the first management task, where the central controller is configured to record a task status of the first management task according to an execution result of the first management task.
  • the management task includes: a second management task that carries the second type of task instruction and the deployment management IP address; and the performing the management task, including Resolving the second type of task instruction and the deployment management IP address from the second management task; performing the second management task according to the second type of task instruction and the deployment management IP address;
  • the second type of task instruction is an installation instruction of the operating system
  • the pre-stored image file and the installation instruction are sent to the service server according to the deployment management IP address, and the service server is configured to be installed according to the installation.
  • An instruction to install the image file as the operating system When the second type of task instruction is the password modification instruction of the operating system, the pre-stored first script file and the password modification instruction are sent to the service server according to the deployment management IP address, and the service server is configured to use The password modification instruction runs the first script file, where the first script file is a script file for performing password modification; when the second type of task instruction is a customized instruction of the operating system, according to the The deployment management IP address sends a pre-stored second script file and the customization instruction to the service server, where the service server is configured to run the second script file according to the customized instruction, the second script file Is a script file used to customize the operating system.
  • the method further includes: receiving an execution result of the second type of task instruction sent by the service server; The execution result of the second type of task instruction sends the execution result of the second management task to the central controller; receiving the next second management task sent by the central controller, the next second management task
  • the central controller detects that the operating system is not deployed according to the execution result, the central controller generates and sends according to the execution result.
  • the method further includes: requesting, by the predetermined time interval, the detection, by the central controller, whether the image file, the first script file, and the second script file are updated; When the at least one of the image file, the first script file, and the second script file is updated, requesting, by the central controller, the updated image file, the first script file, and the second At least one of the script files; wherein the image file is an image file for installing the operating system, the first script file is an image file for password modification, and the second script file is used Customize the image file of the operating system.
  • a content distribution network CDN management apparatus comprising:
  • a receiving module configured to receive a task invocation request, where the task invoking request is used to request remote management of a service server in a CDN node, where the CDN node includes a node controller and at least one service server, and a generating module is configured to And the sending module is configured to send the management task generated by the generating module to the node controller.
  • the device further includes: the receiving module, configured to receive a management IP address of the service server reported by the node controller; the management IP address is The node controller receives an address assigned to the service server after receiving a dynamic host configuration protocol DHCP request sent by the service server, where the management IP address is different from an IP address when the service server provides a service;
  • the module includes: a query unit, configured to query a task instruction corresponding to the task call request received by the receiving module, and the management IP address of the service server; and a generating unit, configured to generate the query unit The task instruction and the management task of the management IP address are queried.
  • the management IP address includes: an outband management IP address and a deployment management IP address; the generating unit is further configured to: when the task instruction belongs to the first type of task instruction Generating a first management task carrying the first type of task instruction and the out-of-band management IP address; and when the task instruction belongs to the second type of task instruction, generating the second type of task instruction and The second management task of the management management IP address, wherein the first type of task instruction comprises: at least one of a boot command, a shutdown command, a restart command, an entry PXE environment command, a PING probe command, and an SSH probe command, The PXE is a pre-boot environment when the operating system is installed; The second type of task instruction includes at least one of an installation instruction of the operating system, a password modification instruction of the operating system, and a customized instruction of the operating system.
  • the device further includes: the receiving module, configured to receive an execution result of the first management task reported by the node controller, and a recording module, configured to: And recording a task status of the first management task according to an execution result of the first management task received by the receiving module.
  • the device further includes: the receiving module, configured to receive an execution result of the second management task reported by the node controller, and a detecting module, configured to: Determining whether the operating system is deployed according to the execution result of the second management task received by the receiving module; the generating module, configured to receive, according to the receiving module, if the operating system is not deployed The execution result of the second management task generates a next second management task; the sending module is further configured to send the next second management task generated by the generating module to the node controller.
  • the receiving module includes: a receiving unit, configured to receive, by using a predetermined API interface, the task call request sent by an operation and maintenance client; and a detecting unit, configured to detect the Whether the IP address of the operation and maintenance client belongs to the whitelist IP address, and the determining unit is configured to: if the detecting unit detects that the IP address of the operation and maintenance client belongs to the whitelist IP address, determine that the task invocation request is valid. The task calls the request.
  • the sending module is further configured to send the image file, the first script file, and the second script file to the node controller through the CDN acceleration server every predetermined time interval.
  • the image file is an image file for installing the operating system
  • the first script file is an image file for password modification
  • the second script file is for customization An image file of the operating system.
  • a content distribution network CDN management apparatus for a node controller of a CDN node, the CDN node includes the node controller and at least one service server, and the apparatus includes: a receiving module, Receiving a management task sent by the central controller, the management task is generated by the central controller according to a task call request, and the task call request is used to request remote management of the service server in the CDN node.
  • An execution module configured to execute the management task received by the receiving module.
  • the device further includes: the receiving module, configured to receive a dynamic host configuration protocol DHCP request sent by the service server, and an allocation module, configured to receive according to the The DHCP request received by the module allocates a management IP address to the service server, where the management IP address is different from an IP address when the service server provides a service; and a sending module, configured to send the allocation to the central controller The management IP address of the service server assigned by the module.
  • the receiving module configured to receive a dynamic host configuration protocol DHCP request sent by the service server
  • an allocation module configured to receive according to the The DHCP request received by the module allocates a management IP address to the service server, where the management IP address is different from an IP address when the service server provides a service
  • a sending module configured to send the allocation to the central controller The management IP address of the service server assigned by the module.
  • the allocating module includes: a first allocating unit, configured to allocate outband management to the service server from a first IP network segment corresponding to the first virtual local area network a second allocation unit, configured to allocate a deployment management IP address to the service server from a second IP network segment corresponding to the second virtual local area network, where the out-of-band management IP address is used to perform the first
  • the IP address of the class task instruction, the first type of task instruction includes at least one of a boot command, a shutdown command, a restart command, an entry PXE environment command, a PING probe command, and an SSH probe command
  • the PXE is an installation operation.
  • the address is an IP address when the second type of task instruction is executed, and the second type of task instruction includes: an installation instruction of the operating system, a password modification instruction of the operating system, and a customized instruction of the operating system. At least one of them.
  • the management task includes: a first management task that carries the first type of task instruction and the out-of-band management IP address;
  • the execution module includes: a unit, configured to parse the first type of task instruction and the out-of-band management IP address from the first management task, and an execution unit, configured to parse the first type of task instruction according to the parsing unit Performing the first management task with the out-of-band management IP address.
  • the device further includes: a reading module, configured to directly read an execution result of the first management task; and the sending module is further configured to The controller sends an execution result of the first management task read by the reading module, and the central controller is configured to record a task state of the first management task according to an execution result of the first management task.
  • the management task includes: a second management task that carries the second type of task instruction and the deployment management IP address;
  • the execution module includes: The parsing unit is further configured to parse the second type of task instruction and the deployment management IP address from the second management task, where the execution unit is further configured to perform the parsing according to the parsing unit The second type of task instruction and the deployment management IP address perform the second management task;
  • the execution unit is further configured to: when the second type of task instruction is an installation instruction of the operating system, according to the deployment management Sending, by the IP address, the pre-stored image file and the installation instruction to the service server, where the service server is configured to install the image file as the operating system according to the installation instruction;
  • the execution unit is further configured to When the second type of task instruction is a password modification instruction of the operating system, the pre-stored first script file and the server are sent to the service server according to the deployment management IP address.
  • the password modification instruction the service server is configured to run the first script file according to the password modification instruction, where the first script file is a script file for performing password modification; the execution unit is further configured to When the second type of task instruction is a customized instruction of the operating system, the pre-stored second script file and the customized instruction are sent to the service server according to the deployment management IP address, where the service server is used.
  • the second script file is run according to the customized instruction, the second script file being a script file for customizing the operating system.
  • the receiving module is further configured to receive an execution result of the second type of task instruction sent by the service server, where the sending module is further configured to: The execution result of the second type of task instruction received by the receiving module sends the execution result of the second management task to the central controller; the receiving module is further configured to receive the next one sent by the central controller
  • the second management task is that the central management controller generates and sends the operating system according to the execution result when it is detected that the operating system is not deployed according to the execution result.
  • the device further includes: a detecting module, configured to request, at the predetermined time interval, the detection, by the central controller, whether the image file, the first script file, and the second script file are And an obtaining module, configured to: when the detecting module detects at least one of the image file, the first script file, and the second script file, requesting the central controller to acquire an update At least one of the image file, the first script file, and the second script file; wherein the image file is an image file for installing the operating system, and the first script file is used For the image file to be modified by the password, the second script file is used for Customize the image file of the operating system.
  • a detecting module configured to request, at the predetermined time interval, the detection, by the central controller, whether the image file, the first script file, and the second script file are
  • an obtaining module configured to: when the detecting module detects at least one of the image file, the first script file, and the second script file, requesting the central controller to acquire an update At least one of the image file, the
  • the application provides a server, the server includes a processor and a memory: the memory is configured to store program code, and the program code is transmitted to the processor; The instructions in the program code perform the content distribution network CDN management method according to any one of claims 3-17.
  • the present application provides a computer readable storage medium for storing program code for performing the method of any one of the second and third aspects.
  • the present application provides a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of any one of the second and third aspects.
  • the central controller receives a task call request for remotely managing the service server in the CDN node, generates a management task according to the task call request, and sends the management task to the node controller, and the node controller executes the management task.
  • the central controller remotely manages the service server through the task call request, without manual field operation, so that when the number of CDN nodes is large and the distribution position is relatively dispersed, the pair can be improved. Management efficiency of CDN nodes.
  • FIG. 1A is a schematic diagram of a CDN management system provided by an exemplary embodiment of the present application.
  • FIG. 1B is a schematic structural diagram of a service server provided in an embodiment of the present application.
  • FIG. 2 is a flowchart of a method for managing a CDN provided in an embodiment of the present application
  • 3A is a flowchart of a method for managing a CDN according to another embodiment of the present application.
  • FIG. 3B is a flowchart of a method for managing a CDN provided in still another embodiment of the present application.
  • 3C is a flowchart of a method for managing a CDN provided in still another embodiment of the present application.
  • FIG. 3D is a schematic diagram of an operating system deployment provided in an embodiment of the present application.
  • FIG. 3E is a schematic diagram of a CDN management method provided in an embodiment of the present application.
  • FIG. 4 is a block diagram showing the structure of a CDN management apparatus provided in an embodiment of the present application.
  • FIG. 5 is a structural block diagram of a CDN management apparatus provided in another embodiment of the present application.
  • FIG. 6 is a schematic structural diagram of a server provided in an embodiment of the present application.
  • FIG. 1A is a schematic diagram of a CDN management system provided by an exemplary embodiment of the present application, as shown in FIG. 1A,
  • the CDN management system 100 can include a central controller 110 and N CDN nodes 120, N being a positive integer.
  • the central controller 110 can include an application programming interface (API) module 111 and a processing module 112.
  • the API module 111 can be provided with a preset API interface for remote management, and the processing module 112 has a management and scheduling capability for managing tasks.
  • the CDN management system 100 may further include an operation and maintenance client 130, which may be a foreground client used by an operation and maintenance personnel.
  • the API module 111 can also be configured to receive the task call request sent by the operation and maintenance client 130, and forward the received task call request to the processing module 112 after being parsed.
  • the task invocation request may be sent by the operation and maintenance personnel to the API module 111 through the operation and maintenance client 130, or may be generated by the central controller 110 executing the script file.
  • the CDN management system 100 may further include an IDC 140 in which a full amount of service data, such as online video data, is stored.
  • a full amount of service data such as online video data
  • Stored in the CDN node 120 is a subset of the traffic data stored in the IDC 140, such as hotspot video data.
  • at least one IDC 140 is included in the CDN management system 100.
  • the central controller 110 may be disposed on any of the IDCs 140, or may be disposed on other devices, or may be configured as a single device. This embodiment does not limit the deployment location of the central controller 110.
  • the number of central controllers 110 is allowed to exceed one, and each central controller 110 can be placed at a different location.
  • the CDN management system 100 may further include: a load balancing device 160.
  • the load balancing device 160 can be used to distribute task invocation requests to the various central controllers 110. For example, when the load balancing device 160 forwards the task call request, if it detects that a central controller 110 is processing the task call request, the task call request that needs to be forwarded may be forwarded to the other central controller 110 in the idle state.
  • Each CDN node 120 can include a node controller 121, at least one service server 122, and a switch 123.
  • the node controller 121 and each of the service servers 122 can be connected to the switch 123, and the node controller 121 can also be logically connected to the central controller 110 through the switch 123.
  • the node controller 121 can be a background program running on any one of the service servers 122.
  • the node controller 121 can be used to manage individual service servers 122 belonging to the CDN node 120. For example, if one CDN node 120 includes 50 service servers 122, one of which has a node controller 121 installed thereon, the service server 122 installed with the node controller 121 can manage the remaining 49 service servers 122.
  • the service server 122 to which the node controller 121 is installed may have the capability of executing a service in addition to the capability of managing the service server 122.
  • each of the CDN nodes 120 may be allowed to set up two active and standby node controllers 121.
  • the standby node controls The processor 121 does not need to operate; when the primary node controller 121 fails to operate normally, the primary node controller 121 and the standby node controller 121 exchange, and the standby node controller 121 provides services to the CDN node 120.
  • the central controller 110 and the node controller 121 use networks of different operators.
  • the CDN management system 100 may further include a CDN acceleration server 150.
  • the CDN acceleration server 150 can be used for the text between the central controller 110 and the node controller 121 across the carrier network.
  • the piece of transmission provides CDN acceleration services.
  • the CDN management system 100 can perform boot, shutdown, restart, and enter the preboot execute environment (PXE) on the service server 122 through the outband network.
  • the outband network may be a dedicated network channel independent of the service network.
  • the service network may also be referred to as an inband network, corresponding to the outband network.
  • the CDN management system 100 transmits the power-on, power-off, restart, and PXE management tasks of the service server 122 through the out-of-band network, and may not affect the services on the in-band network.
  • the architecture of the service server 122 may include: a Baseboard Management Controller (BMC) 122a, a Network Interface Card (NIC) 122b, a bus controller 122c, a processor 122d, and a memory 122e. .
  • BMC Baseboard Management Controller
  • NIC Network Interface Card
  • the BMC 122a can be a single-chip microcomputer capable of providing out-of-band management functions for the service server 122.
  • the BMC 122a has an independent network port 122f for connecting to an out-of-band network.
  • the NIC 122b has a shared network port 122g for connecting to the service network. Since the outband network and the service network are independent of each other, when different network ports are used, an outband switch is required to set up the outband network, thereby increasing the number of switches 123, resulting in an increase in cost and network complexity.
  • the service server 122 can enable the sideband mode, so that the BMC 122a can use the shared network port 122g of the NIC 122b, so that the outband network and the service network can share one network port, thereby implementing an outband network. Physical reuse with the business network.
  • the preset operations may include:
  • IPMI Intelligent Platform Management Interface
  • BIOS Basic Input Output System
  • the technician allocates a virtual local area network (VLAN) label and an IP address to the shared network port 122g so that the data sent from the shared network port 122g can be separated from the service network.
  • VLAN virtual local area network
  • the technician configures a VLAN 100 tag for the BMC 122a.
  • the service server 122 can send data carrying the VLAN 100 label, and the VLAN 100 label can be used to indicate that the data is transmitted through the outband network.
  • technicians can configure a VLAN 10 tag to distinguish other tasks that are transmitted over the service network.
  • the switch 123 enables the 802.1q (Virtual Local Area Network) protocol and configures the same VLAN tag as the shared network port 122g.
  • the switch 123 is configured with an out-of-band (labeled VLAN 100) network transmission operating system deployment (labeled as VLAN 10) Dynamic Host Configuration Protocol (DHCP) relay agent (relay), the DHCP relay can be configured
  • VLAN 100 network transmission operating system deployment
  • DHCP Dynamic Host Configuration Protocol
  • the node controller 121 that points to the CDN node 120 where the service server 122 is located is used to forward the DHCP request sent by the service server 122 to the node controller 121.
  • the switch 123 port is configured in trunk mode, and the switch 123 allows data to pass through multiple VLANs in trunk mode and allows communication between VLAN 10 and VLAN 100.
  • the CDN management system 100 can request the service in the CDN node 120 according to the task call sent by the operation and maintenance client 130 through the central controller 110 and the node controller 121.
  • the server 122 performs remote management. For the specific implementation, refer to the steps in FIG. 2 .
  • FIG. 2 is a flowchart of a method of a CDN management method provided in an embodiment of the present application.
  • the CDN management method can be applied to the CDN management system 100 shown in FIG. 1A.
  • the CDN management method may include:
  • step 201 the central controller receives the task invocation request.
  • the task invocation request may be used to request remote management of a service server in a CDN node, wherein the CDN node may include a node controller and at least one service server.
  • Remote management can refer to operations such as booting, shutting down, restarting, and operating system deployment from a remotely controlled service server in a CDN node.
  • the task invocation request may be sent by the operation and maintenance personnel through the operation and maintenance client, or may be generated by the central controller by executing the script file.
  • the task invocation request may include at least an identifier of the CDN node and an identifier of the service server.
  • the identifier of the CDN node can be used to determine which CDN node the node controller that the central controller needs to control is in.
  • the identifier of the service server may be used to indicate a service server that needs to be remotely managed.
  • the identifier of the service server may include the serial number of the service server.
  • Step 202 The central controller generates a management task according to the task call request.
  • the central controller can find the corresponding node controller, the task instruction, and the management IP address of the service server according to the task call request. Among them, the central controller can also find parameters such as the type of management task, default username and password. The central controller can then package the task instructions, the management IP address of the service server, the type of management task, the default username and password, etc. into management tasks.
  • step 203 the central controller sends the management task to the node controller.
  • the central controller may send the packaged management task to the node controller corresponding to the task call request.
  • step 204 the node controller receives the management task sent by the central controller.
  • the node controller After receiving the management task sent by the central controller, the node controller can parse the management task and obtain the task instruction in the management task and parameters related to the management task, such as the management IP address of the service server.
  • step 205 the node controller performs a management task.
  • the node controller can perform management tasks based on the resolved task instructions and parameters related to the management tasks.
  • the node controller when performing some management tasks, needs to transmit an image file or a script file to the service server corresponding to the task call request, and then can send an execution instruction to the service server to control the service server to execute.
  • the received image file or script file for example, the management task performed by the node controller can Install tasks for the operating system.
  • the CDN management method may first receive a task invocation request through a central controller, where the task invocation request may be used to request remote management of a service server in a CDN node. Then, a management task can be generated according to the task call request, and the management task is sent to the node controller. Then, after receiving the management task, the node controller can execute the management task. It can be seen that, in the embodiment of the present application, when the management operation is performed on the service server, the central controller performs remote management on the service server through the task call request, without manual field operation, thereby making the number of CDN nodes large and When the distribution locations are scattered, the management efficiency of the CDN nodes can be improved.
  • the node controller may allocate an outband management IP address and a deployment management IP address to the service server, and report the allocated outband management IP address and the deployment management IP address to the central controller, so that The central controller can store and manage the outband management IP address and deployment management IP address. For details, see the steps in Figure 3A.
  • FIG. 3A is a flowchart of a method for a CDN management method provided in another embodiment of the present application.
  • the CDN management method is exemplified in the CDN management system 100 shown in FIG. 1A.
  • the CDN management method may include:
  • step 301 the service server sends a DHCP request to the node controller.
  • the DHCP relay is configured to point to the node controller of the CDN node where the service server is located, and is used to forward the DHCP request sent by the service server, because the switch connected to the service server is preconfigured with a DHCP relay deployed by the operating system for the outband network transmission. Give the node controller.
  • the service server After the service server is powered on, it will automatically send a DHCP request. After the DHCP request passes through the DHCP relay mechanism of the switch, it can be forwarded to the node controller in the CDN node where the service server is located.
  • the DHCP request sent by the service server may include an identifier of the service server, for example, a serial number of the service server.
  • Step 302 The node controller receives the DHCP request sent by the service server.
  • the DHCP request includes the identifier of the service server, for example, the serial number of the service server.
  • Step 303 The node controller allocates a management IP address to the service server according to the DHCP request.
  • the management IP address is different from the IP address when the service server provides the service.
  • the node controller can assign an outband management IP address or a deployment management IP address.
  • step 303 can include the following steps:
  • the node controller allocates an outband management IP address to the service server from the first IP network segment corresponding to the first virtual local area network.
  • the first IP network segment is an out-of-band dedicated IP network segment, such as 192.168.0.0/24.
  • the assigned outband management IP address can be 192.168.0.5/24.
  • the out-of-band management IP address may be an IP address used to execute the first type of task instruction, wherein the first type of task instruction may include: a power-on instruction, a shutdown instruction, a restart instruction, an entry PXE instruction, a PING detection instruction, and an SSH detection instruction. At least one of them.
  • the node controller allocates deployment management to the service server from the second IP network segment corresponding to the second virtual local area network. IP address.
  • the second IP network segment is deployed with a dedicated IP network segment, such as 192.168.1.0/24.
  • the assigned deployment management IP address can be 192.168.1.4/24.
  • the deployment management IP address may be an IP address used to execute the second type of task instruction, where the second type of task instruction may include: an operating system installation instruction, an operating system password modification instruction, and an operating system customization instruction. At least one.
  • step 304 the node controller sends the management server's management IP address to the central controller.
  • the node controller can send an out-of-band management IP address to the central controller.
  • the sending format of the outband management IP address may be any one of the following: sending the identifier of the service server + the outband management IP address of the service server, or the identifier of the CDN node + the identifier of the service server + the service server.
  • the format of the outband management IP address is sent, or it is sent in the format of the node controller ID + service server ID + service server's outband management IP address.
  • the sending management IP address can be sent in the format of the CDN node ID + the deployment management IP address of the service server, or in the format of the node controller ID + the deployment management IP address of the service server.
  • Step 305 The central controller receives the management IP address of the service server reported by the node controller.
  • the central controller After receiving the management IP address of the service server reported by the node controller, the central controller can store the management IP address of the service server.
  • the central controller when the management IP address reported by the node controller is an outband management IP address, the central controller needs to store the correspondence between the outband management IP address and the identity of the service server; when the node controller reports the management IP address When the address is the deployment management IP address, the central controller can store the deployment management IP address of the service server, and does not necessarily store the identity of the service server.
  • the node controller in order to update the management IP address stored in the central controller in time, the node controller periodically reports the management IP address of the service server to the central controller for storage management, for example, once a day.
  • the central controller in step 304 and step 305 may refer to a processing module of the central controller.
  • the management task requested by the task call request may include a first management task and a second management task, wherein the first management task may include a first type of task instruction and an out-of-band management IP address, and the second management task may include a second class. Task instructions and deployment management IP address.
  • the management task is the first management task, refer to the step shown in FIG. 3B.
  • the management task is the second management task, refer to the step shown in FIG. 3C.
  • FIG. 3B is a flowchart of a method for a CDN management method provided in still another embodiment of the present application.
  • the CDN management method is exemplified in the CDN management system 100 shown in FIG. 1A.
  • the CDN management method includes:
  • Step 306 The API module receives a task call request sent by the operation and maintenance client.
  • the central controller may include an API module and a processing module, and the API module may be provided with a preset API interface for remote management.
  • the task invocation request may be sent by the operation and maintenance personnel to the API module through the operation and maintenance client, or the script file may be executed by the central controller to generate a task invocation request.
  • Step 307 The API module detects whether the IP address of the operation and maintenance client belongs to a whitelist IP address.
  • the whitelist IP address may be a pre-stored IP address of an operation and maintenance client having an operation authority for the central controller. To check whether the operation and maintenance client has the right to operate the central controller, you need to check whether the IP address of the operation and maintenance client belongs to the whitelist IP address, so as to determine whether the central controller needs to respond to the task call request sent by the operation and maintenance client. .
  • Step 308 If the API module detects that the IP address of the operation and maintenance client belongs to the whitelist IP address, the API module determines that the task call request is a valid task call request.
  • the IP address of the operation and maintenance client belongs to the whitelist IP address, it indicates that the operation and maintenance client has the operation authority of the central controller, so that the task call request sent by the operation and maintenance client can be determined as a valid task call request.
  • step 307 when the API module detects that the IP address of the operation and maintenance client does not belong to the whitelist IP address, the API module may determine that the task call request is an invalid task call request, and the central controller does not invoke the task request. response.
  • step 309 the API module sends a task invocation request to the processing module.
  • the API module can parse the valid task invocation request and send it to the processing module of the central controller. If the task call request is an invalid task call request, the API module does not forward the task call request.
  • Step 310 The processing module queries the task instruction corresponding to the task invocation request and the management IP address of the service server.
  • the processing module may pre-store the task instructions corresponding to the various task invocation requests, such as the power-on command corresponding to the power-on, the shutdown command corresponding to the shutdown, the restart command corresponding to the restart, or the installation instruction and the password modification command of the operating system deployment corresponding to the operating system. , customized instructions, etc.
  • the processing module of the central controller pre-stores the identifier of the service server and the corresponding management IP address, and the identifier of the corresponding node controller or the corresponding CDN node. Therefore, the processing module can find the management IP address of the corresponding service server and the identifier of the CDN node or the node controller according to the identifier of the service server parsed by the API module.
  • Step 311 The processing module generates a first management task that carries the first type of task instruction and the out-of-band management IP address.
  • the first type of task instruction may include at least one of a boot command, a shutdown command, a restart command, an entry PXE command, a PING probe command, and an SSH probe command.
  • the PING probe can be used to test whether the network is connected.
  • SSH probe can be used to test whether it can log in to the service server. It should be noted that, when the first management task is generated, the processing module generates a task state corresponding to the first management task.
  • Step 312 The processing module sends the first management task to the node controller.
  • Step 313 The node controller receives the first management task sent by the processing module.
  • step 314 the node controller parses the first type of task instruction and the outband management IP address from the first management task.
  • Step 315 the node controller performs the first management task according to the first type of task instruction and the outband management IP address.
  • step 316 the node controller directly reads the execution result of the first management task.
  • the node controller can execute the first management task by running a script or a tool, and after execution, can directly read the execution result of the script or the tool.
  • the execution result may include a result of whether the first management task is successfully executed, if If the first management task is successfully executed, the execution result may further include the output content after the successful execution, and the output content may be, for example, the display content after the booting.
  • Step 317 The node controller sends an execution result of the first management task to the processing module.
  • Step 318 The processing module receives an execution result of the first management task reported by the node controller.
  • Step 319 The processing module records the task status of the first management task according to the execution result of the first management task.
  • the processing status of the first management task is stored in the processing module, when the processing module records the task status of the first management task, the original task status modification may be replaced with Successfully executed.
  • the service server with the serial number 00112233 is stored in the central controller, and the task status of the original shutdown task of the service server is not executed; then, after the first management task is performed by the node controller, the serial number can be The service server of the 00112233 is shut down; the node controller can report the execution result of the first management task to the processing module of the central controller, and the processing module of the central controller can perform the task of the service server with the serial number 00112233 The status is changed to have been successfully shut down.
  • the node controller After the API module of the central controller receives the task invocation request of the first management task, the node controller is responsible for executing the first management task, and the processing module of the central controller is responsible for recording the task state performed by the first management task. After executing the first management task, the node controller may feed back the execution result to the processing module of the central controller, and the processing module of the central controller stores and records the execution result.
  • FIG. 3C is a flowchart of a method for a CDN management method provided in still another embodiment of the present application.
  • the CDN management method is exemplified in the CDN management system 100 shown in FIG. 1A.
  • the CDN management method includes:
  • Step 320 The API module receives a task call request sent by the operation and maintenance client.
  • Step 321 The API module detects whether the IP address of the operation and maintenance client belongs to a whitelist IP address.
  • Step 322 If the API module detects that the IP address of the operation and maintenance client belongs to the whitelist IP address, the API module determines that the task call request is a valid task call request.
  • step 323 the API module sends a task invocation request to the processing module.
  • Step 324 The processing module queries the task instruction corresponding to the task invocation request and the management IP address of the service server.
  • Steps 320 to 324 are similar to steps 306 to 310, and are not described here.
  • Step 325 The processing module generates a second management task that carries the second type of task instruction and the deployment management IP address.
  • the second type of task instruction may include at least one of an installation instruction of an operating system, a password modification instruction of an operating system, and a customized instruction of an operating system.
  • the processing module may generate a task status corresponding to the second management task when generating the second management task.
  • step 326 the processing module sends the second management task to the node controller.
  • Step 327 the node controller receives the second management task sent by the processing module.
  • Step 328 the node controller parses the second type of task instruction and the deployment management IP address from the second management task.
  • step 329 the node controller performs the second management task according to the second type of task instruction and the deployment management IP address.
  • the node controller may transmit the script file to the service server and serve the service.
  • the server sends an execution instruction of the script file, so that the business server corresponding to the deployment management IP address can be controlled to run the script file.
  • Step 330 When the second type of task instruction is an installation instruction of the operating system, the node controller sends the pre-stored image file and the installation instruction to the service server according to the deployment management IP address.
  • the image file may include at least one of an image file of a PXE, an image file of a mini operating system (minios), and an image file of a business system.
  • An image file is pre-stored in the node controller. If the node controller needs to install the image file with the service server corresponding to the deployment management IP address in the second management task during the execution of the second management task, The stored image file is sent to the corresponding service server, and the installation instruction of the image file is sent to the service server, so that the service server can be controlled to install the image file.
  • the node controller may transmit the PXE image file to the corresponding service server, and send the installation instruction of the PXE image file. Therefore, the corresponding business server can be controlled to install the PXE image file; when the node controller performs the second management task, the corresponding service server needs to install the minios, the node controller can transmit the mirror file of the minios to the corresponding The service server sends an installation command of the image file of the minios, so as to control the image file of the minios image of the corresponding service server; when the node controller performs the second management task, the corresponding service server needs to be installed with the image of the service system.
  • the file controller can transmit the image file of the service system to the corresponding service server, and send an installation instruction of the image file of the service system, thereby controlling the image file of the corresponding business server installation service system.
  • step 331 the service server installs the image file as an operating system according to the installation instruction.
  • the service server installs the image file as the operating system.
  • the image file of the PXE is installed as PXE
  • the image file of the minios is installed as the minios
  • the image file of the service system is installed as at least one of the service systems.
  • Step 332 When the second type of task instruction is a password modification instruction of the operating system, the node controller sends the pre-stored first script file and the password modification instruction to the service server according to the deployment management IP address.
  • the first script file may be a script file for password modification, and the first script file may include a username and password of the instruction.
  • step 333 the service server runs the first script file according to the password modification instruction.
  • the business server can modify the default username and password to the specified username and password by running the first script file.
  • Step 334 When the second type of task instruction is a customized instruction of the operating system, the node controller sends the pre-stored second script file and the customized instruction to the service server according to the deployment management IP address.
  • the second script file may be a script file for customizing the operating system, and the second script file may include an installation package of the predetermined application.
  • customization of the operating system may include installing certain predetermined applications.
  • step 335 the service server runs the second script file according to the customized instruction.
  • the business server can install the predetermined application by running a second script file.
  • step 336 the service server sends the execution result of the second type of task instruction to the node controller.
  • the service server may return the execution result of the second type of task instruction to the node controller.
  • the execution result of the business server for the second type of task instruction usually only includes the execution result of one step.
  • the service server may return the result that the operating system has been successfully installed to the node controller; for example, in step 333, after running the first script file, the service server may The node controller returns a result that the first script file has been successfully run; for example, in step 335, after running the second script file, the business server may return to the node controller the result that the second script file has been successfully run.
  • Step 337 The node controller sends the execution result of the second management task to the processing module according to the execution result of the second type of task instruction.
  • the execution result of the second management task sent by the node controller to the processing module of the central controller also includes only the execution result of one step.
  • the execution result of the second management task may include a result of the successful installation by the operating system; for example, when the second management task includes a password modification instruction of the operating system, The execution result of the second management task may include a result that the password of the operating system has been successfully modified; for example, when the second management task includes a customized instruction of the operating system, the execution result of the second management task may include the operating system The result of successful customization.
  • Step 338 The processing module receives an execution result of the second management task reported by the node controller.
  • Step 339 The processing module detects, according to the execution result of the second management task, whether the operating system is deployed.
  • the node controller can report the execution result of the second management task to the processing module of the central controller after each execution of a second management task, by the central controller.
  • the processing module determines if the next second administrative task needs to be performed.
  • Step 340 If the operating system is not deployed, the processing module generates a next second management task according to the result of the second management task.
  • step 339 if the processing module of the central controller detects that the operating system has been deployed, the next second management task is no longer sent to the node controller.
  • step 325 if the task status of the second management task is originally stored in the processing module, the processing module needs to update the original task status.
  • the processing module of the central controller may generate a password modification instruction carrying the operating system and an outband management IP address.
  • the next second management task when the execution result of the second management task in step 339 is that the password of the operating system has been successfully modified, the processing module of the central controller can generate a customized instruction carrying the operating system and the outband management IP.
  • the next second management task of the address when the execution result of the second management task in step 339 is that the operating system has been successfully customized, the processing module of the central controller may no longer generate the next second management task.
  • the processing module of the central controller may generate a next second management task carrying the customized instructions of the operating system and the out-of-band management IP address; when the execution result of the second management task in step 339 is that the operating system has succeeded When customized, the processing module of the central controller may generate a second management task carrying the password modification instruction of the operating system and the out-of-band management IP address; when the execution result of the second management task in step 339 is the operating system When the password has been successfully modified, the processing module of the central controller no longer generates the next second management task.
  • the processing module of the central controller may generate a password modification instruction carrying the operating system and an outband management IP address.
  • the next second management task when the execution result of the second management task in step 339 is that the password of the operating system has been successfully modified, the processing module of the central controller no longer generates the next second management task.
  • step 341 the processing module sends the next second management task to the node controller.
  • step 342 the node controller receives the next second management task sent by the processing module.
  • step 328 For the execution of the next second management task, please refer to step 328 to step 335.
  • step 336 to step 339 are required to be performed. That is to say, in the operating system deployment task, each execution of a second management task needs to feed back the execution result to the processing module of the central controller, and the processing module of the central controller determines whether it is necessary to execute the next second management task. Until the operating system is deployed.
  • Step 1 Shut down the service server by using the first task instruction.
  • Step 2 Let the service server enter the PXE through the first task instruction.
  • Step 3 Wait for the service server to enter PXE.
  • Step 4 Perform RAID acquisition and modification through the second task instruction.
  • Step 5 Install the minios through the second task instruction.
  • Step 6 Perform an operating system installation, including configuration modification, on the minios basis by using the second task instruction.
  • Step 7 After the operating system is installed, the first task instruction is used for ping detection, the first task instruction is used for SSH detection, and the second task instruction is used for password modification.
  • Step 8 Perform a customized configuration by executing a post-script through the second task instruction, including installing an application.
  • the node controller can periodically report the status and system information of the service server to the central controller.
  • the status of the service server may include entering a PXE state, installing a minios state, and installing a service system state.
  • the system information may include data such as a network card and a memory of the service server.
  • Figure 3D shows a schematic diagram of an operating system deployment.
  • S301 is first executed, and the device is shut down; then S302 is executed, and the PXE is taken out; then S303 is executed to wait for PXE; then S304 is executed to determine whether to enter PXE; if the result of S304 is YES, then execution is performed.
  • S305 RAID check; then execute S307, determine whether the RAID is consistent; if the determination result of S307 is no, execute S308, RAID modification; then execute S309, minios installation; if the judgment result of S307 is yes, directly execute S309; After S309, execute S310 and wait Entering minis; then executing S311 to determine whether to enter the minios; if the determination result of S311 is YES, executing S312, the OS is installed; then executing S314, waiting for the system to start; then performing S315, PING checking; then executing S316, SSH checking; Execute S317, the password is modified; then S318 is executed, and the post task is executed.
  • the operating system deployment After the post task is executed, the operating system deployment is successful. If the execution result of S304 is NO, execute S306 to determine whether to time out; if the result of the determination in S306 is YES, the operating system deployment fails; if the result of the determination in S306 is no, the process goes to S303; if the result of the determination in S311 is negative, the execution is performed. S313, it is judged whether it is timed out; if the judgment result of S313 is YES, the operating system deployment fails; if the determination result of S313 is NO, the process jumps to S310 for execution.
  • the API module 111 of the central controller 110 performs S319, parameter verification, and IP whitelist detection. If the S319 detects the IP whitelist, the process proceeds to S320, and the task is forwarded.
  • the processing module 112 of the central controller 110 executes S321, node controller selection, command matching, and key parameter packing; then processing module 112 performs S323, task scheduling, node controller 121 receives the task scheduling of processing module 112, performs S324, IPMI/SSH; The output result is returned; the node controller 121 executes S326, and the result is reported to the processing module 112; the processing module 112 executes S322, the task status record; then the processing module 112 executes S327 to determine whether it is a deployment class task; if the determination result of S327 is no, Then, S328 is executed to update the task status; if the result of the determination in S327 is YES, execute S329 to determine whether the deployment is completed; if the determination structure of S329 is YES, execute S328 to update the task status; if the result of the determination in S329 is no, Continue to perform S330, task scheduling.
  • the flow after S330 is the same as the process after S323.
  • the CDN management method can receive a task call request for remotely managing a service server in a CDN node through a central controller, generate a management task according to the task call request, and send the management task to the node.
  • the controller the node controller performs the management task.
  • the central controller remotely manages the service server through the task call request, without manual field operation, thereby improving the CDN when the number of CDN nodes is large and the distribution position is relatively dispersed. The management efficiency of the node.
  • the node controller allocates a management IP address to the service server, and sends the management IP address of the service server to the central controller for storage, so that the central controller can send the management task to the corresponding task when receiving the task call request.
  • the node controller in this way, when the node controller performs the management task, can send the script file and the execution instruction of the execution script file to the corresponding service server, so that the control server can execute the script file according to the execution instruction.
  • the transmission can be performed through the out-of-band network, and for the deployment management task, it can be transmitted through the service network, so that It will cause congestion in the business network.
  • the node controller may report the execution result to the central controller, and the central controller detects whether it is necessary to send the next second management task, so that the central controller pairs
  • the business server of the CDN node implements a fully automated operating system deployment.
  • the CDN management system can perform remote management securely and efficiently.
  • the CDN management system can maintain the mirror file and the script file in the node controller. Therefore, the CDN management system can use the periodic synchronization mechanism for the node controller. For details, see the description in the following steps. :
  • the node controller requests the central controller to detect whether the image file, the first script file, and the second script file are updated every predetermined time interval.
  • the image file is an image file that can be used to install an operating system.
  • the first script file may be an image file for password modification
  • the second script file may be an image file for customizing an operating system.
  • the node controller when at least one of the image file, the first script file, and the second script file is updated, the node controller requests the central controller to acquire at least one of the updated image file, the first script file, and the second script file.
  • the central controller sends the image file and the first script to the node controller through the CDN acceleration server when receiving the request of the node controller to obtain at least one of the updated image file, the first script file, and the second script file. At least one of a file and a second script file.
  • the central controller can send image files and script files to the node controller through the CDN acceleration server.
  • the CDN management apparatus includes: a receiving module 410, a generating module 420, and a sending module 430.
  • the receiving module 410 is configured to implement the foregoing steps 201, 305, 309, 318, 323, and 338, and any other implicit or publicly related functions related to reception.
  • the generating module 420 is configured to implement the foregoing step 202, step 340, and any other implicit or explicit generation-related functions.
  • the sending module 430 is configured to implement the foregoing steps 203, 312, 326, 341, and s3, and any other implicit or publicly related functions related to the sending.
  • the generating module 420 includes: a query unit and a generating unit.
  • the query unit is configured to implement the foregoing step 310, step 324, and any other implicit or public query-related functions.
  • the generating unit is configured to implement the foregoing steps 311, 325, and any other implicit or publicly related functions related to generation.
  • the CDN management device further includes: a recording module and a detecting module.
  • a recording module for implementing the above-mentioned step 319 and any other implicit or public record-related functions.
  • the detection module is configured to implement the above step 339 and any other implicit or public detection-related functions.
  • the receiving module 410 includes: a receiving unit, a detecting unit, and a determining unit.
  • the receiving unit is configured to implement the foregoing steps 306, 320, and any other implicit or publicly related functions related to receiving.
  • the detecting unit is configured to implement the above steps 307, 321 and any other implicit or explicit detection-related functions.
  • the determining unit is configured to implement the above steps 308, 322, and any other implicit or publicly related functions related to the determination.
  • the CDN management apparatus receives a task call request for remote management of a service server in a CDN node through a central controller, generates a management task according to the task call request, and sends the management task to the node control.
  • the node controller controls the target business server to perform the management task according to the management task. Since the business server is remotely managed by the task call request during the management operation of the service server, and no manual field operation is required, the efficiency of managing a large number of CDN nodes with different distribution locations is improved.
  • the CDN management device when managing the CDN, the CDN management device provided in the foregoing embodiment is only illustrated by the division of the above functional modules. In actual applications, the function distribution may be completed by different functional modules as needed. The internal structure of the central controller is divided into different functional modules to complete all or part of the functions described above.
  • the CDN management device and the CDN management method are provided in the same embodiment. For details, refer to the method embodiment, and details are not described herein.
  • FIG. 5 is a block diagram showing the structure of a CDN management apparatus provided in another embodiment of the present application, which is exemplified in the CDN management system 100 shown in FIG. 1A.
  • the CDN management apparatus includes a receiving module 510 and an executing module 520.
  • the receiving module 510 is configured to implement the foregoing steps 204, 301, 302, 313, 327, 336, and 342, and any other implicit or publicly related functions related to reception.
  • the execution module 520 is configured to implement the foregoing step 205 and any other implicit or explicit execution-related functions.
  • the CDN management apparatus further includes: an allocation module, a sending module, a detecting module, an obtaining module, and a reading module.
  • An allocation module for implementing the above step 303 and any other implicit or public distribution-related functions.
  • the sending module is configured to implement the foregoing steps 304, 317, and 337 and any other implicit or publicly related functions related to the sending.
  • the detection module is configured to implement the above step s1 and any other implicit or public detection-related functions.
  • the obtaining module is used to implement the above step s2 and any other implicit or public related functions related to the acquisition.
  • the reading module is configured to implement the above step 316 and any other implicit or public read-related functions.
  • the distribution module comprises: a first distribution unit and a second distribution unit.
  • the first allocation unit is configured to implement the above step S1 and any other implicit or public distribution-related functions.
  • the second allocation unit is configured to implement the above step S2 and any other implicit or public distribution-related functions.
  • control module includes: a parsing unit and an executing unit.
  • the parsing unit is configured to implement the above steps 314, 328, and any other implicit or explicit parsing related functions.
  • the execution unit is configured to implement the foregoing steps 315, 329, 330, 331, 332, 333, 334, and 335, and any other functions related to execution or disclosure.
  • the CDN management apparatus receives the CDN node through the central controller.
  • the service server performs a remote management task call request, generates a management task according to the task call request, and sends the management task to the node controller, and the node controller controls the target service server to execute the management task according to the management task. Since the business server is remotely managed by the task call request during the management operation of the service server, and no manual field operation is required, the efficiency of managing a large number of CDN nodes with different distribution locations is improved.
  • the CDN management device when managing the CDN, the CDN management device provided in the foregoing embodiment is only illustrated by the division of the above functional modules. In actual applications, the function distribution may be completed by different functional modules as needed. The internal structure of the node controller is divided into different functional modules to complete all or part of the functions described above.
  • the CDN management device and the CDN management method are provided in the same embodiment. For details, refer to the method embodiment, and details are not described herein.
  • the embodiment of the present application further provides a CDN management system, where the CDN management system includes a central controller and N CDN nodes, where N is a positive integer; each CDN node includes a node controller, at least one service server, and a switch.
  • the central controller includes a CDN management device as shown in FIG. 4, and the node controller includes a CDN management device as shown in FIG.
  • FIG. 6 is a schematic structural diagram of a server provided in an embodiment of the present application.
  • the server may be the service server 122 shown in FIG. 1A or the CDN acceleration server 150.
  • the server 600 includes a processor, that is, a central processing unit (CPU) 601, a system memory 604 including a random access memory (RAM) 602 and a read only memory (ROM) 603, and a connection system memory 604 and a central processing unit.
  • the server 600 also includes a basic input/output system (I/O system) 606 that facilitates transfer of information between various devices within the computer, and mass storage for storing the operating system 613, applications 614, and other program modules 615.
  • I/O system basic input/output system
  • the basic input/output system 606 includes a display 608 for displaying information and an input device 609 such as a mouse or keyboard for user input of information.
  • the display 608 and input device 609 are both connected to the central processing unit 601 by an input/output controller 610 that is coupled to the system bus 605.
  • the basic input/output system 606 can also include an input output controller 610 for receiving and processing input from a plurality of other devices, such as a keyboard, mouse, or electronic stylus.
  • input/output controller 610 also provides output to a display screen, printer, or other type of output device.
  • the mass storage device 607 is connected to the central processing unit 601 by a mass storage controller (not shown) connected to the system bus 605.
  • the mass storage device 607 and its associated computer readable medium provide non-volatile storage for the server 600. That is, the mass storage device 607 can include a computer readable medium (not shown) such as a hard disk or a CD-ROM drive.
  • the computer readable medium can include computer storage media and communication media.
  • Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • Computer storage media include RAM, ROM, EPROM, EEPROM, flash memory or other solid state storage technologies, CD-ROM, DVD or other optical storage, tape cartridges, magnetic tape, magnetic disk storage or other magnetic storage devices.
  • RAM random access memory
  • ROM read only memory
  • EPROM Erasable programmable read-only memory
  • EEPROM electrically erasable programmable read-only memory
  • the server 600 may also be operated by a remote computer connected to the network through a network such as the Internet. That is, the server 600 can be connected to the network 612 through a network interface unit 611 connected to the system bus 605, or can also be connected to other types of networks or remote computer systems (not shown) using the network interface unit 611. .
  • the embodiment of the present application further provides a computer readable storage medium, which may be a computer readable storage medium included in the memory in the foregoing embodiment, or may exist separately and not assembled into the terminal.
  • Computer readable storage medium may be a computer readable storage medium included in the memory in the foregoing embodiment, or may exist separately and not assembled into the terminal.
  • Computer readable storage medium stores one or more programs that are used by one or more processors to perform the CDN management method described above.
  • the embodiment of the present application further provides a computer program product comprising instructions, when executed on a computer, causing the computer to execute any one of the CDN management methods described in the foregoing various embodiments.
  • a person skilled in the art may understand that all or part of the steps of implementing the above embodiments may be completed by hardware, or may be instructed by a program to execute related hardware, and the program may be stored in a computer readable storage medium.
  • the storage medium mentioned may be a read only memory, a magnetic disk or an optical disk or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Cardiology (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请公开了一种CDN管理系统、方法及装置,属于计算机技术领域。所述系统包括中央控制器和N个CDN节点;每个CDN节点包括节点控制器、至少一个业务服务器和交换机;中央控制器用于接收任务调用请求;根据任务调用请求生成管理任务;将管理任务发送给节点控制器;节点控制器用于接收中央控制器发送的管理任务;执行管理任务。本申请解决了现有技术中仅靠人工现场操作对CDN节点进行管理的效率非常低的问题,由于在对业务服务器进行管理操作时,是由中央控制器通过任务调用请求对业务服务器进行远程管理,而不需要人工现场操作,从而在CDN节点的数量多且分布位置比较分散时,提高对CDN节点的管理效率。

Description

CDN管理系统、方法及装置
本申请要求于2016年12月19日提交中国专利局、申请号为201611176727.0、申请名称为“CDN管理系统、方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种CDN管理。
背景技术
内容分发网络(Content Delivery Network,CDN)是通过在网络各处设置CDN节点,使得用户能够就近接入CDN节点所提供的互联网服务的技术。该互联网服务可以是视频点播服务、文件下载服务等。
在现有技术中,CDN系统包括:位于中央的互联网数据中心(Internet Data Center,IDC)和设置在网络边缘的多个CDN节点。其中,IDC中存储有全量的内容数据,每个CDN节点中存储有部分被加速的内容数据,也即CDN节点中存储的内容数据是全量内容数据的子集,网络边缘通常是指距离用户仅为一跳距离的网络位置,方便用户对内容数据的就近访问。在具体实现时,CDN节点的数量较多,能达到几百个甚至上千个,并且每个CDN节点中包括几十台业务服务器。
对于CDN节点中的业务服务器,主要通过人工现场操作来实现管理,比如对业务服务器的开机、关机、重启、重装操作系统等常规管理操作均由人工现场操作。但由于CDN节点的数量较多,且不同的CDN节点的分布位置不同,比如一些CDN节点设置在北京、一些CDN节点设置在深圳,另外一些CDN节点设置在美国,仅靠人工现场操作对CDN节点进行管理的效率非常低。
发明内容
为了解决现有技术中仅靠人工现场操作对CDN节点进行管理的效率非常低的问题,本申请实施例提供了一种CDN管理系统、方法及装置。所述技术方案如下:
第一方面,提供了一种内容分发网络CDN管理系统,所述系统包括中央控制器和N个CDN节点,N为正整数;每个所述CDN节点包括节点控制器、至少一个业务服务器和交换机;
所述中央控制器用于接收任务调用请求;所述任务调用请求用于请求对所述CDN节点中的所述业务服务器进行远程管理;其中,根据所述任务调用请求生成管理任务;将所述管理任务发送给所述节点控制器;
所述节点控制器用于接收所述中央控制器发送的所述管理任务;执行所述管理任务;其中,所述管理任务是所述中央控制器根据所述任务调用请求所生成的。
在第一方面的一种可能的实现方式中,所述节点控制器用于根据所述业务服务器发送的动态主机配置协议DHCP请求,为所述业务服务器分配管理IP地址,向所述中央控制器 发送所述业务服务器的所述管理IP地址;其中,所述管理IP地址与所述业务服务器提供业务时的IP地址不同;所述中央控制器用于接收所述节点控制器上报的所述业务服务器的管理IP地址并进行存储;所述中央控制器用于在接收到所述任务调用请求时,查询与所述任务调用请求对应的任务指令和所述业务服务器的所述管理IP地址,生成携带有所述任务指令和所述管理IP地址的管理任务。
第二方面,提供了一种内容分发网络CDN管理方法,所述方法包括:
接收任务调用请求,所述任务调用请求用于请求对CDN节点中的业务服务器进行远程管理,所述CDN节点包括节点控制器和至少一个业务服务器;
根据所述任务调用请求生成管理任务;
将所述管理任务发送给所述节点控制器。
在第二方面的一种可能的实现方式中,所述接收任务调用请求之前,还包括:接收所述节点控制器上报的所述业务服务器的管理IP地址;所述管理IP地址是所述节点控制器接收到所述业务服务器发送的动态主机配置协议DHCP请求后,为所述业务服务器分配的地址,所述管理IP地址与所述业务服务器提供业务时的IP地址不同;所述根据所述任务调用请求生成管理任务,包括:查询与所述任务调用请求对应的任务指令和所述业务服务器的所述管理IP地址;生成携带有所述任务指令和所述管理IP地址的管理任务。
在第二方面的一种可能的实现方式中,所述管理IP地址包括:带外管理IP地址和部署管理IP地址;所述生成携带有所述任务指令和所述管理IP地址的管理任务,包括:在所述任务指令属于第一类任务指令时,生成携带有所述第一类任务指令和所述带外管理IP地址的第一管理任务;在所述任务指令属于第二类任务指令时,生成携带有所述第二类任务指令和所述部署管理IP地址的第二管理任务;其中,所述第一类任务指令包括:开机指令、关机指令、重启指令、进入PXE环境指令、PING探测指令和SSH探测指令中的至少一种,所述PXE是安装操作系统时的预启动环境;所述第二类任务指令包括:所述操作系统的安装指令、所述操作系统的密码修改指令和所述操作系统的定制化指令中的至少一种。
在第二方面的一种可能的实现方式中,所述将所述管理任务发送给所述节点控制器之后,还包括:接收所述节点控制器上报的所述第一管理任务的执行结果;根据所述第一管理任务的执行结果,记录所述第一管理任务的任务状态。
在第二方面的一种可能的实现方式中,所述将所述管理任务发送给所述节点控制器之后,还包括:接收所述节点控制器上报的所述第二管理任务的执行结果;根据所述第二管理任务的执行结果,检测所述操作系统是否部署完毕;若所述操作系统未部署完毕,则根据所述第二管理任务的执行结果,生成下一个第二管理任务;向所述节点控制器发送所述下一个第二管理任务。
在第二方面的一种可能的实现方式中,所述接收任务调用请求,包括:通过预定API接口接收运维客户端发送的所述任务调用请求;检测所述运维客户端的IP地址是否属于白名单IP地址;若所述运维客户端的IP地址属于所述白名单IP地址,则确定所述任务调用请求为有效的所述任务调用请求。
在第二方面的一种可能的实现方式中,所述方法还包括:每隔预定时间间隔通过CDN加速服务器向所述节点控制器发送镜像文件、第一脚本文件和第二脚本文件中的至少一种;其中,所述镜像文件是用于安装所述操作系统的镜像文件,所述第一脚本文件是用于进行密码修改的镜像文件,所述第二脚本文件是用于定制化所述操作系统的镜像文件。
第三方面,提供了一种内容分发网络CDN管理方法,用于CDN节点的节点控制器中,所述CDN节点包括所述节点控制器和至少一个业务服务器,所述方法包括:接收中央控制器发送的管理任务,所述管理任务是所述中央控制器根据任务调用请求所生成的,所述任务调用请求用于请求对所述CDN节点中的所述业务服务器进行远程管理;执行所述管理任务。
在第三方面的一种可能的实现方式中,所述接收中央控制器发送的管理任务之前,还包括:接收所述业务服务器发送的动态主机配置协议DHCP请求;根据所述DHCP请求向所述业务服务器分配管理IP地址,所述管理IP地址与所述业务服务器提供业务时的IP地址不同;向所述中央控制器发送所述业务服务器的所述管理IP地址。
在第三方面的一种可能的实现方式中,所述根据所述DHCP请求向所述业务服务器分配管理IP地址,包括:从第一虚拟局域网对应的第一IP网段中,向所述业务服务器分配带外管理IP地址;从第二虚拟局域网对应的第二IP网段中,向所述业务服务器分配部署管理IP地址;其中,所述带外管理IP地址是用于执行第一类任务指令时的IP地址,所述第一类任务指令包括:开机指令、关机指令、重启指令、进入PXE环境指令、PING探测指令和SSH探测指令中的至少一种,所述PXE是安装操作系统时的预启动环境;所述部署管理IP地址是用于执行第二类任务指令时的IP地址,所述第二类任务指令包括:所述操作系统的安装指令、所述操作系统的密码修改指令和所述操作系统的定制化指令中的至少一种。
在第三方面的一种可能的实现方式中,所述管理任务包括:携带有所述第一类任务指令和所述带外管理IP地址的第一管理任务;所述执行所述管理任务,包括:从所述第一管理任务中解析得到所述第一类任务指令和所述带外管理IP地址;根据所述第一类任务指令和所述带外管理IP地址执行所述第一管理任务。
在第三方面的一种可能的实现方式中,所述控制所述目标业务服务器执行所述管理任务之后,还包括:直接读取所述第一管理任务的执行结果;向所述中央控制器发送所述第一管理任务的执行结果,所述中央控制器用于根据所述第一管理任务的执行结果记录所述第一管理任务的任务状态。
在第三方面的一种可能的实现方式中,所述管理任务包括:携带有所述第二类任务指令和所述部署管理IP地址的第二管理任务;所述执行所述管理任务,包括:从所述第二管理任务中解析得到所述第二类任务指令和所述部署管理IP地址;根据所述第二类任务指令和所述部署管理IP地址执行所述第二管理任务;在所述第二类任务指令是所述操作系统的安装指令时,根据所述部署管理IP地址向所述业务服务器发送预存的镜像文件和所述安装指令,所述业务服务器用于根据所述安装指令将所述镜像文件安装为所述操作系统;在所 述第二类任务指令是所述操作系统的密码修改指令时,根据所述部署管理IP地址向所述业务服务器发送预存的第一脚本文件和所述密码修改指令,所述业务服务器用于根据所述密码修改指令运行所述第一脚本文件,所述第一脚本文件是用于进行密码修改的脚本文件;在所述第二类任务指令是所述操作系统的定制化指令时,根据所述部署管理IP地址向所述业务服务器发送预存的第二脚本文件和所述定制化指令,所述业务服务器用于根据所述定制化指令运行所述第二脚本文件,所述第二脚本文件是用于定制化所述操作系统的脚本文件。
在第三方面的一种可能的实现方式中,所述控制所述目标业务服务执行所述管理任务之后,还包括:收所述业务服务器发送的所述第二类任务指令的执行结果;根据所述第二类任务指令的执行结果向所述中央控制器发送所述第二管理任务的执行结果;接收所述中央控制器发送的下一个第二管理任务,所述下一个第二管理任务是所述中央控制器在根据所述执行结果检测到所述操作系统未部署完毕时,根据所述执行结果生成并发送的。
在第三方面的一种可能的实现方式中,所述方法还包括:每隔预定时间间隔向所述中央控制器请求检测镜像文件、第一脚本文件和第二脚本文件是否更新;当所述镜像文件、所述第一脚本文件和所述第二脚本文件中的至少一种更新时,向所述中央控制器请求获取更新的所述镜像文件、所述第一脚本文件和所述第二脚本文件中的至少一种;其中,所述镜像文件是用于安装所述操作系统的镜像文件,所述第一脚本文件是用于进行密码修改的镜像文件,所述第二脚本文件是用于定制化所述操作系统的镜像文件。
第四方面,提供了一种内容分发网络CDN管理装置,所述装置包括:
接收模块,用于接收任务调用请求,所述任务调用请求用于请求对CDN节点中的业务服务器进行远程管理,所述CDN节点包括节点控制器和至少一个业务服务器;生成模块,用于根据所述接收模块接收的所述任务调用请求生成管理任务;发送模块,用于将所述生成模块生成的所述管理任务发送给所述节点控制器。
在第四方面的一种可能的实现方式中,所述装置还包括:所述接收模块,还用于接收所述节点控制器上报的所述业务服务器的管理IP地址;所述管理IP地址是所述节点控制器接收到所述业务服务器发送的动态主机配置协议DHCP请求后为所述业务服务器分配的地址,所述管理IP地址与所述业务服务器提供业务时的IP地址不同;所述生成模块,包括:查询单元,用于查询与所述接收模块接收的所述任务调用请求对应的任务指令和所述业务服务器的所述管理IP地址;生成单元,用于生成携带有所述查询单元查询到的所述任务指令和所述管理IP地址的管理任务。
在第四方面的一种可能的实现方式中,所述管理IP地址包括:带外管理IP地址和部署管理IP地址;所述生成单元,还用于在所述任务指令属于第一类任务指令时,生成携带有所述第一类任务指令和所述带外管理IP地址的第一管理任务;在所述任务指令属于第二类任务指令时,生成携带有所述第二类任务指令和所述部署管理IP地址的第二管理任务;其中,所述第一类任务指令包括:开机指令、关机指令、重启指令、进入PXE环境指令、PING探测指令和SSH探测指令中的至少一种,所述PXE是安装操作系统时的预启动环境; 所述第二类任务指令包括:所述操作系统的安装指令、所述操作系统的密码修改指令和所述操作系统的定制化指令中的至少一种。
在第四方面的一种可能的实现方式中,所述装置还包括:所述接收模块,还用于接收所述节点控制器上报的所述第一管理任务的执行结果;记录模块,用于根据所述接收模块接收的所述第一管理任务的执行结果,记录所述第一管理任务的任务状态。
在第四方面的一种可能的实现方式中,所述装置还包括:所述接收模块,还用于接收所述节点控制器上报的所述第二管理任务的执行结果;检测模块,用于根据所述接收模块接收的所述第二管理任务的执行结果,检测所述操作系统是否部署完毕;所述生成模块,用于若所述操作系统未部署完毕,则根据所述接收模块接收的所述第二管理任务的执行结果,生成下一个第二管理任务;所述发送模块,还用于向所述节点控制器发送所述生成模块生成的所述下一个第二管理任务。
在第四方面的一种可能的实现方式中,所述接收模块,包括:接收单元,用于通过预定API接口接收运维客户端发送的所述任务调用请求;检测单元,用于检测所述运维客户端的IP地址是否属于白名单IP地址;确定单元,用于若所述检测单元检测到所述运维客户端的IP地址属于所述白名单IP地址,则确定所述任务调用请求为有效的所述任务调用请求。
在第四方面的一种可能的实现方式中,所述发送模块还用于每隔预定时间间隔通过CDN加速服务器向所述节点控制器发送镜像文件、第一脚本文件和第二脚本文件中的至少一种;其中,所述镜像文件是用于安装所述操作系统的镜像文件,所述第一脚本文件是用于进行密码修改的镜像文件,所述第二脚本文件是用于定制化所述操作系统的镜像文件。
第五方面,提供了一种内容分发网络CDN管理装置,用于CDN节点的节点控制器中,所述CDN节点包括所述节点控制器和至少一个业务服务器,所述装置包括:接收模块,用于接收中央控制器发送的管理任务,所述管理任务是所述中央控制器根据任务调用请求所生成的,所述任务调用请求用于请求对所述CDN节点中的所述业务服务器进行远程管理;执行模块,用于执行所述接收模块接收的所述管理任务。
在第五方面的一种可能的实现方式中,所述装置还包括:所述接收模块,还用于接收所述业务服务器发送的动态主机配置协议DHCP请求;分配模块,用于根据所述接收模块接收的所述DHCP请求向所述业务服务器分配管理IP地址,所述管理IP地址与所述业务服务器提供业务时的IP地址不同;发送模块,用于向所述中央控制器发送所述分配模块分配的所述业务服务器的所述管理IP地址。
在第五方面的一种可能的实现方式中,所述分配模块,包括:第一分配单元,用于从第一虚拟局域网对应的第一IP网段中,向所述业务服务器分配带外管理IP地址;第二分配单元,用于从第二虚拟局域网对应的第二IP网段中,向所述业务服务器分配部署管理IP地址;其中,所述带外管理IP地址是用于执行第一类任务指令时的IP地址,所述第一类任务指令包括:开机指令、关机指令、重启指令、进入PXE环境指令、PING探测指令和SSH探测指令中的至少一种,所述PXE是安装操作系统时的预启动环境;所述部署管理IP 地址是用于执行第二类任务指令时的IP地址,所述第二类任务指令包括:所述操作系统的安装指令、所述操作系统的密码修改指令和所述操作系统的定制化指令中的至少一种。
在第五方面的一种可能的实现方式中,所述管理任务包括:携带有所述第一类任务指令和所述带外管理IP地址的第一管理任务;所述执行模块,包括:解析单元,用于从所述第一管理任务中解析得到所述第一类任务指令和所述带外管理IP地址;执行单元,用于根据所述解析单元解析得到的所述第一类任务指令和所述带外管理IP地址执行所述第一管理任务。
在第五方面的一种可能的实现方式中,所述装置还包括:读取模块,用于直接读取所述第一管理任务的执行结果;所述发送模块,还用于向所述中央控制器发送所述读取模块读取的所述第一管理任务的执行结果,所述中央控制器用于根据所述第一管理任务的执行结果记录所述第一管理任务的任务状态。
在第五方面的一种可能的实现方式中,所述管理任务包括:携带有所述第二类任务指令和所述部署管理IP地址的第二管理任务;所述执行模块,包括:所述解析单元,还用于从所述第二管理任务中解析得到所述第二类任务指令和所述部署管理IP地址;所述执行单元,还用于根据所述解析单元解析得到的所述第二类任务指令和所述部署管理IP地址执行所述第二管理任务;所述执行单元,还用于在所述第二类任务指令是所述操作系统的安装指令时,根据所述部署管理IP地址向所述业务服务器发送预存的镜像文件和所述安装指令,所述业务服务器用于根据所述安装指令将所述镜像文件安装为所述操作系统;所述执行单元,还用于在所述第二类任务指令是所述操作系统的密码修改指令时,根据所述部署管理IP地址向所述业务服务器发送预存的第一脚本文件和所述密码修改指令,所述业务服务器用于根据所述密码修改指令运行所述第一脚本文件,所述第一脚本文件是用于进行密码修改的脚本文件;所述执行单元,还用于在所述第二类任务指令是所述操作系统的定制化指令时,根据所述部署管理IP地址向所述业务服务器发送预存的第二脚本文件和所述定制化指令,所述业务服务器用于根据所述定制化指令运行所述第二脚本文件,所述第二脚本文件是用于定制化所述操作系统的脚本文件。
在第五方面的一种可能的实现方式中,所述接收模块,还用于接收所述业务服务器发送的所述第二类任务指令的执行结果;所述发送模块,还用于根据所述接收模块接收的所述第二类任务指令的执行结果向所述中央控制器发送所述第二管理任务的执行结果;所述接收模块,还用于接收所述中央控制器发送的下一个第二管理任务,所述下一个第二管理任务是所述中央控制器在根据所述执行结果检测到所述操作系统未部署完毕时,根据所述执行结果生成并发送的。
在第五方面的一种可能的实现方式中,所述装置还包括:检测模块,用于每隔预定时间间隔向所述中央控制器请求检测镜像文件、第一脚本文件和第二脚本文件是否更新;获取模块,用于当所述检测模块检测到所述镜像文件、所述第一脚本文件和所述第二脚本文件中的至少一种更新时,向所述中央控制器请求获取更新的所述镜像文件、所述第一脚本文件和所述第二脚本文件中的至少一种;其中,所述镜像文件是用于安装所述操作系统的镜像文件,所述第一脚本文件是用于进行密码修改的镜像文件,所述第二脚本文件是用于 定制化所述操作系统的镜像文件。
第六方面,本申请提供了一种服务器,所述服务器包括处理器以及存储器:所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;所述处理器用于根据所述程序代码中的指令执行权利要求3-17任一项所述的内容分发网络CDN管理方法。
第七方面,本申请提供了一种计算机可读存储介质,所述存储介质用于存储程序代码,所述程序代码用于执行第二、三方面中任意一项所述的方法。
第八方面,本申请提供了一种包括指令的计算机程序产品,当其在计算机上运行时,使得所述计算机执行第二、三方面中任意一项所述的方法。
本申请实施例提供的技术方案带来的有益效果是:
通过中央控制器接收对CDN节点中的业务服务器进行远程管理的任务调用请求,根据任务调用请求生成管理任务,将管理任务发送给节点控制器,节点控制器执行该管理任务。由于在对业务服务器进行管理操作时,是由中央控制器通过任务调用请求对业务服务器进行远程管理,而不需要人工现场操作,从而在CDN节点的数量多且分布位置比较分散时,可以提高对CDN节点的管理效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A是本申请一个示例性实施例提供的CDN管理系统的示意图;
图1B是本申请一个实施例中提供的业务服务器的架构示意图;
图2是本申请一个实施例中提供的CDN管理方法的方法流程图;
图3A是本申请另一个实施例中提供的CDN管理方法的方法流程图;
图3B是本申请再一个实施例中提供的CDN管理方法的方法流程图;
图3C是本申请再一个实施例中提供的CDN管理方法的方法流程图;
图3D是本申请一个实施例中提供的操作系统部署的原理图;
图3E是本申请一个实施例中提供的CDN管理方法的原理图;
图4是本申请一个实施例中提供的CDN管理装置的结构方框图;
图5是本申请另一个实施例中提供的CDN管理装置的结构方框图;
图6是本申请一个实施例中提供的服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1A是本申请一个示例性实施例提供的CDN管理系统的示意图,如图1A所示,该 CDN管理系统100可以包括:中央控制器110和N个CDN节点120,N为正整数。
中央控制器110可以包括应用程序编程接口(Application Programming Interface,API)模块111和处理模块112。其中,API模块111可以提供有用于远程管理的预设API接口,处理模块112具备对管理任务的管控调度能力。
在一种实施方式中,CDN管理系统100还可以包括:运维客户端130,该运维客户端130可以是由运维人员所使用的前台客户端。而API模块111还可以用于接收运维客户端130发送的任务调用请求,并将接收到的任务调用请求经解析后转发至处理模块112。
其中,任务调用请求可以由运维人员通过运维客户端130向API模块111发送,也可以通过中央控制器110自行执行脚本文件来生成。
在一种实施方式中,CDN管理系统100还可以包括:IDC 140,IDC 140中存储有全量的业务数据,比如,在线视频数据。CDN节点120中存储的是IDC 140中存储的业务数据的子集,比如,热点视频数据。在一种实施方式中,CDN管理系统100中包括至少一个IDC140。中央控制器110可以设置在任意的IDC 140上,也可以设置在其他设备上,还可以设置为一个单独的设备,本实施例不对中央控制器110的部署位置进行限定。
在一种实施方式中,中央控制器110的数量允许超过1个,各个中央控制器110可以设置在不同的位置。
在一种实施方式中,CDN管理系统100还可以包括:负载均衡设备160。负载均衡设备160可以用于将任务调用请求分摊给各个中央控制器110。比如,负载均衡设备160在转发任务调用请求时,若检测到一个中央控制器110正在处理任务调用请求,则可以将需要转发的任务调用请求转发给其他处于空闲状态的中央控制器110。
每个CDN节点120可以包括:节点控制器121、至少一个业务服务器122和交换机123。节点控制器121以及各个业务服务器122均可以连接至交换机123,并且节点控制器121还可以通过交换机123与中央控制器110逻辑相连。
其中,节点控制器121可以是运行在任意一个业务服务器122上的后台程序。节点控制器121可以用于管理属于CDN节点120中的各个业务服务器122。比如,一个CDN节点120中包括50台业务服务器122,其中一台业务服务器122上安装有节点控制器121,则安装有节点控制器121的业务服务器122能够管理其余49台业务服务器122。
需要说明的是,安装有节点控制器121的业务服务器122除了具备管理业务服务器122的能力,也可以具备执行业务的能力。
在一种实施方式中,为了保证CDN管理系统100的稳定性,每个CDN节点120中可以允许设置主用、备用两个节点控制器121,当主用节点控制器121正常工作时,备用节点控制器121不需要工作;当主用节点控制器121不能正常工作时,主用节点控制器121和备用节点控制器121进行交换,由备用节点控制器121为CDN节点120提供服务。
在一种实施方式中,中央控制器110和节点控制器121使用的是不同运营商的网络,当中央控制器110向节点控制器121传输文件时,由于存在跨运营商网络通信的问题,文件的传输速度可能较慢。因此,CDN管理系统100中还可以包括:CDN加速服务器150。CDN加速服务器150可以用于为中央控制器110和节点控制器121之间跨运营商网络的文 件传输提供CDN加速服务。
通常,为了避免业务网络上的业务过多造成业务网络拥堵的问题,CDN管理系统100可以通过带外网络对业务服务器122执行开机、关机、重启、进入预启动执行环境(preboot execute environment,PXE)、因特网包探索器(Packet Internet Groper,PING)探测、安全外壳协议(Secure Shell,SSH)探测的管理任务,CDN管理系统100可以通过业务网络对业务服务器122执行操作系统安装、密码修改、操作系统定制化的管理任务。其中,带外网络可以是独立于业务网络的专用网络通道,与带外网络对应的,业务网络还可以被称为带内网络。CDN管理系统100通过带外网络对业务服务器122的开机、关机、重启和进入PXE的管理任务进行传输,可以不影响带内网络上的业务。
结合参考图1B,其示出了业务服务器122的架构示意图。如图1B所示,业务服务器122的架构组成可以包括:基板管理控制器(Baseboard Management Controller,BMC)122a、网络适配器(Network Interface Card,NIC)122b、总线控制器122c、处理器122d、存储器122e。
BMC 122a可以是一个单片机,能够为业务服务器122提供带外管理功能。BMC 122a具有独立网口122f,用于连接带外网络。NIC 122b具有共享网口122g,用于连接业务网络。由于带外网络和业务网络相互独立,当使用不同的网口时,搭建带外网络需要带外交换机,从而增加了交换机123的数量,使得成本和网络复杂度增加。为了降低成本和网络复杂度,业务服务器122可以开启边频带模式,使得BMC 122a能够使用NIC 122b的共享网口122g,也就使得带外网络和业务网络可以共享一个网口,从而实现带外网络和业务网络的物理上的复用。
业务服务器122开启边频带模式时需要由人工对业务服务器122和交换机123进行预设置,预设置的具体操作可以包括:
1、对业务服务器122的预设置:
(1)技术人员通过基本输入输出系统(Basic Input Output System,BIOS)或在BMC的web管理界面中将智能平台管理接口(Intelligent Platform Management Interface,IPMI)访问方式修改为share(共享模式)。IPMI的访问方式设置成share后,BMC 122a和NIC 122b可以共享使用共享网口122g。
(2)技术人员为共享网口122g单独分配一个虚拟局域网(Virtual Local Area Network,VLAN)标签和IP地址,以便于从共享网口122g发送的数据能够从业务网络中分离出来。
(3)技术人员为BMC 122a配置一个VLAN100的标签。BMC 122a在配置VLAN100的标签后,业务服务器122能够发送携带有VLAN100标签的数据,VLAN100标签可以用于指示该数据通过带外网络传输。
对于需要通过业务网络传输的操作系统部署的管理任务,技术人员可以配置一个VLAN10的标签,用于区分在业务网络上传输的其他任务。
2、对与业务服务器122连接的交换机123的预设置:
(1)交换机123开启802.1q(虚拟局域网)协议,配置与共享网口122g相同的VLAN标签。
(2)交换机123配置带外(标签为VLAN100)网络传输的操作系统部署(标签为VLAN10)的动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)中继代理(relay),该DHCP relay可以被配置为指向业务服务器122所在的CDN节点120的节点控制器121,用于将业务服务器122发送的DHCP请求转发给节点控制器121。
(3)交换机123端口配置成trunk模式,交换机123在trunk模式下,允许通过多个VLAN的数据,并允许VLAN10和VLAN100之间的通信。
在图1A所示的CDN管理系统100搭建完成的情况下,CDN管理系统100可以通过中央控制器110和节点控制器121,根据运维客户端130发送的任务调用请求对CDN节点120中的业务服务器122进行远程管理,具体实现请参见图2所述的步骤。
图2是本申请一个实施例中提供的CDN管理方法的方法流程图,该CDN管理方法可以应用在图1A所示的CDN管理系统100中。如图2所示,该CDN管理方法可以包括:
步骤201,中央控制器接收任务调用请求。
任务调用请求可以用于请求对CDN节点中的业务服务器进行远程管理,其中,CDN节点可以包括节点控制器和至少一个业务服务器。远程管理可以是指从远端控制CDN节点中的业务服务器进行开机、关机、重启和操作系统部署等操作。
在一种实施方式中,任务调用请求可以是由运维人员通过运维客户端发送的,也可以是通过中央控制器自行执行脚本文件生成的。
在一种实施方式中任务调用请求中至少可以包括CDN节点的标识、业务服务器的标识。其中,CDN节点的标识可以用于确定出中央控制器需要控制的节点控制器在哪个CDN节点中。业务服务器的标识可以用于指示需要被远程管理的业务服务器,比如:业务服务器的标识可以包括业务服务器的序列号。
步骤202,中央控制器根据任务调用请求生成管理任务。
中央控制器可以根据任务调用请求查找对应的节点控制器、任务指令和业务服务器的管理IP地址。其中,中央控制器还可以查找管理任务的类型、默认的用户名和密码等参数。然后,中央控制器可以将任务指令、业务服务器的管理IP地址、管理任务的类型、默认的用户名和密码等打包成管理任务。
步骤203,中央控制器将管理任务发送给节点控制器。
根据中央控制器查找到的与任务调用请求对应的节点控制器,中央控制器可以将打包好的管理任务发送给与任务调用请求对应的节点控制器。
步骤204,节点控制器接收中央控制器发送的管理任务。
节点控制器在接收到中央控制器发送的管理任务后,可以对管理任务进行解析,并获取到管理任务中的任务指令和与管理任务相关的参数,比如业务服务器的管理IP地址。
步骤205,节点控制器执行管理任务。
节点控制器可以根据解析到的任务指令和与管理任务相关的参数执行管理任务。
可以理解的是,在执行某些管理任务时,节点控制器需要向与任务调用请求对应的业务服务器传输镜像文件或脚本文件,然后可以向该业务服务器发送执行指令,以控制该业务服务器可以执行接收到的镜像文件或脚本文件,比如:节点控制器执行的管理任务可以 为操作系统安装任务。
综上所述,本申请实施例提供的CDN管理方法,首先,可以通过中央控制器接收任务调用请求,其中,该任务调用请求可以用于请求对CDN节点中的业务服务器进行远程管理。然后,可以根据该任务调用请求生成管理任务,并将该管理任务发送给节点控制器。接着,该节点控制器在接收到该管理任务后,该节点控制器可以执行该管理任务。可见,本申请实施例中,在对业务服务器进行管理操作时,是由中央控制器通过任务调用请求对业务服务器进行远程管理,而不需要人工现场操作,从而,使得在CDN节点的数量多且分布位置比较分散时,可以提高对CDN节点的管理效率。
为了便于中央控制器的统一管理,节点控制器可以为业务服务器分配带外管理IP地址和部署管理IP地址,并将分配的带外管理IP地址和部署管理IP地址上报给中央控制器,以使得中央控制器可以将该带外管理IP地址和部署管理IP地址进行存储和管理,具体请参见如图3A所示的步骤。
图3A是本申请另一个实施例中提供的CDN管理方法的方法流程图,该CDN管理方法以应用在图1A所示的CDN管理系统100中举例说明。如图3A所示,该CDN管理方法可以包括:
步骤301,业务服务器向节点控制器发送DHCP请求。
由于与业务服务器连接的交换机预先配置了带外网络传输的操作系统部署的DHCP relay,该DHCP relay被配置为指向业务服务器所在的CDN节点的节点控制器,并用于将业务服务器发送的DHCP请求转发给该节点控制器。
业务服务器在通电后,会自动发送DHCP请求,该DHCP请求通过交换机的DHCP relay机制后,可以被转发给业务服务器所在CDN节点中的节点控制器。
其中,业务服务器发送的DHCP请求中可以包含该业务服务器的标识,比如:业务服务器的序列号。
步骤302,节点控制器接收业务服务器发送的DHCP请求。
其中,DHCP请求中包含业务服务器的标识,比如:业务服务器的序列号。
步骤303,节点控制器根据DHCP请求向业务服务器分配管理IP地址。
在本实施例中,管理IP地址与业务服务器提供业务时的IP地址不同。节点控制器作为DHCP服务器,可以分配带外管理IP地址,也可以分配部署管理IP地址。
在一种实施方式中,步骤303可以包括以下步骤:
S1,节点控制器从第一虚拟局域网对应的第一IP网段中,向业务服务器分配带外管理IP地址。
第一IP网段即带外专用的IP网段,比如192.168.0.0/24。分配的带外管理IP地址可以为192.168.0.5/24。
带外管理IP地址可以是用于执行第一类任务指令时的IP地址,其中,第一类任务指令可以包括:开机指令、关机指令、重启指令、进入PXE指令、PING探测指令和SSH探测指令中的至少一种。
S2,节点控制器从第二虚拟局域网对应的第二IP网段中,向业务服务器分配部署管理 IP地址。
第二IP网段即部署专用的IP网段,比如192.168.1.0/24。分配的部署管理IP地址可以为192.168.1.4/24。
部署管理IP地址可以是用于执行第二类任务指令时的IP地址,其中,第二类任务指令可以包括:操作系统的安装指令、操作系统的密码修改指令和操作系统的定制化指令中的至少一种。
步骤304,节点控制器向中央控制器发送业务服务器的管理IP地址。
在本实施例中,当管理IP地址为带外管理IP地址时,节点控制器可以向中央控制器发送带外管理IP地址。其中,带外管理IP地址的发送格式可以为以下任意一种:以业务服务器的标识+业务服务器的带外管理IP地址的格式发送,或者以CDN节点的标识+业务服务器的标识+业务服务器的带外管理IP地址的格式发送,又或者以节点控制器的标识+业务服务器的标识+业务服务器的带外管理IP地址的格式发送。
当管理IP地址为部署管理IP地址时,由于节点控制器在操作系统部署过程中会主动上报业务服务器的信息,因此,节点控制器向中央控制器发送部署管理IP地址时,可以不携带业务服务器的标识。其中,部署管理IP地址的发送格式可以为:以CDN节点的标识+业务服务器的部署管理IP地址的格式发送,或者以节点控制器的标识+业务服务器的部署管理IP地址的格式发送。
步骤305,中央控制器接收节点控制器上报的业务服务器的管理IP地址。
中央控制器在接收到节点控制器上报的业务服务器的管理IP地址后,可以将业务服务器的管理IP地址进行存储。
在本实施例中,当节点控制器上报的管理IP地址为带外管理IP地址时,中央控制器需要存储带外管理IP地址和业务服务器的标识的对应关系;当节点控制器上报的管理IP地址为部署管理IP地址时,中央控制器可以存储业务服务器的部署管理IP地址,不一定要存储业务服务器的标识。
在实际应用中,为了使中央控制器中存储的管理IP地址及时更新,节点控制器会定期将业务服务器的管理IP地址上报给中央控制器进行存储管理,比如一天上报一次。
需要说明的是,步骤304和步骤305中的中央控制器可以是指中央控制器的处理模块。
任务调用请求所请求执行的管理任务可以包括第一管理任务和第二管理任务,其中,第一管理任务可以包含第一类任务指令和带外管理IP地址,第二管理任务可以包含第二类任务指令和部署管理IP地址。当管理任务为第一管理任务时,请参见图3B所示的步骤,当管理任务为第二管理任务时,请参见图3C所示的步骤。
图3B是本申请再一个实施例中提供的CDN管理方法的方法流程图,该CDN管理方法以应用在图1A所示的CDN管理系统100中举例说明。如图3B所示,该CDN管理方法包括:
步骤306,API模块接收运维客户端发送的任务调用请求。
中央控制器可以包括API模块和处理模块,API模块可以提供有用于远程管理的预设API接口。
其中,任务调用请求可以由运维人员通过运维客户端向API模块发送,也可以通过中央控制器自行执行脚本文件来生成任务调用请求。
步骤307,API模块检测运维客户端的IP地址是否属于白名单IP地址。
白名单IP地址可以是预先存储的对该中央控制器具备操作权限的运维客户端的IP地址。为了检测运维客户端是否具备对中央控制器的操作权限,需要检测运维客户端的IP地址是否属于白名单IP地址,从而确定出中央控制器是否需要响应该运维客户端发送的任务调用请求。
步骤308,若API模块检测到运维客户端的IP地址属于白名单IP地址,则API模块确定任务调用请求为有效的任务调用请求。
当运维客户端的IP地址属于白名单IP地址时,表明该运维客户端具备对中央控制器的操作权限,从而可以确定该运维客户端发送的任务调用请求为有效的任务调用请求。
作为步骤307的另一个分支,当API模块检测到运维客户端的IP地址不属于白名单IP地址,则API模块可以确定任务调用请求为无效的任务调用请求,中央控制器不对该任务调用请求进行响应。
步骤309,API模块将任务调用请求发送给处理模块。
API模块可以将有效的任务调用请求经过解析后发送给中央控制器的处理模块。若任务调用请求为无效的任务调用请求,则API模块不对该任务调用请求进行转发。
步骤310,处理模块查询与任务调用请求对应的任务指令和业务服务器的管理IP地址。
处理模块中可以预先存储与各种任务调用请求对应的任务指令,比如开机对应的开机指令、关机对应的关机指令、重启对应的重启指令,或者操作系统部署对应操作系统的安装指令、密码修改指令、定制化指令等。
由于中央控制器的处理模块预先存储了业务服务器的标识和对应的管理IP地址,以及对应的节点控制器或对应的CDN节点的标识。因此,该处理模块可以根据API模块解析出的业务服务器的标识,能够查找到对应的业务服务器的管理IP地址以及CDN节点或节点控制器的标识。
步骤311,处理模块生成携带有第一类任务指令和带外管理IP地址的第一管理任务。
第一类任务指令可以包括:开机指令、关机指令、重启指令、进入PXE指令、PING探测指令、SSH探测指令中的至少一种。其中,PING探测可以用于测试网络是否连接,SSH探测可以用于测试能否登录业务服务器。需要说明的是,处理模块在生成第一管理任务时,生成与第一管理任务对应的任务状态。
步骤312,处理模块将第一管理任务发送给节点控制器。
步骤313,节点控制器接收处理模块发送的第一管理任务。
步骤314,节点控制器从第一管理任务中解析得到第一类任务指令和带外管理IP地址。
步骤315,节点控制器根据第一类任务指令和带外管理IP地址执行第一管理任务。
步骤316,节点控制器直接读取第一管理任务的执行结果。
其中,节点控制器可以通过运行脚本或工具执行第一管理任务,在执行完之后,可以直接读脚本或工具的执行结果。执行结果可以包括第一管理任务是否成功执行的结果,若 该第一管理任务成功执行,则该执行结果还可以包括成功执行后的输出内容,该输出内容比如可以是开机后的显示内容。
步骤317,节点控制器向处理模块发送第一管理任务的执行结果。
步骤318,处理模块接收节点控制器上报的第一管理任务的执行结果。
步骤319,处理模块根据第一管理任务的执行结果,记录第一管理任务的任务状态。
在一种实施方式中,与步骤311对应的,若处理模块中存储有第一管理任务原本的任务状态,则处理模块记录第一管理任务的任务状态时,可以将原本的任务状态修改替换为已成功执行。比如:中央控制器中存储有序列号为00112233的业务服务器,且该业务服务器原本的关机任务的任务状态为未执行;然后,通过节点控制器执行第一管理任务后,可以将该序列号为00112233的业务服务器关机;接着,该节点控制器可以将第一管理任务的执行结果上报给该中央控制器的处理模块,该中央控制器的处理模块可以将该序列号为00112233的业务服务器的任务状态修改为已成功关机。
在中央控制器的API模块接收到第一管理任务的任务调用请求后,节点控制器负责第一管理任务的执行,中央控制器的处理模块负责对第一管理任务执行的任务状态进行记录。节点控制器在执行完第一管理任务后,可以将执行结果反馈给中央控制器的处理模块,由中央控制器的处理模块存储记录该执行结果。
需要说明的是,由于第一管理任务的执行流程中通常包含一个步骤,因此中央控制器的处理模块只需要记录下第一管理任务的任务状态即可。图3C是本申请再一个实施例中提供的CDN管理方法的方法流程图,该CDN管理方法以应用在图1A所示的CDN管理系统100中举例说明。如图3C所示,该CDN管理方法包括:
步骤320,API模块接收运维客户端发送的任务调用请求。
步骤321,API模块检测运维客户端的IP地址是否属于白名单IP地址。
步骤322,若API模块检测到运维客户端的IP地址属于白名单IP地址,则API模块确定任务调用请求为有效的任务调用请求。
步骤323,API模块将任务调用请求发送给处理模块。
步骤324,处理模块查询与任务调用请求对应的任务指令和业务服务器的管理IP地址。
步骤320至步骤324与步骤306至步骤310类似,这里就不再赘述。
步骤325,处理模块生成携带有第二类任务指令和部署管理IP地址的第二管理任务。
第二类任务指令可以包括:操作系统的安装指令、操作系统的密码修改指令和操作系统的定制化指令中的至少一种。
其中,处理模块在生成第二管理任务时,可以生成与该第二管理任务对应的任务状态。
步骤326,处理模块将第二管理任务发送给节点控制器。
步骤327,节点控制器接收处理模块发送的第二管理任务。
步骤328,节点控制器从第二管理任务中解析得到第二类任务指令和部署管理IP地址。
步骤329,节点控制器根据第二类任务指令和部署管理IP地址执行第二管理任务。
节点控制器在执行第二管理任务的过程中,若需要控制与部署管理IP地址对应的业务服务器所运行的脚本文件,则节点控制器可以将脚本文件传输给业务服务器,并向业务服 务器发送脚本文件的执行指令,从而可以控制与部署管理IP地址对应的业务服务器运行该脚本文件。
步骤330,在第二类任务指令是操作系统的安装指令时,节点控制器根据部署管理IP地址向业务服务器发送预存的镜像文件和安装指令。
其中,镜像文件至少可以包括PXE的镜像文件、迷你操作系统(minios)的镜像文件和业务系统的镜像文件中的至少一种。
在节点控制器中会预先存储有镜像文件,若节点控制器在执行第二管理任务的过程中,需要与第二管理任务中的部署管理IP地址对应的业务服务器安装镜像文件,则可以将预先存储的镜像文件发送给对应的业务服务器,并向业务服务器发送该镜像文件的安装指令,以可以控制业务服务器安装该镜像文件。
比如,当节点控制器在执行第二管理任务的过程中,需要对应的业务服务器安装PXE,则节点控制器可以将PXE的镜像文件传输给对应的业务服务器,并发送PXE的镜像文件的安装指令,从而可以控制对应的业务服务器安装PXE的镜像文件;当节点控制器在执行第二管理任务的过程中,需要对应的业务服务器安装minios,则节点控制器可以将minios的镜像文件传输给对应的业务服务器,并发送minios的镜像文件的安装指令,从而可以控制对应的业务服务器安装minios的镜像文件;当节点控制器在执行第二管理任务的过程中,需要对应的业务服务器安装业务系统的镜像文件,则节点控制器可以将业务系统的镜像文件传输给对应的业务服务器,并发送业务系统的镜像文件的安装指令,从而控制对应的业务服务器安装业务系统的镜像文件。
步骤331,业务服务器根据安装指令将镜像文件安装为操作系统。
业务服务器将镜像文件安装为操作系统,可以包括将PXE的镜像文件安装为PXE,将minios的镜像文件安装为minios,将业务系统的镜像文件安装为业务系统中的至少一种。
步骤332,在第二类任务指令是操作系统的密码修改指令时,节点控制器根据部署管理IP地址向业务服务器发送预存的第一脚本文件和密码修改指令。
其中,第一脚本文件可以是用于密码修改的脚本文件,该第一脚本文件中可以包含指令的用户名密码。
由于在业务服务器进入PXE时所使用的是中央控制器发送的默认的用户名和密码,为了操作系统的安全性,需要对默认的用户名和密码进行修改。
步骤333,业务服务器根据密码修改指令运行第一脚本文件。
业务服务器可以通过运行第一脚本文件,将默认的用户名和密码修改为指定的用户名和密码。
步骤334,在第二类任务指令是操作系统的定制化指令时,节点控制器根据部署管理IP地址向业务服务器发送预存的第二脚本文件和定制化指令。
第二脚本文件可以是用于定制化操作系统的脚本文件,该第二脚本文件可以包括预定的应用程序的安装包。其中,对操作系统的定制化可以包括安装某些预定的应用程序。
步骤335,业务服务器根据定制化指令运行第二脚本文件。
在一种实现方式中,业务服务器可以通过运行第二脚本文件安装预定的应用程序。
步骤336,业务服务器向节点控制器发送第二类任务指令的执行结果。
对于第二类任务指令,业务服务器在执行完第二类任务指令后,可以将第二类任务指令的执行结果返回给节点控制器。
业务服务器对第二类任务指令的执行结果通常只包括一个步骤的执行结果。比如:在步骤331中,业务服务器安装完操作系统后,可以向节点控制器返回操作系统已成功安装的结果;又比如,在步骤333中,业务服务器在运行完第一脚本文件后,可以向节点控制器返回第一脚本文件已运行成功的结果;再比如,在步骤335中,业务服务器在运行完第二脚本文件后,可以向节点控制器返回第二脚本文件已运行成功的结果。
步骤337,节点控制器根据第二类任务指令的执行结果向处理模块发送第二管理任务的执行结果。
与步骤336对应的,节点控制器向中央控制器的处理模块发送的第二管理任务的执行结果也只包括一个步骤的执行结果。比如:当第二管理任务包括操作系统的安装指令时,第二管理任务的执行结果中可以包括操作系统以成功安装的结果;又比如,当第二管理任务包括操作系统的密码修改指令时,第二管理任务的执行结果中可以包括操作系统的密码已成功修改的结果;再比如,当第二管理任务中包括操作系统的定制化指令时,第二管理任务的执行结果可以包括操作系统已成功定制化的结果。
步骤338,处理模块接收节点控制器上报的第二管理任务的执行结果。
步骤339,处理模块根据第二管理任务的执行结果,检测操作系统是否部署完毕。
由于操作系统的部署通常包括多个流程,因此,节点控制器在每执行完一个第二管理任务后,都可以将第二管理任务的执行结果上报给中央控制器的处理模块,由中央控制器的处理模块确定是否需要执行下一个第二管理任务。
在实际应用中,当第二管理任务的执行结果为操作系统已安装完毕或操作系统的密码已成功修改时,表明操作系统尚未部署完毕;当第二管理任务的执行结果为操作系统已成功定制化时,表明操作系统部署完毕。
步骤340,若操作系统未部署完毕,则处理模块根据第二管理任务的结果,生成下一个第二管理任务。
作为步骤339的另一个分支,若中央控制器的处理模块检测到操作系统已部署完毕,则不再向节点控制器发送下一个第二管理任务。
在一种实施方式中,与步骤325对应的,若处理模块中原本存储有第二管理任务的任务状态,则处理模块需要对原本的任务状态进行更新。
在一种可能的实现中,当步骤339中第二管理任务的执行结果为操作系统已安装完毕时,中央控制器的处理模块可以生成携带有操作系统的密码修改指令和带外管理IP地址的下一个第二管理任务;当步骤339中的第二管理任务的执行结果为操作系统的密码已成功修改时,中央控制器的处理模块可以生成携带有操作系统的定制化指令和带外管理IP地址的下一个第二管理任务;当步骤339中的第二管理任务的执行结果为操作系统已成功定制化时,可以中央控制器的处理模块不再生成下一个第二管理任务。
在另一种可能的实现中,当步骤339中第二管理任务的执行结果为操作系统已安装完 毕时,中央控制器的处理模块可以生成携带有操作系统的定制化指令和带外管理IP地址的下一个第二管理任务;当步骤339中的第二管理任务的执行结果为操作系统已成功定制化时,中央控制器的处理模块可以生成携带有操作系统的密码修改指令和带外管理IP地址的下一个第二管理任务;当步骤339中的第二管理任务的执行结果为操作系统的密码已成功修改时,中央控制器的处理模块不再生成下一个第二管理任务。
在另一种可能的实现中,当步骤339中第二管理任务的执行结果为操作系统已安装完毕时,中央控制器的处理模块可以生成携带有操作系统的密码修改指令和带外管理IP地址的下一个第二管理任务;当步骤339中的第二管理任务的执行结果为操作系统的密码已成功修改时,中央控制器的处理模块不再生成下一个第二管理任务。
需要说明的是,本实施例对于步骤330、步骤332、步骤334的执行次数以及执行的先后顺序不进行限定。
步骤341,处理模块向节点控制器发送下一个第二管理任务。
步骤342,节点控制器接收处理模块发送的下一个第二管理任务。
对于下一个第二管理任务的执行请参照步骤328至步骤335。
需要说明的是,在步骤331、步骤333、步骤335之后,都需要执行步骤336至步骤339。也就是说,在操作系统部署任务中,每执行完一个第二管理任务,都需要向中央控制器的处理模块反馈执行结果,由中央控制器的处理模块判断是否需要执行下一个第二管理任务,直到操作系统部署完毕。
结合图3B和图3C中提供的CDN管理方法,对于操作系统的部署,可以包括以下步骤:
步骤1、通过第一任务指令对业务服务器关机。
步骤2、通过第一任务指令让业务服务器进入PXE。
步骤3、等待业务服务器进入PXE。
步骤4、通过第二任务指令进行RAID采集和修改。
步骤5、通过第二任务指令安装minios。
步骤6、通过第二任务指令在minios基础上进行操作系统安装,包括配置修改等。
步骤7、操作系统安装完成后通过第一任务指令进行Ping探测,通过第一任务指令进行SSH探测,通过第二任务指令进行密码修改。
步骤8、通过第二任务指令执行后置脚本,完成定制化配置,包括安装应用程序等。
在操作系统在部署过程中,节点控制器可以将业务服务器的状态和系统信息定期上报给中央控制器。其中,业务服务器的状态可以包括进入PXE状态、安装minios状态、安装业务系统状态等;系统信息可以包括业务服务器的网卡、内存等数据。
示例性的,图3D示出了操作系统部署的原理图。如图3D所示,首先执行S301,带外关机;然后执行S302,带外进PXE;然后执行S303,等待进入PXE;接着执行S304,判断是否进入PXE;若S304的判断结果为是,则执行S305,RAID检查;然后执行S307,判断RAID是否一致;若S307的判断结果为否,则执行S308,RAID修改;然后执行S309,minios安装;若S307的判断结果为是,则直接执行S309;在S309之后,执行S310,等待 进入minios;然后执行S311,判断是否进入minios;若S311的判断结果为是,则执行S312,OS安装;然后执行S314,等待系统启动;接着执行S315,PING检查;然后执行S316,SSH检查;然后执行S317,密码修改;然后执行S318,后置任务,后置任务执行完之后,操作系统部署成功。若S304的执行结果为否,执行S306,判断是否超时;若S306判断结果为是,则操作系统部署失败;若S306判断结果为否,跳到S303执行;若S311的判断结果为否,则执行S313,判断是否超时;若S313的判断结果为是,则操作系统部署失败;若S313的判断结果为否,跳到S310执行。
对于图3B和图3C中的CDN管理方法,在图3E所述的CDN管理方法的原理图中进行示例性的说明。如图3E所示,中央控制器110的API模块111执行S319,参数校验,IP白名单检测;S319检测为IP白名单,则执行S320,任务转发;然后中央控制器110的处理模块112执行S321,节点控制器的选取、命令匹配以及关键参数打包;然后处理模块112执行S323,任务调度,节点控制器121接收处理模块112的任务调度,执行S324,IPMI/SSH;业务服务器122执行S325,输出结果返回;节点控制器121执行S326,结果上报给处理模块112;处理模块112执行S322,任务状态记录;然后处理模块112执行S327,判断是否是部署类任务;若S327的判断结果为否,则执行S328,更新任务状态;若S327的判断结果为是,则执行S329,判断是否部署完毕;若S329的判断结构为是,则执行S328,更新任务状态;若S329的判断结果为否,则继续执行S330,任务调度。S330之后的流程与S323之后的流程相同。
综上所述,本申请实施例提供的CDN管理方法,可以通过中央控制器接收对CDN节点中的业务服务器进行远程管理的任务调用请求,根据任务调用请求生成管理任务,将管理任务发送给节点控制器,节点控制器执行该管理任务。由于在对业务服务器进行管理操作时,是由中央控制器通过任务调用请求对业务服务器进行远程管理,而不需要人工现场操作,从而在CDN节点的数量多且分布位置比较分散时,提高对CDN节点的管理效率。
另外,通过节点控制器为业务服务器分配管理IP地址,并将业务服务器的管理IP地址发送给中央控制器进行存储,可以使得中央控制器在接收到任务调用请求时,可以将管理任务发送给对应的节点控制器,这样,节点控制器在执行管理任务时,能够向对应的业务服务器发送脚本文件和执行脚本文件的执行指令,从而可以控制业务服务器可以根据执行指令执行脚本文件。
另外,由于可以通过将不同的任务指令生成不同的管理任务,因此,对于带外管理任务而言,可以通过带外网络传输,并且,对于部署管理任务而言,可以通过业务网络传输,这样不会造成业务网络的拥堵。
另外,针对第二管理任务,在第二管理任务执行完毕后,节点控制器可以将执行结果上报给中央控制器,由中央控制器检测是否需要发送下一个第二管理任务,使得中央控制器对CDN节点的业务服务器实现全自动化的操作系统部署。
通过检测发送任务所调用请求的运维客户端的IP地址是否为白名单IP地址,可以使得CDN管理系统能够安全有效的进行远程管理。
需要补充说明的是,由于安装操作系统时,需要镜像文件或脚本文件,以及节点控制 器在执行操作系统部署任务时,需要向目标业务服务器传输镜像文件或脚本文件,因此,节点控制器中需要保存镜像文件或脚本文件。由于CDN节点较多,会导致CDN管理系统对于节点控制器中的镜像文件和脚本文件的维护效率较低,因此CDN管理系统对节点控制器可以采用定期同步机制,具体请参见以下步骤中的描述:
s1,节点控制器每隔预定时间间隔向中央控制器请求检测镜像文件、第一脚本文件和第二脚本文件是否更新。
其中,镜像文件是可以用于安装操作系统的镜像文件,第一脚本文件可以是用于进行密码修改的镜像文件,第二脚本文件可以是用于定制化操作系统的镜像文件。
s2,当镜像文件、第一脚本文件和第二脚本文件中的至少一种更新时,节点控制器向中央控制器请求获取更新的镜像文件、第一脚本文件和第二脚本文件中的至少一种。
s3,中央控制器在接收到节点控制器获取更新的镜像文件、第一脚本文件和第二脚本文件中的至少一种的请求时,通过CDN加速服务器向节点控制器发送镜像文件、第一脚本文件和第二脚本文件中的至少一种。
由于镜像文件和脚本文件的数据包较大,并且中央控制器和节点控制器有可能使用的是不同的运营商网络。因此,当中央控制器向节点控制器传输镜像文件和脚本文件时,需要跨运营商网络来进行传输,这样,传输速度通常较慢。为了加快镜像文件和脚本文件的传输,中央控制器可以通过CDN加速服务器向节点控制器发送镜像文件和脚本文件。
图4是本申请一个实施例中提供的CDN管理装置的结构方框图,该CDN管理装置以应用在图1A所示的CDN管理系统100中举例说明。如图4所示,该CDN管理装置包括:接收模块410、生成模块420和发送模块430。
接收模块410,用于实现上述步骤201、步骤305、步骤309、步骤318、步骤323、步骤338以及其他任意隐含或公开的与接收相关的功能。
生成模块420,用于实现上述步骤202、步骤340以及其他任意隐含或公开的与生成相关的功能。
发送模块430,用于实现上述步骤203、步骤312、步骤326、步骤341、步骤s3以及其他任意隐含或公开的与发送相关的功能。
在一种实施方式中,生成模块420,包括:查询单元和生成单元。
查询单元,用于实现上述步骤310、步骤324以及其他任意隐含或公开的与查询相关的功能。
生成单元,用于实现上述步骤311、步骤325以及其他任意隐含或公开的与生成相关的功能。
在一种实施方式中,该CDN管理装置还包括:记录模块和检测模块。
记录模块,用于实现上述步骤319以及其他任意隐含或公开的与记录相关的功能。
检测模块,用于实现上述步骤339以及其他任意隐含或公开的与检测相关的功能。
在一种实施方式中,接收模块410,包括:接收单元、检测单元和确定单元。
接收单元,用于实现上述步骤306、步骤320以及其他任意隐含或公开的与接收相关的功能。
检测单元,用于实现上述步骤307、步骤321以及其他任意隐含或公开的与检测相关的功能。
确定单元,用于实现上述步骤308、步骤322以及其他任意隐含或公开的与确定相关的功能。
综上所述,本申请实施例提供的CDN管理装置,通过中央控制器接收对CDN节点中的业务服务器进行远程管理的任务调用请求,根据任务调用请求生成管理任务,将管理任务发送给节点控制器,节点控制器根据管理任务控制目标业务服务器执行该管理任务。由于在对业务服务器进行管理操作时是通过任务调用请求对业务服务器进行远程管理,而不需要人工现场操作,使得对数量多、分布位置不同的CDN节点进行管理的效率提高。
需要说明的是:上述实施例中提供的CDN管理装置在管理CDN时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将中央控制器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的CDN管理装置与CDN管理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图5是本申请另一个实施例中提供的CDN管理装置的结构方框图,该CDN管理装置以应用在图1A所示的CDN管理系统100中举例说明。如图5所示,该CDN管理装置包括:接收模块510和执行模块520。
接收模块510,用于实现上述步骤204、步骤301、步骤302、步骤313、步骤327、步骤336、步骤342以及其他任意隐含或公开的与接收相关的功能。
执行模块520,用于实现上述步骤205以及其他任意隐含或公开的与执行相关的功能。
在一种实施方式中,该CDN管理装置还包括:分配模块、发送模块、检测模块、获取模块和读取模块。
分配模块,用于实现上述步骤303以及其他任意隐含或公开的与分配相关的功能。
发送模块,用于实现上述步骤304、步骤317、步骤337以及其他任意隐含或公开的与发送相关的功能。
检测模块,用于实现上述步骤s1以及其他任意隐含或公开的与检测相关的功能。
获取模块,用于实现上述步骤s2以及其他任意隐含或公开的与获取相关的功能。
读取模块,用于实现上述步骤316以及其他任意隐含或公开的与读取相关的功能。
在一种实施方式中,分配模块,包括:第一分配单元和第二分配单元。
第一分配单元,用于实现上述步骤S1以及其他任意隐含或公开的与分配相关的功能。
第二分配单元,用于实现上述步骤S2以及其他任意隐含或公开的与分配相关的功能。
在一种实施方式中,控制模块,包括:解析单元和执行单元。
解析单元,用于实现上述步骤314、步骤328以及其他任意隐含或公开的与解析相关的功能。
执行单元,用于实现上述步骤315、步骤329、步骤330、步骤331、步骤332、步骤333、步骤334、步骤335以及其他任意隐含或公开的与执行相关的功能。
综上所述,本申请实施例提供的CDN管理装置,通过中央控制器接收对CDN节点中 的业务服务器进行远程管理的任务调用请求,根据任务调用请求生成管理任务,将管理任务发送给节点控制器,节点控制器根据管理任务控制目标业务服务器执行该管理任务。由于在对业务服务器进行管理操作时是通过任务调用请求对业务服务器进行远程管理,而不需要人工现场操作,使得对数量多、分布位置不同的CDN节点进行管理的效率提高。
需要说明的是:上述实施例中提供的CDN管理装置在管理CDN时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将节点控制器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的CDN管理装置与CDN管理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例还提供了一种CDN管理系统,该CDN管理系统包括中央控制器和N个CDN节点,N为正整数;每个CDN节点包括节点控制器、至少一个业务服务器和交换机。
中央控制器包括如图4所示的CDN管理装置,节点控制器包括如图5所示的CDN管理装置。
图6是本申请一个实施例中提供的服务器的结构示意图。该服务器可以是图1A所示的业务服务器122,也可以是CDN加速服务器150。具体来讲:服务器600包括处理器,即中央处理单元(CPU)601、包括随机存取存储器(RAM)602和只读存储器(ROM)603的系统存储器604,以及连接系统存储器604和中央处理单元601的系统总线605。所述服务器600还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)606,和用于存储操作系统613、应用程序614和其他程序模块615的大容量存储设备607。
所述基本输入/输出系统606包括有用于显示信息的显示器608和用于用户输入信息的诸如鼠标、键盘之类的输入设备609。其中所述显示器608和输入设备609都通过连接到系统总线605的输入/输出控制器610连接到中央处理单元601。所述基本输入/输出系统606还可以包括输入输出控制器610以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入/输出控制器610还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备607通过连接到系统总线605的大容量存储控制器(未示出)连接到中央处理单元601。所述大容量存储设备607及其相关联的计算机可读介质为服务器600提供非易失性存储。也就是说,所述大容量存储设备607可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器604和大容量存储设备607可以统称为存储器。所述中央处理单元601可以根据所述存储器中的指令执行前述各个实施例所述的 一种CDN管理方法中的任意一种实施方式
根据本申请的各种实施例,所述服务器600还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器600可以通过连接在所述系统总线605上的网络接口单元611连接到网络612,或者说,也可以使用网络接口单元611来连接到其他类型的网络或远程计算机系统(未示出)。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质存储有一个或者一个以上程序,该一个或者一个以上程序被一个或者一个以上的处理器用来执行上述CDN管理方法。
本申请实施例还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例所述的一种CDN管理方法中的任意一种实施方式。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (24)

  1. 一种内容分发网络CDN管理系统,所述系统包括中央控制器和N个CDN节点,N为正整数;每个所述CDN节点包括节点控制器、至少一个业务服务器和交换机;所述节点控制器与所述中央控制器相连;所述交换机用于连接所述节点控制器与各个所述业务服务器;
    所述中央控制器用于接收任务调用请求,根据所述任务调用请求生成管理任务,将所述管理任务发送给所述节点控制器;其中,所述任务调用请求用于请求对所述CDN节点中的所述业务服务器进行远程管理;
    所述节点控制器用于接收所述中央控制器发送的所述管理任务,并执行所述管理任务以控制所述业务服务器;其中,所述管理任务是所述中央控制器根据所述任务调用请求所生成的。
  2. 根据权利要求1所述的系统,
    所述节点控制器用于根据所述业务服务器发送的动态主机配置协议DHCP请求,为所述业务服务器分配管理IP地址,向所述中央控制器发送所述业务服务器的所述管理IP地址;其中,所述管理IP地址与所述业务服务器提供业务时的IP地址不同;
    所述中央控制器用于接收所述节点控制器上报的所述业务服务器的管理IP地址并进行存储;
    所述中央控制器用于在接收到所述任务调用请求时,查询与所述任务调用请求对应的任务指令和所述业务服务器的所述管理IP地址,生成携带有所述任务指令和所述管理IP地址的管理任务。
  3. 一种内容分发网络CDN管理方法,所述方法包括:
    接收任务调用请求,所述任务调用请求用于请求对CDN节点中的业务服务器进行远程管理,所述CDN节点包括节点控制器和至少一个业务服务器;
    根据所述任务调用请求生成管理任务;
    将所述管理任务发送给所述节点控制器。
  4. 根据权利要求3所述的方法,所述接收任务调用请求之前,还包括:
    接收所述节点控制器上报的所述业务服务器的管理IP地址;所述管理IP地址是所述节点控制器接收到所述业务服务器发送的动态主机配置协议DHCP请求后,为所述业务服务器分配的地址,所述管理IP地址与所述业务服务器提供业务时的IP地址不同;
    所述根据所述任务调用请求生成管理任务,包括:
    查询与所述任务调用请求对应的任务指令和所述业务服务器的所述管理IP地址;
    生成携带有所述任务指令和所述管理IP地址的管理任务。
  5. 根据权利要求4所述的方法,所述管理IP地址包括:带外管理IP地址和部署管理IP地址;
    所述生成携带有所述任务指令和所述管理IP地址的管理任务,包括:
    在所述任务指令属于第一类任务指令时,生成携带有所述第一类任务指令和所述带外管理IP地址的第一管理任务;
    在所述任务指令属于第二类任务指令时,生成携带有所述第二类任务指令和所述部署管理IP地址的第二管理任务;
    其中,所述第一类任务指令包括:开机指令、关机指令、重启指令、进入PXE环境指令、PING探测指令和SSH探测指令中的至少一种,所述PXE是安装操作系统时的预启动环境;所述第二类任务指令包括:所述操作系统的安装指令、所述操作系统的密码修改指令和所述操作系统的定制化指令中的至少一种。
  6. 根据权利要求5所述的方法,所述将所述管理任务发送给所述节点控制器之后,还包括:
    接收所述节点控制器上报的所述第一管理任务的执行结果;
    根据所述第一管理任务的执行结果,记录所述第一管理任务的任务状态。
  7. 根据权利要求5所述的方法,所述将所述管理任务发送给所述节点控制器之后,还包括:
    接收所述节点控制器上报的所述第二管理任务的执行结果;
    根据所述第二管理任务的执行结果,检测所述操作系统是否部署完毕;
    若所述操作系统未部署完毕,则根据所述第二管理任务的执行结果,生成下一个第二管理任务;
    向所述节点控制器发送所述下一个第二管理任务。
  8. 根据权利要求3至7任一所述的方法,所述接收任务调用请求,包括:
    通过预定API接口接收运维客户端发送的所述任务调用请求;
    检测所述运维客户端的IP地址是否属于白名单IP地址;
    若所述运维客户端的IP地址属于所述白名单IP地址,则确定所述任务调用请求为有效的所述任务调用请求。
  9. 根据权利要求5至7任一所述的方法,所述方法还包括:
    每隔预定时间间隔通过CDN加速服务器向所述节点控制器发送镜像文件、第一脚本文件和第二脚本文件中的至少一种;
    其中,所述镜像文件是用于安装所述操作系统的镜像文件,所述第一脚本文件是用于进行密码修改的镜像文件,所述第二脚本文件是用于定制化所述操作系统的镜像文件。
  10. 一种内容分发网络CDN管理方法,用于CDN节点的节点控制器中,所述CDN节点包括所述节点控制器和至少一个业务服务器,所述方法包括:
    接收中央控制器发送的管理任务,所述管理任务是所述中央控制器根据任务调用请求所生成的,所述任务调用请求用于请求对所述CDN节点中的所述业务服务器进行远程管 理;
    执行所述管理任务。
  11. 根据权利要求10所述的方法,所述接收中央控制器发送的管理任务之前,还包括:
    接收所述业务服务器发送的动态主机配置协议DHCP请求;
    根据所述DHCP请求向所述业务服务器分配管理IP地址,所述管理IP地址与所述业务服务器提供业务时的IP地址不同;
    向所述中央控制器发送所述业务服务器的所述管理IP地址。
  12. 根据权利要求11所述的方法,所述根据所述DHCP请求向所述业务服务器分配管理IP地址,包括:
    从第一虚拟局域网对应的第一IP网段中,向所述业务服务器分配带外管理IP地址;
    从第二虚拟局域网对应的第二IP网段中,向所述业务服务器分配部署管理IP地址;
    其中,所述带外管理IP地址是用于执行第一类任务指令时的IP地址,所述第一类任务指令包括:开机指令、关机指令、重启指令、进入PXE环境指令、PING探测指令和SSH探测指令中的至少一种,所述PXE是安装操作系统时的预启动环境;所述部署管理IP地址是用于执行第二类任务指令时的IP地址,所述第二类任务指令包括:所述操作系统的安装指令、所述操作系统的密码修改指令和所述操作系统的定制化指令中的至少一种。
  13. 根据权利要求12所述的方法,所述管理任务包括:携带有所述第一类任务指令和所述带外管理IP地址的第一管理任务;
    所述执行所述管理任务,包括:
    从所述第一管理任务中解析得到所述第一类任务指令和所述带外管理IP地址;
    根据所述第一类任务指令和所述带外管理IP地址执行所述第一管理任务。
  14. 根据权利要求13所述的方法,所述控制所述目标业务服务器执行所述管理任务之后,还包括:
    直接读取所述第一管理任务的执行结果;
    向所述中央控制器发送所述第一管理任务的执行结果,所述中央控制器用于根据所述第一管理任务的执行结果记录所述第一管理任务的任务状态。
  15. 根据权利要求12所述的方法,所述管理任务包括:携带有所述第二类任务指令和所述部署管理IP地址的第二管理任务;
    所述执行所述管理任务,包括:
    从所述第二管理任务中解析得到所述第二类任务指令和所述部署管理IP地址;
    根据所述第二类任务指令和所述部署管理IP地址执行所述第二管理任务;
    在所述第二类任务指令是所述操作系统的安装指令时,根据所述部署管理IP地址向所述业务服务器发送预存的镜像文件和所述安装指令,所述业务服务器用于根据所述安装指令将所述镜像文件安装为所述操作系统;
    在所述第二类任务指令是所述操作系统的密码修改指令时,根据所述部署管理IP地址向所述业务服务器发送预存的第一脚本文件和所述密码修改指令,所述业务服务器用于根据所述密码修改指令运行所述第一脚本文件,所述第一脚本文件是用于进行密码修改的脚本文件;
    在所述第二类任务指令是所述操作系统的定制化指令时,根据所述部署管理IP地址向所述业务服务器发送预存的第二脚本文件和所述定制化指令,所述业务服务器用于根据所述定制化指令运行所述第二脚本文件,所述第二脚本文件是用于定制化所述操作系统的脚本文件。
  16. 根据权利要求15所述的方法,所述控制所述目标业务服务执行所述管理任务之后,还包括:
    接收所述业务服务器发送的所述第二类任务指令的执行结果;
    根据所述第二类任务指令的执行结果向所述中央控制器发送所述第二管理任务的执行结果;
    接收所述中央控制器发送的下一个第二管理任务,所述下一个第二管理任务是所述中央控制器在根据所述执行结果检测到所述操作系统未部署完毕时,根据所述执行结果生成并发送的。
  17. 根据权利要求15所述的方法,所述方法还包括:
    每隔预定时间间隔向所述中央控制器请求检测镜像文件、第一脚本文件和第二脚本文件是否更新;
    当所述镜像文件、所述第一脚本文件和所述第二脚本文件中的至少一种更新时,向所述中央控制器请求获取更新的所述镜像文件、所述第一脚本文件和所述第二脚本文件中的至少一种;
    其中,所述镜像文件是用于安装所述操作系统的镜像文件,所述第一脚本文件是用于进行密码修改的镜像文件,所述第二脚本文件是用于定制化所述操作系统的镜像文件。
  18. 一种服务器,所述服务器包括处理器以及存储器:
    所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
    所述处理器用于根据所述程序代码中的指令执行权利要求3-17任一项所述的内容分发网络CDN管理方法。
  19. 一种计算机可读存储介质,所述存储介质用于存储程序代码,所述程序代码用于执行权利要求3-9任一项所述的内容分发网络CDN管理方法。
  20. 一种计算机可读存储介质,所述存储介质用于存储程序代码,所述程序代码用于执行权利要求10-17任一项所述的内容分发网络CDN管理方法。
  21. 一种包括指令的计算机程序产品,当其在计算机上运行时,使得所述计算机执行权利要求3-9任一项所述的内容分发网络CDN管理方法。
  22. 一种包括指令的计算机程序产品,当其在计算机上运行时,使得所述计算机执行权利要求10-17任一项所述的内容分发网络CDN管理方法。
  23. 一种内容分发网络CDN管理方法,应用于中央控制器,所述中央控制器执行权利要求3-9任意一项所述的方法。
  24. 一种内容分发网络CDN管理方法,应用于节点控制器,所述节点控制器执行权利要求10-17任意一项所述的方法。
PCT/CN2017/114579 2016-12-19 2017-12-05 Cdn管理系统、方法及装置 WO2018113514A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/353,150 US10812597B2 (en) 2016-12-19 2019-03-14 Content delivery network (CDN) management system, method, and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201611176727.0 2016-12-19
CN201611176727.0A CN108206847B (zh) 2016-12-19 2016-12-19 Cdn管理系统、方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/353,150 Continuation US10812597B2 (en) 2016-12-19 2019-03-14 Content delivery network (CDN) management system, method, and apparatus

Publications (1)

Publication Number Publication Date
WO2018113514A1 true WO2018113514A1 (zh) 2018-06-28

Family

ID=62602371

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/114579 WO2018113514A1 (zh) 2016-12-19 2017-12-05 Cdn管理系统、方法及装置

Country Status (3)

Country Link
US (1) US10812597B2 (zh)
CN (1) CN108206847B (zh)
WO (1) WO2018113514A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981795A (zh) * 2019-04-09 2019-07-05 北京奇艺世纪科技有限公司 资源请求调度方法和装置
CN111786906A (zh) * 2020-08-06 2020-10-16 成都西加云杉科技有限公司 Ap管理方法、装置和电子设备
CN114884812A (zh) * 2022-04-20 2022-08-09 深圳市同泰怡信息技术有限公司 一种多平台共用同一个pxe服务器自动安装os的方法及装置

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10816964B1 (en) * 2018-04-11 2020-10-27 Amazon Technologies, Inc. Self-recovering orchestrator for control systems
CN110768812B (zh) * 2018-07-26 2022-11-08 贵州白山云科技股份有限公司 一种服务器管理系统及方法
CN110035136A (zh) * 2019-04-18 2019-07-19 北京弘睿博通国际教育科技有限公司 一种多vlan多网段网络中提供全网统一dhcp服务的方法
CN110430101B (zh) * 2019-08-28 2021-09-03 杭州领智云画科技有限公司 应用于cdn的服务指标数据采集方法、装置、设备及系统
US11088934B2 (en) * 2019-10-10 2021-08-10 Cisco Technology, Inc. Dynamic discovery of service nodes in a network
CN111104376B (zh) * 2019-12-19 2023-04-07 湖南快乐阳光互动娱乐传媒有限公司 资源文件查询方法及装置
CN113110796B (zh) * 2020-01-13 2024-06-28 顺丰科技有限公司 数据管理方法、装置、服务器及存储介质
CN111949902A (zh) * 2020-08-17 2020-11-17 上海七牛信息技术有限公司 一种cdn内容刷新系统及方法
CN112202643B (zh) * 2020-10-12 2022-03-29 成都知道创宇信息技术有限公司 网络检测方法、装置、测试主机及存储介质
CN112559057B (zh) * 2020-11-17 2022-05-27 新华三技术有限公司成都分公司 一种关机处理方法和装置
CN112636951A (zh) * 2020-12-07 2021-04-09 深圳市高德信通信股份有限公司 一种cdn节点的管理系统
CN112671923B (zh) * 2020-12-29 2021-11-30 深圳一科互联有限公司 一种统一接口服务通讯调度方法及装置
CN113300936B (zh) * 2021-02-01 2023-04-14 阿里巴巴集团控股有限公司 Cdn节点、边缘节点的信令适配方法、设备及存储介质
CN114050971B (zh) * 2021-11-09 2024-02-02 网易(杭州)网络有限公司 服务器配置方法及装置、系统、电子设备、存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102064966A (zh) * 2010-12-29 2011-05-18 北京世纪互联工程技术服务有限公司 一种配置方法、服务器、设备和系统
CN102572530A (zh) * 2011-12-30 2012-07-11 中兴通讯股份有限公司 流媒体业务频道调整方法及系统
CN103379097A (zh) * 2012-04-18 2013-10-30 北京百度网讯科技有限公司 Cdn业务自动配置系统及方法
US20140068025A1 (en) * 2012-08-29 2014-03-06 Telefonaktiebolaget L M Ericsson (Publ) Method and Node For Automatically Exchanging Network Service Provider Information

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6108703A (en) * 1998-07-14 2000-08-22 Massachusetts Institute Of Technology Global hosting system
US6970939B2 (en) * 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
EP1504370A4 (en) * 2002-05-14 2008-05-21 Akamai Tech Inc COMPANY DELIVERY NETWORK WITH A CENTRALIZED CONTROL TO COORDINATE A LOT OF CONTENT SERVER
US8255489B2 (en) * 2006-08-18 2012-08-28 Akamai Technologies, Inc. Method of data collection among participating content providers in a distributed network
US10264029B2 (en) * 2009-10-30 2019-04-16 Time Warner Cable Enterprises Llc Methods and apparatus for packetized content delivery over a content delivery network
CN101977248A (zh) * 2010-10-25 2011-02-16 浪潮电子信息产业股份有限公司 一种利用域名进行服务器带外管理的方法
ES2402037B1 (es) * 2011-10-13 2014-04-30 Telefónica, S.A. Método y sistema para realizar un proceso de adquisición de contenido distribuido para una red de distribución de contenido
US10652087B2 (en) * 2012-12-13 2020-05-12 Level 3 Communications, Llc Content delivery framework having fill services
US9705754B2 (en) * 2012-12-13 2017-07-11 Level 3 Communications, Llc Devices and methods supporting content delivery with rendezvous services
US20140337472A1 (en) * 2012-12-13 2014-11-13 Level 3 Communications, Llc Beacon Services in a Content Delivery Framework
CN103236949B (zh) * 2013-04-27 2016-12-28 北京搜狐新媒体信息技术有限公司 一种服务器集群的监控方法、装置与系统
CN103346909A (zh) * 2013-06-19 2013-10-09 贵州电网公司电力调度控制中心 一种电力通信带外网络管理系统
WO2015027246A1 (en) * 2013-08-23 2015-02-26 Samsung Electronics Co., Ltd. Mobile software defined networking (mobisdn)
CN105981400A (zh) * 2014-01-10 2016-09-28 汤姆逊许可公司 配置为接收划分成片段的多媒体内容的客户终端获得网络信息的方法
CN104065520A (zh) * 2014-07-21 2014-09-24 中广有线信息网络有限公司 双通道网络管理实现方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102064966A (zh) * 2010-12-29 2011-05-18 北京世纪互联工程技术服务有限公司 一种配置方法、服务器、设备和系统
CN102572530A (zh) * 2011-12-30 2012-07-11 中兴通讯股份有限公司 流媒体业务频道调整方法及系统
CN103379097A (zh) * 2012-04-18 2013-10-30 北京百度网讯科技有限公司 Cdn业务自动配置系统及方法
US20140068025A1 (en) * 2012-08-29 2014-03-06 Telefonaktiebolaget L M Ericsson (Publ) Method and Node For Automatically Exchanging Network Service Provider Information

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981795A (zh) * 2019-04-09 2019-07-05 北京奇艺世纪科技有限公司 资源请求调度方法和装置
CN109981795B (zh) * 2019-04-09 2021-09-07 北京奇艺世纪科技有限公司 资源请求调度方法和装置
CN111786906A (zh) * 2020-08-06 2020-10-16 成都西加云杉科技有限公司 Ap管理方法、装置和电子设备
CN111786906B (zh) * 2020-08-06 2023-02-03 成都西加云杉科技有限公司 Ap管理方法、装置和电子设备
CN114884812A (zh) * 2022-04-20 2022-08-09 深圳市同泰怡信息技术有限公司 一种多平台共用同一个pxe服务器自动安装os的方法及装置

Also Published As

Publication number Publication date
US20190208021A1 (en) 2019-07-04
CN108206847B (zh) 2020-09-04
US10812597B2 (en) 2020-10-20
CN108206847A (zh) 2018-06-26

Similar Documents

Publication Publication Date Title
WO2018113514A1 (zh) Cdn管理系统、方法及装置
US11687422B2 (en) Server clustering in a computing-on-demand system
US10635558B2 (en) Container monitoring method and apparatus
US10353728B2 (en) Method, system and device for managing virtual machine software in cloud environment
WO2019184164A1 (zh) 自动部署Kubernetes从节点的方法、装置、终端设备及可读存储介质
CN102932408B (zh) 一种服务器集群的管理方法和平台
CN111431740A (zh) 数据的传输方法、装置、设备及计算机可读存储介质
US20200034178A1 (en) Virtualization agnostic orchestration in a virtual computing system
US8832680B2 (en) Installation event counting apparatus and package creation method
WO2016037479A1 (zh) 虚拟化网络功能vnf优化方法、装置及系统
CN111698283B (zh) 分布式集群主机的管控方法、装置、设备及存储介质
JP2007156587A (ja) 電源制御方法およびこれを実現するシステム
WO2011148672A1 (ja) 業務計算機割当て方法及び装置
CN102110197A (zh) 多核处理器的计算环境中实现tmp的方法及其系统
CN103595801A (zh) 一种云计算系统及其虚拟机实时监控方法
CN108667639B (zh) 一种私有云环境下的资源管理方法及管理服务器
JP2013218687A (ja) サーバー監視システム及びその方法
US20130194630A1 (en) Management system, image forming apparatus, management system control method, and image forming apparatus control method
CN103685608A (zh) 一种自动配置安全虚拟机ip地址的方法及装置
CN103207965A (zh) 一种虚拟环境下License认证的方法及装置
CN112948008A (zh) 一种基于Ironic管理物理裸机的方法
CN104253792A (zh) 基板管理控制器虚拟系统及方法
CN107659621B (zh) 一种raid控制卡配置方法及装置
CN114285842A (zh) 一种基于云桌面的电子阅览室搭建方法及系统
CN116820686B (zh) 物理机的部署方法、虚拟机和容器统一监控的方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17883331

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17883331

Country of ref document: EP

Kind code of ref document: A1