Orion基本功能与IPAM之间是否存在正式联系

时间:2019-04-27 18:32:39

标签: sdk foreign-keys primary-key solarwinds-orion

我试图了解SolarWinds Orion IPAM表与Orion表之间的关系。我知道IPAM端有一些条目需要注意和/或清理。因此,我编写了各种查询,如下所示,其中IP地址是关键:

SELECT DISTINCT
       I.IPAddress
     , I.DnsBackward
     , O.Caption
     , O.IP_Address
FROM IPAM.IPNode AS I
LEFT OUTER JOIN Orion.Nodes AS O ON I.IPAddress = O.IP_Address
WHERE I.Status = 1
AND ( I.DnsBackward LIKE '' OR I.DnsBackward IS NULL)

当我尝试使用IP地址链接时,出现很多不匹配的情况。有几个问题:

  1. 这两个表之间是否有正式的链接(键)?
  2. 如果没有正式的链接,是否有更好的联接键可以使用?
  3. 在哪里可以看到Orion和IPAM表之间的链接(键)?

上面的查询旨在查找缺少DNS A记录和PTR条目的条目。因此,我可以使用SDK Powershell界面添加它们:

Invoke-SwisVerb $swis IPAM.IPAddressManagement AddDnsARecordWithPtr @("QQQ.TestZone.", "10.11.78.25", "10.199.7.82", "TestZone")

1 个答案:

答案 0 :(得分:1)

您正在苦苦挣扎的原因是表格不相关。

Orion.Nodes表将仅包含IPAM中的受管设备,通常是配置为具有IPAM轮询的DHCP和DNS服务器(具有适当的凭据)。该表使用NodeID作为其唯一参考。如果您可以从http://--IPAM-Server--/ui/manage/nodes看到该设备,则它将在“节点”表中。

IPAM.IPNode表适用于从IPAM扫描中找到的设备,这是一个不相关的表,您将找到匹配的节点名称和IP地址,但找不到匹配的NodeID。

此表使用IpNodeId作为其唯一引用。

SELECT IpNodeId,IPAddress, 
       CASE
           WHEN ISNULL(sysname, '') <> '' THEN sysname
           WHEN ISNULL(DnsBackward, '') <> '' THEN DnsBackward
           WHEN ISNULL(Alias, '') <> '' THEN Alias
           ELSE ''
       END AS Hostname
FROM  IPAM.IPNode
WHERE Status = 1 --IP Address Used