Nested Virtualization/Hypervisor ESXi => HyperV….

To run HyperV in ESXi modify the vmx file of the HyperV guest vm:

vhv.enable = "TRUE"
hypervisor.cpuid.v0 = "FALSE"

To allow network communication from VMs on the HyperV over the HyperV virtual switches to the ESXi network the “Promiscuous Mode” of the ESXi network switch has to be set to “Accept” – ESXi-Host => configuration => networking => select vSwitch<X> => properties => select vSwitch => Edit => Security => Policy Exceptions => Promiscuous Mode => Accept

 

Windows VPN connection with local default gateway…

 

 

If you have created a VPN connection then as default the network configuration will be changed so that the gateway is set to the remote network. Then you will not be able to access the local network and also you will not have access to the local internet.

This can be changed by removing the setting “Use default gateway on remote network”:vpn-gateway

Oracle 11gR2 Solaris DBConsole did not start…

On my machine the dbconsole didn’t start.

The problem was the timezone didn’t match the timezone of the machine/host.

$ORACLE_HOME/solaris_DB/sysman/config$ vi emd.properties

agentTZRegion=+02:00

===============================================================

how to recreate DBConsole & repository:

export ORACLE_UNQNAME = XXX

emca -deconfig dbcontrol db -repos drop

emca -repos create

emca -config dbcontrol db

WinCC OA Android App…

I now also built an Android App to visualize my Home-Automation data (powered by WinCC OA – www.etm.at).

Because i did the same for iOS and used C# for coding (Xamarin Framework) i was able to share about 70% of the code between both Apps (iOS and Android). So there was no need to re-implement the communication and business logic!! All i had to do is to get familiar with the Android-UI…

App: http://www.rocworks.at/wordpress/rocvmobile/

Android-App:

2013-09-23 12.55.05 Screenshot_2013-09-23-16-26-26 2013-09-22 07.09.00 test1 Screenshot_2013-09-22-14-09-48

 

Solaris ZFS snapshot to save machine state…

Very nice feature of solaris is to use a zfs snapshots to protect the current state/configuration of a machine.

And it is very easy to use, all we have to do is:

> beadm list
BE Active Mountpoint Space Policy Created
-- ------ ---------- ----- ------ -------
solaris NR / 11.23G static 2013-07-04 16:45
solaris-backup-1 - - 155.0K static 2013-07-04 17:28

After the installation of solaris a snapshot was already created automatically.

After installation and configuration of various software we can create a new snapshot:

beadm create -e solaris solaris-backup-2

If something bad will happen afterwards we can just simple select the backup at the boot manager! and then activate our backup as the active snapshot:

beadm activate solaris-backup-2

I think the old/bad snapshot/base can be deleted afterwards, but i didn’t yet tried that, maybe it is a good idea to create a base snapshot and working snapshot, and set the working snapshot as the active one, so in the case of an error we can create a new snapshot based on the base snapshot, and afterwards we can remove the bad working snapshot.

Solaris is very smart 🙂

SmartHome Architecture…

SmartHome…. high availability architecture… but just for fun and to play with some technologies. The system is also able to run on a single system like the “Scada Local” system, and this is just an old Lenovo Netbook with 2GB RAM…

Mobile-Phone-App: http://www.rocworks.at/wordpress/rocvmobile/

Used software: Arduino, RaspberryPI, WinCC OA, VMWare ESXi, iSCSI-Target TGT, Oracle-Solaris, Oracle-Linux, Oracle-Database & ASM, Oracle-Apex…

Progamming the Arduino was pretty cool, this cheap micro controller is very powerful 🙂  Implemented a rough interface to WinCC OA (powerful SCADA software made by Siemens/ETM)…

SmartHomeArchitecture

Install new database host and reuse existing ASM database…

My Database-Host was gone (don’t ask why…), but my database files are hosted by ASM (data diskgroup with 3 iSCSI disks), so i was able to install a new Solaris-Host and build up my database server with the existing ASM diskgroup and database in the following way:

Install grid-software with option “software only”

Run the roothas.pl script from Grid_home using the following syntax:

as root user: /app/11.2.0/grid/perl/bin/perl -I /app/11.2.0/grid/perl/lib -I /app/11.2.0/grid/crs/install /app/11.2.0/grid/crs/install/roothas.pl

as oracle user from the grid-home /app/11.2.0/grid/oui> ./runInstaller -updateNodeList ORACLE_HOME=/app/11.2.0/grid -defaultHomeName CLUSTER_NODES= CRS=TRUE

orapwd file=$ORACLE_HOME/dbs/orapw+ASM password=Password123 entries=5

mkdir -p $ORACLE_BASE/admin/+ASM
cd $ORACLE_BASE/admin/+ASM
mkdir bdump
mkdir udump
mkdir cdump
mkdir pfile

init+ASM.ora:
*.asm_power_limit=1
*.diagnostic_dest=’/app/oracle’
*.instance_type=’asm’
*.large_pool_size=12M
*.remote_login_passwordfile=’EXCLUSIVE’

srvctl add listener
srvctl start listener
srvctl add asm -l LISTENER -p $ORACLE_HOME/dbs/init+ASM.ora -d ‘/dev/rdsk/*’

# disks
chown oracle:oinstall /dev/rdsk/c9t2d0s0
chown oracle:oinstall /dev/rdsk/c9t3d0s0
chown oracle:oinstall /dev/rdsk/c9t4d0s0
chmod 660 /dev/rdsk/c9t2d0s0
chmod 660 /dev/rdsk/c9t3d0s0
chmod 660 /dev/rdsk/c9t4d0s0
asmcmd> lsdsk –discovery
asmcmd> lsdsk
asmcmd> mount DATA

alter system set asm_diskgroups=’DATA’ scope=spfile;

create pfile with “SPFILE=+DATA/DB/spfiledb.ora”
mkdir -p /app/oracle/admin/DB/adump
srvctl add database -d DB -o /app/oracle/product/11.2.0/dbhome_1