I have an esxi 5.5 host in Chicago and Dallas. Both servers are controlled by my vcenter server. I have a MySQL server in chicago that is accessed through an internal only vswitch from the servers on that host. I now need to access it from the Dallas host as well. Is there any way to connect the private networks of the two hosts via vSwitches? (i'm not looking to do any GRE tunnels, TE tunnels, or VPNs. If something internal to vmware isn't possible, then that's all i need to know!) thanks!
driz's questions
Cisco's licensing manager has a shortcoming in that it provides licensing data per enterprise instead of per cluster. I am attempting to utilize SQL queries to produce this data. Currently, i have two queries that provide some relevant information.
SELECT name,value FROM TABLE (FUNCTION LicenseTotals()) (pkid,name,value,UserValue,DeviceValue)
which produces this output
name value
================= ===================
CUWL Standard 0
EnhancedPlus 0
Enhanced 2953
Basic 0
Essential 1349
TelePresence Room 0
TotalUsers 0
TotalDevices 4302
Timestamp 2014-06-06 11:45:21
ElmLastContact 1402044739
Elm XXXXXXXXXELM1
and
select typeproduct.name, typelicensedresource.name from typeproduct, typelicensedresource, typelicensedresourceproductmap where typelicensedresource.enum = typelicensedresourceproductmap.tklicensedresource and typelicensedresourceproductmap.tkproduct = typeproduct.enum
which produces this output
name name
======================================== ============
Analog Phone Tin
Cisco 6901 Tin
Cisco 6911 Copper
Cisco 6921 Copper
H.323 Client Bronze
Cisco 30 SP+ Bronze
what i would like to do is somehow pull information from the devicepool tables but the unique id of licensing doesn't match up with the unique IDs of devicepool. my end goal is something like
Count Licensetype Site
========================================================
50 Tin Site 1
30 Tin Site 2
75 Copper Site 1
100 Copper Site 2
80 Bronze Site 3
110 Bronze Site 3
some previous code that can get counts per site is
run sql SELECT sum(analog_phones) as analog_phones, sum(ip_phones) as ip_phones, devicepool FROM (SELECT 0 AS analog_phones, count(d.name) AS IP_Phones, dp.name AS DevicePool FROM Device AS d INNER JOIN DevicePool AS dp ON d.fkDevicePool=dp.pkid INNER JOIN typemodel AS tm ON tm.enum=d.tkmodel WHERE (d.tkclass=1 AND dp.name LIKE '%PH%') GROUP BY dp.name UNION ALL SELECT count(d.name) AS Analog_Phones, 0 AS ip_phones, dp.name AS DevicePool FROM Device AS d INNER JOIN DevicePool AS dp ON d.fkDevicePool=dp.pkid INNER JOIN typemodel AS tm ON tm.enum=d.tkmodel WHERE (tm.name = 'Analog Phone') GROUP BY dp.name) a GROUP BY devicepool ORDER BY devicepool
which returns this result
analog_phones ip_phones devicepool
============= ========= ===============
12 0 BRLED-AGW-DP
0 36 BRLED-PHONES-DP
0 46 CRMBT-PHONES-DP
532 0 DRMC-AGW-DP
1 695 DRMC-PHONES-DP
The guide i have been using to determine proper tables is the data dictionary for my version of call manager
I have a vcenter appliance and freeipa running in my environment. There are no windows machines at all, nor will there be. I have setup vca to authenticate via LDAP to IPA and this works PER USER. the issue im having is even when defining the groups context, i can not see any groups, and the freeipa users lack SSO capabilities.
At work, we have vcenter 5.5 with a server 2k12 DC and the domain users have sso and groups work.
Can anyone shed any light? there is a previous question @ VMware vCenter/ESXi with FreeIPA instead of Active Directory?
where this is discussed but the "answer" isn't helpful at all. the final comment on the page does describe my particular issue precisely though.
I have a script that returns the following information
Analog Phones IP Phones Location
------------- --------- --------
0 883 Site1
413 0 Site1
0 4 Site1
0 258 Site2
9 75 Site2
183 0 Site2
This information is stored in an array $arrayX
I am trying to figure out how to get the ouput to show
Analog Phones IP Phones Location
------------- --------- --------
413 887 Site1
192 333 Site2
The data feeding the array is not presented in such a way; does anyone have any ideas on how to accomplish something like this? I can post the whole script but it's a jumble of java, axl, and powershell right now.
There is a point in the script where the data looks like this
Analog Phones IP Phones Location
------------- --------- --------
413 0 Site1-AGW-DP
0 883 Site1-PHONES-DP
0 4 Site1-PHSRST-DP
The XML files that are being used are output from a java axl program. the results of one of those are shown below:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<axl:executeSQLQueryResponse xmlns:axl="http://www.cisco.com/AXL/API/6.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" sequence="1394831301468">
<return>
<row>
<analog_phones>0</analog_phones>
<ip_phones>47</ip_phones>
<devicepool>Site20-PHONES-DP</devicepool>
</row>
<row>
<analog_phones>533</analog_phones>
<ip_phones>0</ip_phones>
<devicepool>Site20-AGW-DP</devicepool>
</row>
<row>
<analog_phones>1</analog_phones>
<ip_phones>689</ip_phones>
<devicepool>Site20-PHSRST-DP</devicepool>
</row>
</return>
</axl:executeSQLQueryResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Powershell script starting after java bit
$files = (Get-ChildItem .\*out.xml).name
foreach ($file in $files){
[xml]$xmlfiles = gc $file
$finalxml += $xmlfiles.envelope.body.executeSQLQueryResponse.return.row
Remove-Item $pwd\$file
}
$outarray = @()
$sitelist = import-csv sites.csv
foreach($item in $finalxml){
if(!$item.devicepool){$sed="BLANK"}
else{$sed=($item.devicepool).substring(0,4)}
$location=($sitelist | where-object {$_.prefix -eq $sed}).Facility
if(!$location){$location=$sed}
$outarray+=New-object psobject -property @{
'Analog Phones' = $item.analog_phones
'IP Phones' = $item.ip_phones
'Location' = $location
}
}
$outarray | Sort-Object 'Analog Phones','IP PHones' -unique | sort-object Location | select-object 'Analog Phones','IP Phones',Location |export-csv $csvout
I need to query numbers of phones per site for Analog, and IP phones separately. I can do it with these two queries.
IP Phones:
select count(d.name) as IP_Phones, dp.name as DevicePool
from Device as d
inner join DevicePool as dp on d.fkDevicePool=dp.pkid
inner join typemodel as tm on tm.enum=d.tkmodel
where (tm.name != 'Analog Phone' and tm.name != 'Conference Bridge'
and tm.name != 'CTI Route Point' and tm.name != 'CTI Port'
and tm.name != 'MGCP Station' and tm.name != 'Route List'
and tm.name != 'H.323 Gateway'
and tm.name != 'Music On Hold'
and tm.name != 'Media Termination Point'
and tm.name != 'Tone Announcement Player'
and tm.name != 'Cisco IOS Conference Bridge (HDV2)'
and tm.name != 'Cisco IOS Software Media Termination Point (HDV2)'
and tm.name != 'Cisco IOS Media Termination Point (HDV2)'
and tm.name != 'SIP Trunk' and dp.name like '%PH%')
group by dp.name
order by dp.name
which results in
ip_phones devicepool
========= ================
815 Site1-DP
43 Site2-DP
32 Site3-DP
890 Site4-DP
Analog Phones:
select count(d.name) as Analog_Phones, dp.name as DevicePool
from Device as d
inner join DevicePool as dp on d.fkDevicePool=dp.pkid
inner join typemodel as tm on tm.enum=d.tkmodel
where (tm.name = 'Analog Phone' and dp.name like '%PH%')
group by dp.name
order by dp.name
which results in
analog_phones devicepool
============= ==============
12 Site1-DP
14 Site2-DP
1 Site3-DP
4 Site4-DP
What I'm looking for is a single query that results in something like this:
ip_phones analog_phones devicepool
========= ============= ==========
815 12 Site1-DP
43 14 Site2-DP
32 1 Site3-DP
890 4 Site4-DP