venerdì 13 novembre 2015

configurazione bridge e kvm su debian like / ubuntu

Configurazione scheda BRIDGE 

Per prima cosa diciamo che una scheda bridge è una scheda virtuale, che si appoggia ad una scheda fisica e permette di far collegare altre schede virtuali tramite la sua configurazione alla rete esterna.
Il mio caso d'uso è utilizzarla per permettere a delle macchine virtuali di uscire sulla rete come se fossero altri computer collegati alla stessa.
Le configurazioni di seguito sono riferite a sistemi debian based.

immaginiamo che la nostra rete principale sia : eth0 con ip 192.168.1.99/24
significa che questa configurazione la troviamo nel file /etc/network/interfaces
 iface eth0 inet static 
      address 192.168.1.99 
      broadcast 192.168.1.255 
      netmask 255.255.255.0 
      gateway 192.168.1.1 
diventa in versione bridge :
iface eth0 inet manual

 # Bridge setup
 iface br0 inet static
        bridge_ports eth0 
        address 192.168.1.99
        broadcast 192.168.1.255
        netmask 255.255.255.0
        gateway 192.168.1.1
dove la nuova interfaccia br0 è utilizzabile da kvm per le macchine virtuali.
se volete vedere quali interfacce sono fiinte sotto il bridge potete lanciare

brctl show 

Instalalzione KVM

Qemu / kvm è un ambiente di virtualizzazione fantastico. Per vederlo in azione, per prima cosa bisogna verificare che nel bios siano attive le configurazioni relative alla virtualizzazione hardware di intel o amd. Dopo di che si passa all'installazione :

apt-get install qemu-kvm libvirt-bin virt-manager
In fine aggiungiamo l'utente "nomeutente" ai gruppi :
adduser nomeutente kvm adduser nomeutente libvirt
Per installare una macchina virtuale adesso è possibile lanciare virt-manager e scegliere i componenti.

lunedì 18 maggio 2015

Installazione application server wildfly

Wildfly è l'erede dell'application server JBOSS.
poichi semplici passi da ricordare come guida minima di installazione...
prerequisiti: JAVA
è consigliato installare l'ambiente java di ORACLE

# da root o sudo

cd /opt

# scaricate il wildfly che vi interessa:

# http://wildfly.org/downloads/

# io farò riferimento alla versione wildfly-8.2.0.Final voi sostituitela con la vostra

wget http://download.jboss.org/wildfly/8.2.0.Final/wildfly-8.2.0.Final.tar.gz

tar xfvz wildfly-8.2.0.Final.tar.gz

ln -s /opt/wildfly-8.2.0.Final /opt/wildfly

# Copia ed edita il file init di configurazione

cp /opt/wildfly/bin/init.d/wildfly.conf /etc/default/wildfly.conf

nano /etc/default/wildfly.conf

# modifica alcune configurazioni secondo le tue necessità
## Location of WildFly
JBOSS_HOME="/opt/wildfly"
## The username who should own the process.
JBOSS_USER=wildfly
## The mode WildFly should start, standalone or domain
JBOSS_MODE=standalone
## Configuration for standalone mode
JBOSS_CONFIG=standalone.xml
## The amount of time to wait for startup
STARTUP_WAIT=60
## The amount of time to wait for shutdown
SHUTDOWN_WAIT=60
## Location to keep the console log
JBOSS_CONSOLE_LOG="/var/log/wildfly/console.log"



# Copia lo script di avvio

# red hat based
  cp /opt/wildfly/bin/init.d/wildfly-init-redhat.sh /etc/init.d/wildfly
# debian based
  cp /opt/wildfly/bin/init.d/wildfly-init-debian.sh /etc/init.d/wildfly

# Aggiungi WildFly come un servizio
# red hat based
chkconfig --add wildfly
chkconfig wildfly on
# debian based
update-rc.d wildfly defaults


# Crea una directory per i logs

mkdir -p /var/log/wildfly

# Aggiungi l'user per WildFly

adduser wildfly

# Cambia l'owner delle directories di wildfly

chown -R wildfly:wildfly /opt/wildfly-8.2.0.Final
chown wildfly:wildfly /opt/wildfly
chown wildfly:wildfly /var/log/wildfly

# cambia l'interfaccia dove wildfly ascolta sulla rete

nano -w /opt/wildfly/standalone/configuration/standalone.xml

<interface name="public">
            <inet-address value="${jboss.bind.address:INDIRIZZOIPDELSERVER}"/>
        </interface>




# Avvia WildFly

service wildfly start


# configurazione utente di amministrazione console :

/opt/wildfly/bin/add-user.sh

# aggiungere un management user

# navigare su

http://localhost:9990/console/

# per configurare altro.

# Avvia Wildfly al boot  :
#debian based

update-rc.d wildfly defaults

#redhat

chkconfig --add wildfly

sabato 21 marzo 2015

linux : software raid con mdadm

Software raid di linux.

Fake raid e le bizarrie del mondo moderno.

Ovvero la storia di come tenere i propri dati al sicuro usando più dischi.

Preambolo (potrebbe essere noioso...):

Il bios di un server allo startUp mi fa vedere un controller raid, ed io come uno sciocco ci credo, tanto da pensare di usarlo per mettere i dati al sicuro.
In effetti un raid di livello 1 permette di scrivere contemporaneamente su 2 dischi, quindi se uno cede, l'altro continua a funzionare, dandoti il tempo ed il modo di intervenire e permettendoti di non perdere i tuoi preziosi dati.
ci sono altri livelli di raid ma si possono approfondire ovunque.
Dicevamo, il server ha un controller raid ed io lo voglio usare, quindi accedo al controller con f8 configuro 2 drive logici, di cui il secondo è formato da 2 dischi, per un totale di 3 dischi fisici e 2 logici.
Parte linux e vedo sempre i 3 dischi ... sda, sdb ed sdc... e qui vado in crisi...  Per fortuna c'ho un amico che mi illumina, si tratta di fake raid ovvero raid quasi farlocchi.
Non voglio approfondire, vi dirò solo che i controller raid costano e quindi i raid fasulli permettono di impostare dei raid in modo da poter essere gestiti da più sistemi operativi, tipo dualboot, in maniera software, ma a questo punto possiamo far finta di nulla e procedere con il software.

Raid in maniera software e linux.

Se abbiamo bisogno di una piccola nas possiamo farla in casa con 2 dischi in mirror (raid 1):
se abbiamo bisogno di un disco sicuro possiamo farlo con il raid.

prima operazione :


sudo modprobe raid456  
sudo cat /proc/mdstat

dovrebbe dire che non ci sono raid configurati.
quindi installiamo multi disk admin, sotto debian like:

sudo apt-get install mdadm
 a questo punto se tutto è andato come dovrebbe possiamo procedere alla creazione del raid. Nel caso di esempio creeremo un raid su 2 dischi fisici (potrebbe essere fatto su 2 partizioni) sdb ed sdc, in cui i due dischi sono in mirror.
sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc
ora il raid è creato, quindi andiamo a salvare la configurazione in questo modo.
sudo mdadm --detail --scan >> /etc/mdadm/mdadm.conf
Il gioco è fatto.
sudo cat /proc/mdstat
ci dirà come vanno le cose con il nostro raid.
sudo fdisk /dev/md0
mi permette di creare la partizione sul disco raid e
sudo mkfs.ext4 /dev/md0p1
me la fa formattare in ext4
sudo reboot
al riavvio mi ritrovo sotto dev

/dev/md127  ed /dev/md127p1


quindi aggiungo in fstab
sudo nano -w  /etc/fstab
la seguente riga :

/dev/md127p1                      /opt         ext4   acl 0 1

ed il mio disco in raid è montato su /opt al boot

mercoledì 4 febbraio 2015

Gnome cambia l'immagine di sfondo ogni tot minuti

Ci sono molti programmi wallpaper changer che promettono di cambiare lo sfondo di gnome o ubuntu, ma a me non funzionano.
Cambiare lo sfondo selezionandolo a caso in una cartella delle immagini, sembra una cosa semplice, ed in effetti lo è :).
Vediamo come svincolarci dal sistema operativo e dai tool grafici.
Utilizzeremo gconf tool ,  python e crontab.

nella nostra cartella home creiamo una cartella bin

$ mkdir bin

spostiamoci in bin e creiamo un file per cambiare lo sfondo

$ cd bin
$ gedit -w cambiaSfondo.sh

con questo contenuto :

PID=$(pgrep gnome-session)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-)
set DISPLAY=:0
set GSETTINGS_BACKEND=dconf
/usr/bin/python /home/NOMEUTENTE/bin/randomWall.py


attenti a cambiare NOMEUTENTE con il vostro nome utente!!!

dopo di che creiamo il file python che sorteggia lo sfondo e lo applica

$ gedit randomWall.py

con il seguente contenuto :

#!/usr/bin/python
import os,random
cartellaWallpapers='/home/NOMEUTENTE/Immagini/sfondi/'
immagineCasuale=random.choice(os.listdir(cartellaWallpapers))
os.system ( "  /usr/bin/gsettings set org.gnome.desktop.background picture-uri  \"file://"+cartellaWallpapers+ immagineCasuale + "\"")



ricordate di cambiare NOMEUTENTE nel vostro nome account e volendo potete scegliere la cartella dove avete le immagini di sfondo.
l'esempio usa la cartella Immagini/sfiondi.

infine :

$ crontab -e

*/5 * * * * /home/NOMEUTENTE/bin/cambiaSfondo.sh

sostituendo NOMEUTENTE con il vostro account

cambierà lo sfondo ogni 5 minuti.