Archivio mensile:Marzo 2020

ILOM e SUN/Oracle

Integrated Lights-out Manager (ILOM) aiuta la gestione ed il troubleshooting del hardware di un server della Sun/Oracle. Con l’aiuto di ILOM è possibile gestire da remoto il server, anche se (come mi è successo) il server fosse spento per un malfunzionamento della piastra madre.
Riporto i comandi più usati:

Per loggarsi nella macchina

-> start /SP/console        -- inizializza  SP-console
-> show /SP/sessions        -- verifica le sessioni attive
-> stop /SP/console         -- ferma ogni sessione utente

Start and stop system

-> start /SYS                            (fa partire il sistema)  
-> stop [-force] /SYS                    (ferma sistema)
-> show /SYS                             (verifica lo stato)
-> reset /SYS                            (reset del host)
-> reset /SP                             (reset di ILOM SP)
-> set /HOST send_break_action=break     (invia break all'OS)
-> reset /CMM                            (resetta CMM dello Chassis delle blade)

Comandi per la rete

-> show /SP/network

Per settare l’IP address della ILOM

-> set pendingipdiscovery=static 
-> set pendingipaddress=10.10.10.10
-> set pendingipnetmask=255.255.255.0
-> set pendingipgateway=10.10.10.1
-> set commitpending=true

Per verificare il MAC address della SP

show /SP/network macaddress

Per verificare il CMM IP dello chassis della blade

-> show /CMM/network

Amministrazione degli utenti

-> show /SP/users                  (mostra gli utenti ILOM)
-> show /SP/user/admin             (La configurazione di un utente)
-> create /SP/users/user_name password=PWD role=[administrator|operator]    (crea)
-> delete /SP/users/username       (cancella un user)
-> set /SP/users/admin01 role=administrator           (definisce il ruolo)
-> set /SP/users/admin01           (cambio password)

Monitoring e logs

-> show /SP/logs/event/list     (event log di ILOM)
-> show -level all -output table /SP/faultmgmt     (mostra i fault hardware)
-> show -level all -output table /SYS type==Temperature value

hardware info

-> show -level all -output table /SYS type==DIMM                (mostra DIMMS)
-> show -level all -output table /SYS type=='Host Processor'    (mostra CPUs)
-> show -l all /SYS type=='Hard Disk'                           (mostra disks)

Calcolo della distanza fra due punti GPS

Dovendo calcolare la distanza fra due punti GPS, ho cercato su DuckDuck un aiuto per poter eseguire il calcolo ed ho adattato quello trovato facendolo divenire il seguente pezzo di codice PHP:

function distanza(lat2,lon2)
{
$R=6371;
$pigreco=3.1415927;
$f=0;
$p=0;
$d1=0;
// Coordinate di Piazza del Campidoglio, Roma
$lat2=41.89326;
$lon2=12.48298;
/* Converte i gradi in radianti */
$lat_alfa = $pigreco * $lat1 / 180;
$lat_beta = $pigreco * $lat2 / 180;
$lon_alfa = $pigreco * $lon1 / 180;
$lon_beta = $pigreco * $lon2 / 180;
// Calcola l’angolo compreso fi
$fi = abs($lon_alfa – $lon_beta);
// Calcola il terzo lato del triangolo sferico
$p = acos(sin($lat_beta) * sin($lat_alfa) + cos($lat_beta) * cos($lat_alfa) * cos($fi));
// Calcola la distanza sulla superficie terrestre R = ~6371 km
$d1 = $p * $R;
}

Non servendomi una grande precisione, assumo che la terra sia una sfera perfetta .
Dunque, osservando la figura in alto, diciamo che, in base alla trigonometria sferica (teorema di Eulero), tra i lati ab e p del triangolo sferico ABP vale la relazione:

cos p = cos a cos b + sen a sen b cos φ

Ora, dette lat(A)lon(A)lat(B)lon(B), la latitudine e la longitudine dei punti A e B e, considerato che utilizzando la regola mnemonica di Nepero si ha:

  • a = 90° – lat(B)
  • b = 90° – lat(A)
  • φ = lon(A) – lon(B)

abbiamo tutti i dati per calcolare la lunghezza del lato p considerando il raggio della Terra approssimabile a R = 6371 km.

Da Via e Civico a coordinate GPS

Per un mio interesse volevo riportare su mappa una serie di luoghi, ma avevo solo l’indirizzo a mia disposizione.

Mi sono trovato, quindi, nella necessità di trasformare questi indirizzi in punti GPS: LocationIQ mi ò venuto in aiuto.

www.locationiq.com è un sito tramite il quale, una volta registrati ed ottenuta la key da sviluppatore, si possono convertire indirizzi (via e civico) in coordinate gps e fino a 10000 indizzzi nelle 24 ore, il servizio è gratuito !!

#!/bin/bash

echo -e "lat	lon	title	description	icon	iconSize	iconOffset">lista.txt
rm update_poi.sql
while IFS=\; read poi indirizzo 
do

indirizzo1="$indirizzo1,rome,lazio,italy"
echo $indirizzo
wget -O ppp.xml  "https://eu1.locationiq.com/v1/search.php?key=ppqqtt&q=${indirizzo1}&format=xml"

actualsize=$(wc -c <"ppp.xml")
if [ $actualsize -ge 1 ]; then
  XML_FILE=ppp.xml
  LAT=$(xmllint --xpath 'string(/searchresults/place/@lat)' $XML_FILE)
  LON=$(xmllint --xpath 'string(/searchresults/place/@lon)' $XML_FILE)
  echo $poi","$LAT,$LON 
  echo -e "$LAT\t$LON\t$poi\t$indirizzo\n$LAT\n$LON\tOl_icon_blue_example.png	24,24	0,-24" >> lista.txt
  echo "update fact_data_provisioning_gps set lat='${LAT}', lon='${LON}' where cod_poi='${poi}';">>update_poi.sql
fi
sleep 1
rm ppp.xml

done<esportazione.dsv

il piccolo programmino in bash che a fronte dell’indirizzo via/civico del mio poi, ottiene le coordinate gps e crea il file che mi permetterè l’aggiornamento della mia tabella Oracle.

A questo punto dopo aver cercato in rete qualcosa che mi potesse aiutare a mappare i punti gps ottenuti sulla cartina.

Anche in questo caso una breve ricerca e sono arrivato alla pagina

https://wiki.openstreetmap.org/wiki/Openlayers_POI_layer_example

che mi ha consentito di rappresentare i miei punti GPS in un attimo !