blob: 317dd8a8ce5a7192c81d56f190584bb2078aa7d9 [file] [log] [blame]
..
.. Copyright 2015 Comcast Cable Communications Management, LLC
..
.. Licensed under the Apache License, Version 2.0 (the "License");
.. you may not use this file except in compliance with the License.
.. You may obtain a copy of the License at
..
.. http://www.apache.org/licenses/LICENSE-2.0
..
.. Unless required by applicable law or agreed to in writing, software
.. distributed under the License is distributed on an "AS IS" BASIS,
.. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
.. See the License for the specific language governing permissions and
.. limitations under the License.
..
.. _to-api-v12-server:
Server
======
.. _to-api-v12-servers-route:
/api/1.2/servers
++++++++++++++++
**GET /api/1.2/servers.json**
Retrieves properties of CDN servers.
Authentication Required: Yes
**Response Properties**
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| Parameter | Type | Description |
+====================+========+============================================================================================================+
| ``cachegroup`` | string | The cache group name (see :ref:`to-api-v12-cachegroup`). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``domainName`` | string | The domain name part of the FQDN of the cache. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``hostName`` | string | The host name part of the cache. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``id`` | string | The server id (database row number). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``iloIpAddress`` | string | The IPv4 address of the lights-out-management port. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``iloIpGateway`` | string | The IPv4 gateway address of the lights-out-management port. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``iloIpNetmask`` | string | The IPv4 netmask of the lights-out-management port. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``iloPassword`` | string | The password of the of the lights-out-management user (displays as ****** unless you are an 'admin' user). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``iloUsername`` | string | The user name for lights-out-management. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``interfaceMtu`` | string | The Maximum Transmission Unit (MTU) to configure for ``interfaceName``. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``interfaceName`` | string | The network interface name used for serving traffic. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``ip6Address`` | string | The IPv6 address/netmask for ``interfaceName``. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``ip6Gateway`` | string | The IPv6 gateway for ``interfaceName``. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``ipAddress`` | string | The IPv4 address for ``interfaceName``. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``ipGateway`` | string | The IPv4 gateway for ``interfaceName``. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``ipNetmask`` | string | The IPv4 netmask for ``interfaceName``. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``lastUpdated`` | string | The Time and Date for the last update for this server. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``mgmtIpAddress`` | string | The IPv4 address of the management port (optional). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``mgmtIpGateway`` | string | The IPv4 gateway of the management port (optional). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``mgmtIpNetmask`` | string | The IPv4 netmask of the management port (optional). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``physLocation`` | string | The physical location name (see :ref:`to-api-v12-phys-loc`). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``profile`` | string | The assigned profile name (see :ref:`to-api-v12-profile`). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``rack`` | string | A string indicating rack location. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``routerHostName`` | string | The human readable name of the router. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``routerPortName`` | string | The human readable name of the router port. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``status`` | string | The Status string (See :ref:`to-api-v12-status`). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``tcpPort`` | string | The default TCP port on which the main application listens (80 for a cache in most cases). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``type`` | string | The name of the type of this server (see :ref:`to-api-v12-type`). |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``xmppId`` | string | Deprecated. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
| ``xmppPasswd`` | string | Deprecated. |
+--------------------+--------+------------------------------------------------------------------------------------------------------------+
**Response Example** ::
{
"response": [
{
"cachegroup": "us-il-chicago",
"domainName": "chi.kabletown.net",
"hostName": "atsec-chi-00",
"id": "19",
"iloIpAddress": "172.16.2.6",
"iloIpGateway": "172.16.2.1",
"iloIpNetmask": "255.255.255.0",
"iloPassword": "********",
"iloUsername": "",
"interfaceMtu": "9000",
"interfaceName": "bond0",
"ip6Address": "2033:D0D0:3300::2:2/64",
"ip6Gateway": "2033:D0D0:3300::2:1",
"ipAddress": "10.10.2.2",
"ipGateway": "10.10.2.1",
"ipNetmask": "255.255.255.0",
"lastUpdated": "2015-03-08 15:57:32",
"mgmtIpAddress": "",
"mgmtIpGateway": "",
"mgmtIpNetmask": "",
"physLocation": "plocation-chi-1",
"profile": "EDGE1_CDN1_421_SSL",
"rack": "RR 119.02",
"routerHostName": "rtr-chi.kabletown.net",
"routerPortName": "2",
"status": "ONLINE",
"tcpPort": "80",
"type": "EDGE",
"xmppId": "atsec-chi-00-dummyxmpp",
"xmppPasswd": "**********"
},
{
... more server data
}
]
}
|
**GET /api/1.2/servers/summary.json**
Retrieves a count of CDN servers by type.
Authentication Required: Yes
**Response Properties**
+-----------+--------+------------------------------------------------------------------------+
| Parameter | Type | Description |
+===========+========+========================================================================+
| ``count`` | int | The number of servers of this type in this instance of Traffic Ops. |
+-----------+--------+------------------------------------------------------------------------+
| ``type`` | string | The name of the type of the server count (see :ref:`to-api-v12-type`). |
+-----------+--------+------------------------------------------------------------------------+
**Response Example** ::
{
"response": [
{
"count": 4,
"type": "CCR"
},
{
"count": 55,
"type": "EDGE"
},
{
"type": "MID",
"count": 18
},
{
"count": 0,
"type": "REDIS"
},
{
"count": 4,
"type": "RASCAL"
}
}
|
**GET /api/1.2/servers/hostname/:name/details.json**
Retrieves the details of a server.
Authentication Required: Yes
**Request Route Parameters**
+----------+----------+----------------------------------+
| Name | Required | Description |
+==========+==========+==================================+
| ``name`` | yes | The host name part of the cache. |
+----------+----------+----------------------------------+
**Response Properties**
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| Parameter | Type | Description |
+======================+========+=============================================================================================================+
| ``cachegroup`` | string | The cache group name (see :ref:`to-api-v12-cachegroup`). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``deliveryservices`` | array | Array of strings with the delivery service ids assigned (see :ref:`to-api-v12-ds`). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``domainName`` | string | The domain name part of the FQDN of the cache. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``hardwareInfo`` | hash | Hwinfo struct (see :ref:`to-api-v12-hwinfo`). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``hostName`` | string | The host name part of the cache. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``id`` | string | The server id (database row number). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``iloIpAddress`` | string | The IPv4 address of the lights-out-management port. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``iloIpGateway`` | string | The IPv4 gateway address of the lights-out-management port. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``iloIpNetmask`` | string | The IPv4 netmask of the lights-out-management port. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``iloPassword`` | string | The password of the of the lights-out-management user (displays as ****** unless you are an 'admin' user). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``iloUsername`` | string | The user name for lights-out-management. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``interfaceMtu`` | string | The Maximum Transmission Unit (MTU) to configure for ``interfaceName``. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``interfaceName`` | string | The network interface name used for serving traffic. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``ip6Address`` | string | The IPv6 address/netmask for ``interfaceName``. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``ip6Gateway`` | string | The IPv6 gateway for ``interfaceName``. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``ipAddress`` | string | The IPv4 address for ``interfaceName``. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``ipGateway`` | string | The IPv4 gateway for ``interfaceName``. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``ipNetmask`` | string | The IPv4 netmask for ``interfaceName``. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``lastUpdated`` | string | The Time/Date of the last update for this server. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``mgmtIpAddress`` | string | The IPv4 address of the management port (optional). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``mgmtIpGateway`` | string | The IPv4 gateway of the management port (optional). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``mgmtIpNetmask`` | string | The IPv4 netmask of the management port (optional). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``physLocation`` | string | The physical location name (see :ref:`to-api-v12-phys-loc`). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``profile`` | string | The assigned profile name (see :ref:`to-api-v12-profile`). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``rack`` | string | A string indicating rack location. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``routerHostName`` | string | The human readable name of the router. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``routerPortName`` | string | The human readable name of the router port. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``status`` | string | The Status string (See :ref:`to-api-v12-status`). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``tcpPort`` | string | The default TCP port on which the main application listens (80 for a cache in most cases). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``type`` | string | The name of the type of this server (see :ref:`to-api-v12-type`). |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``xmppId`` | string | Deprecated. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
| ``xmppPasswd`` | string | Deprecated. |
+----------------------+--------+-------------------------------------------------------------------------------------------------------------+
**Response Example** ::
{
"response": {
"cachegroup": "us-il-chicago",
"deliveryservices": [
"1",
"2",
"3",
"4"
],
"domainName": "chi.kabletown.net",
"hardwareInfo": {
"Physical Disk 0:1:3": "D1S2",
"Physical Disk 0:1:2": "D1S2",
"Physical Disk 0:1:15": "D1S2",
"Power Supply.Slot.2": "04.07.15",
"Physical Disk 0:1:24": "YS08",
"Physical Disk 0:1:1": "D1S2",
"Model": "PowerEdge R720xd",
"Physical Disk 0:1:22": "D1S2",
"Physical Disk 0:1:18": "D1S2",
"Enterprise UEFI Diagnostics": "4217A5",
"Lifecycle Controller": "1.0.8.42",
"Physical Disk 0:1:8": "D1S2",
"Manufacturer": "Dell Inc.",
"Physical Disk 0:1:6": "D1S2",
"SysMemTotalSize": "196608",
"PopulatedDIMMSlots": "24",
"Physical Disk 0:1:20": "D1S2",
"Intel(R) Ethernet 10G 2P X520 Adapter": "13.5.7",
"Physical Disk 0:1:14": "D1S2",
"BACKPLANE FIRMWARE": "1.00",
"Dell OS Drivers Pack, 7.0.0.29, A00": "7.0.0.29",
"Integrated Dell Remote Access Controller": "1.57.57",
"Physical Disk 0:1:5": "D1S2",
"ServiceTag": "D6XPDV1",
"PowerState": "2",
"Physical Disk 0:1:23": "D1S2",
"Physical Disk 0:1:25": "D903",
"BIOS": "1.3.6",
"Physical Disk 0:1:12": "D1S2",
"System CPLD": "1.0.3",
"Physical Disk 0:1:4": "D1S2",
"Physical Disk 0:1:0": "D1S2",
"Power Supply.Slot.1": "04.07.15",
"PERC H710P Mini": "21.0.2-0001",
"PowerCap": "689",
"Physical Disk 0:1:16": "D1S2",
"Physical Disk 0:1:10": "D1S2",
"Physical Disk 0:1:11": "D1S2",
"Lifecycle Controller 2": "1.0.8.42",
"BP12G+EXP 0:1": "1.07",
"Physical Disk 0:1:9": "D1S2",
"Physical Disk 0:1:17": "D1S2",
"Broadcom Gigabit Ethernet BCM5720": "7.2.20",
"Physical Disk 0:1:21": "D1S2",
"Physical Disk 0:1:13": "D1S2",
"Physical Disk 0:1:7": "D1S2",
"Physical Disk 0:1:19": "D1S2"
},
"hostName": "atsec-chi-00",
"id": "19",
"iloIpAddress": "172.16.2.6",
"iloIpGateway": "172.16.2.1",
"iloIpNetmask": "255.255.255.0",
"iloPassword": "********",
"iloUsername": "",
"interfaceMtu": "9000",
"interfaceName": "bond0",
"ip6Address": "2033:D0D0:3300::2:2/64",
"ip6Gateway": "2033:D0D0:3300::2:1",
"ipAddress": "10.10.2.2",
"ipGateway": "10.10.2.1",
"ipNetmask": "255.255.255.0",
"mgmtIpAddress": "",
"mgmtIpGateway": "",
"mgmtIpNetmask": "",
"physLocation": "plocation-chi-1",
"profile": "EDGE1_CDN1_421_SSL",
"rack": "RR 119.02",
"routerHostName": "rtr-chi.kabletown.net",
"routerPortName": "2",
"status": "ONLINE",
"tcpPort": "80",
"type": "EDGE",
"xmppId": "atsec-chi-00-dummyxmpp",
"xmppPasswd": "X"
}
}
|
**POST /api/1.2/servercheck**
Post a server check result to the serverchecks table.
Authentication Required: Yes
**Request Route Parameters**
+----------------------------+----------+-------------+
| Name | Required | Description |
+============================+==========+=============+
| ``id`` | yes | |
+----------------------------+----------+-------------+
| ``host_name`` | yes | |
+----------------------------+----------+-------------+
| ``servercheck_short_name`` | yes | |
+----------------------------+----------+-------------+
| ``value`` | yes | |
+----------------------------+----------+-------------+
**Request Example** ::
{
"id": "",
"host_name": "",
"servercheck_short_name": "",
"value": ""
}
Response Content Type: application/json
**Response Properties**
+-------------+--------+----------------------------------+
| Parameter | Type | Description |
+=============+========+==================================+
| ``alerts`` | array | A collection of alert messages. |
+-------------+--------+----------------------------------+
| ``>level`` | string | Success, info, warning or error. |
+-------------+--------+----------------------------------+
| ``>text`` | string | Alert message. |
+-------------+--------+----------------------------------+
| ``version`` | string | |
+-------------+--------+----------------------------------+
**Response Example** ::
Response Example:
{
"alerts":
[
{
"level": "success",
"text": "Server Check was successfully updated."
}
],
}