Design of OpenStack Cloud Data Center in My Mind

The subject has 3 meanings

  1. In OpenStack framework
  2. It’s a Cloud, which is dynamic, not static. Self service. You get what you need almost immediately.
  3. It’s production in data center with high volume traffic of CPU, disk and network

Technically, this is what I want to build

  • General scope into a/ OpenStack framework b/ SDN c/ Distributed storage (no SAN) d/ DevOps in production operation
  • SDN = Neutron (need HA as extra). Planned to integrate Juniper’s OpenContrail in 2~ 3 months with distributed network virtualization workload, if there is no legal challenge. Pure software defined.
  • Distributed storage by Ceph to hold VM instances/ Cinder volumes/ Glance images. At least into 3 copies across physical compute nodes.
  • Overall network architecture has 5 network segmentations
    • (I) management network – all OpenStack controllers, HA components, APIs
    • (II) VM network – traffic between VMs. Fiber network preferred
    • (III) Storage network – dedicated for distributed storage, driven by Ceph (or GPFS). Fiber network preferred
    • (IV) External to internet/ public network
    • (V) IMM – integrated management module (optional)
  • High availability design for all components. At least 3 nodes (node = VM or physical node)
    • (I) Galera active- active for MySQL database for management
    • (II) RabbitMQ with its own native cluster
    • (III) Neutron HA (for now by Pacemaker/ Corosync) or OpenContrail (controller workload natively distributed onto each compute node)
  • Chef cookbook & Heat automate all deployment and change.
  • Monitoring by Nagios/ Ganglia/ Zabbix
  • Log Analysis by LogStash
  • Metering by Ceilometer, native component from OpenStack
  • Performance tuning
    • Linux kernel optimization
    • Dedicated CPU cores > operating system, KVM libvirt, Ceph
    • Disk – grouping isolated for OS and storage services by different RAID configuration and RAID caching enabled
Posted in cloud, innovation, kvm, linux, network, opensource, virtualization | Tagged , , , , , | Comments Off on Design of OpenStack Cloud Data Center in My Mind

My Simple Diary of OpenStack Summit

This is my 3rd time attending OpenStack summit. The world is changing fast. Since I came back from OpenStack summit Atlanta, I do see new fresh air

  • Ceph, from Inktank, acquired by Red Hat months ago, a proved product which provides a file system cluster to host both Cinder (block) and Swift (objective) storage service
  • Docker, an open source software to offer virtualized process from LinuX Container (LXC). This ability is supported from Linux kernel to manage process (like Apache) in a container (like JVM container). It brings very obvious benefit in performance, security, flexibility perspective, better than Virtual Machine. Docker does have native integration with OpenStack already and I believe it would boom soon in cloud.
  • Galera, cluster framework to manage database in active- active mode. I talked to both Galera dev people at Summit and the founder of CloudScaling who already applied 7 nodes in their product which has 1,000+ compute node.
  • SDN (software defined network), by Neutron (default OpenStack component) and Juniper’s OpenContrail (open source). We’re collaborating with Juniper product management (DE to DE by Andrew Trossman and Juniper’s founder) to see how we could integrate OpenContrail into IBM’s OpenStack software (not just solution)

Recently I’ve been working with some large telco clients in the world about SDN. Customer wants to consolidate fragmented network resource (eg gaming app running in multiple locational data centers) with solid budget/ opportunity. I’m feeling that SDN right now is like cloud in 2008/ 2009 when each one was turning to pay attention to cloud but no solution at that moment. It could a chance of becoming the lead in this area, even a chance to replace other network giant(s) to touch/ shake network virtualization area. “Software Defined Everything” is re- shaping the world.

Posted in cloud, linux, misc, network, opensource, virtualization | Tagged , , , , , | Comments Off on My Simple Diary of OpenStack Summit

Enable Wireless in Ubuntu on MacBook Pro

Probe your hardware

jeff@umac:~$ lspci -nn -d 14e4:
02:00.0 Multimedia controller [0480]: Broadcom Corporation Device [14e4:1570]
03:00.0 Network controller [0280]: Broadcom Corporation BCM4360 802.11ac Wireless Network Adapter [14e4:43a0] (rev 03)

Install driver (I use my mobile phone tethering network to do this)

jeff@umac:~$ sudo apt-get install bcmwl-kernel-source

Load module

jeff@umac:~$ modprobe wl
Posted in linux, mac, ubuntu | Tagged , , , , , , | Comments Off on Enable Wireless in Ubuntu on MacBook Pro

Install Ubuntu 14.04 LTS Trusty Tahr on MacBook Pro Retina 2013

First of all, there is NO need to have Ubuntu Desktop specific for Mac. I just successfully installed standard Ubuntu 14.04 LTS Trust Tahr 64 bit downloaded from . Here are the steps that I went through

  • (Optional) Install Mac OS after I re- sized the partition to 50G
  • After installing Mac OS, download and install “rEFInd” to activate partition for Linux. You can refer to . You’d install from the zip by executing ./ . That’s it. No further change required.
  • Insert the USB key that contains Ubuntu 14.04 install ISO. Boot then start install, with the partition layout for Linux. This is what I have
/boot    400MB
SWAP     8096MB
/        20G


Leaving remaining space encrypted, while I’d create a softlink of home dir to /media/jeff/pool which is completely encrypted by LUKS, eg.

sudo ln -s /media/jeff/pool /home/jeff/Downloads
sudo chown -R jeff.jeff /media/jeff/pool
  • Refer to to tweak your Ubuntu. Anyway, this is what I used to install for virtualization, some utilities and multi- media drivers
ubuntu-desktop p7zip gimp imagemagick chromium-browser pidgin qemu-system-x86 libvirt-bin ubuntu-vm-builder bridge-utils ubuntu-restricted-extras ssh virt-manager virt-viewer openconnect dconf-tools network-manager-vpnc vim cups-pdf lvm2 icedtea-plugin
gstreamer0.10-plugins-ugly libxine1-ffmpeg gxine mencoder libdvdread4 totem-mozilla icedax tagtool easytag id3tool lame nautilus-script-audio-convert libmad0 mpg321 gstreamer1.0-libav vlc
  • I’ll also switch from Unity to Gnome-Shell as my personal preference
sudo apt-get install gnome-shell ubuntu-gnome-desktop
Posted in fun, linux, opensource, ubuntu | Tagged , , , , , , , | Comments Off on Install Ubuntu 14.04 LTS Trusty Tahr on MacBook Pro Retina 2013

/etc/udev/rules.d/70-persistent-net.rules makes network unavailable

After launching a VM, sometimes network becomes unavailable until you manually remove

[root@j3ffyang~]# rm -fr /etc/udev/rules.d/70-persistent-net.rules

The workaround is to stop generating this rule

mv /lib/udev/rules.d/75-persistent-net-generator.rules /tmp

To process this in batch

for i in `cat /tmp/allnode.lst | awk '{print $1}'`; \
do echo $i; ssh $i 'mv /lib/udev/rules.d/75-persistent-net-generator.rules /tmp/'; \


Posted in linux, opensource, script, shell, virtualization | Tagged , , , | Comments Off on /etc/udev/rules.d/70-persistent-net.rules makes network unavailable

Dual- boot of MacBook Pro and Ubuntu. Change Boot Sequence

I’ve installed Ubuntu on my MacBook Pro (Retina 2013 November edition) and enabled dual- boot by rEFInd (reference By default the system boots into Windows partition which does NEVER exist.

Here is the step how to change boot sequence to #Ubuntu

  • Boot into Mac OS
  • Update refind.conf
    sudo vi /etc/EFI/refind/refind.conf
  • Look for “manuentry” and find out the sequence of booting
  • Update the value of “default_selection”

This is the “menuentry” from my machine

# A sample entry for a Linux 3.3 kernel with its new EFI boot stub
# support on a filesystem called "KERNELS". This entry includes
# Linux-specific boot options and specification of an initial RAM disk.
# Note uses of Linux-style forward slashes, even in the initrd
# specification. Also note that a leading slash is optional in file
# specifications.
menuentry Linux {
icon EFI/refind/icons/os_linux.icns
volume KERNELS
loader bzImage-3.3.0-rc7
initrd initrd-3.3.0.img
options "ro root=UUID=5f96cafa-e0a7-4057-b18f-fa709db5b837"

# A sample entry for loading Ubuntu using its standard name for
# its GRUB 2 boot loader. Note uses of Linux-style forward slashes
menuentry Ubuntu {
loader /EFI/ubuntu/grubx64.efi
icon /EFI/refined/icons/os_linux.icns

# A minimal ELILO entry, which probably offers nothing that
# auto-detection can't accomplish.
menuentry "ELILO" {
loader \EFI\elilo\elilo.efi

“default_selection 2” leads you to boot into Ubuntu

Posted in linux, opensource, ubuntu | Tagged , , , , , , , | Comments Off on Dual- boot of MacBook Pro and Ubuntu. Change Boot Sequence

Install Skype on Ubuntu Saucy x86_64

Download Skype 32bit, install then receive the following error

skype: error while loading shared libraries: cannot open shared object file: No such file or directory

Find out which package contains

jeff@umac:~$ sudo apt-file search
libxss-dev: /usr/lib/x86_64-linux-gnu/
libxss1: /usr/lib/x86_64-linux-gnu/
libxss1: /usr/lib/x86_64-linux-gnu/
libxss1-dbg: /usr/lib/debug/usr/lib/x86_64-linux-gnu/

Install libXss package

sudo apt-get install libxss1




Posted in linux, ubuntu | Tagged , , | Comments Off on Install Skype on Ubuntu Saucy x86_64