Category Archives: OVS

OVS ile Biraz DB, Biraz Monitor/Troubleshoot , Biraz Openflow programlama

Simdi biraz daha ileri gidelim , uzun bir yazi oldu ama keyifli !

Oncelikle ihtiyacimiz olacak birkac sey ;

Bir onceki yazida ovsdb-client kullanarak OVS tablolarini listelemistik simdi aynisini bir benzerini asagidaki sekilde alalim.

noroot@kvm-ovs-server1:~$ sudo ovsdb-client get-schema

Not : bu komutu >  sudo ovsdb-client get-schema | python -m json.tool < seklinde kullanabilirsiniz veya ciktiyi  http://www.jsoneditoronline.org aktrip direk grafik uzerinden harekete edebilirsiniz .

Screen Shot 2015-12-15 at 17.13.10

Read the rest of this entry

Advertisements

Openstack Networking Ogrenmeden once bilinmesi gerekenler …

Openstack networking’i anlamadan once asagidaki konulari anlamak gerekiyor;

  • cgroup / namespace
  • Linux Networking Namespace
  • ip ve iproute2 paketi
  • Networking Namespace Yaratma
  • veth ve veth pair
  • tun/tap interface
  • Patch port

Cgroup (resource management) / Namespace (process isolation)

Cgroup / Namespace kavramlari benim container’larla beraber duymaya basladigim (ozellikle LXC , Docker ile) bir Linux Kernel ozelligi.
Cgroup konumuz ile cok alakali degil ama kisaca bilmekte fayda var, cgroup hardware kaynagini task ve kullanicilara paylastirmaya yariyor, bunu yaparkende kaynagin tahsisi, onceliklendirmesi, erisimin engellenmesi, yonetimi ve monitor edilmesini sagliyor.

Namespace ise bizim icin su an daha onemli olan process isolation’i sagliyor (tum processler sistem processlerinde ayri , sanki overlay networkler gibi 192.168.0.0/24 u tum tenantlar tarafindan kullanilabilmesi gibi ) veya baska bir deyisle basit anlamda process sanallastirma . 5,6 tip namespace var PID (process), Network (network katmani), UTS (hostname) , Mount (Disk Erisimleri) , user (UIDs) ve IPC . Muhtemelen farkli namespace lerde mevcut fakat uygulanmis degiller gibi .

Linux Networking Namespace

Mantiksal olarak var olan “network stack” kopyasi , snapshot’i , sag tus -> copy ‘ si 🙂 . Birbirinden bagimsiz route , firewall ve network device’lar (mesela loopback) . SNMP , socket , /procfs , /sysfs.

Daha gercek dunyadan dusunmek  gerekir ise boot etmis bir linux isletim sistemi uzerinde , eth0/em1/lo gibi interface’leri olan meseal veth0(sanal ethernet karti) gibi , sanki birden fazla container/sanal makine kosuyorda her birinin kendi ip adresi varmis gibi , iptables -L -v -n yapinca ana isletim sisteminden farkli kurallari olan , netstat -an yapildiginda yine  ana isletim sisteminden farkli socket lerin oldugunu dusunun.

Networking Namespace overlay networking kullanimini olagan kilar.
Read the rest of this entry

OVS, Benim icin yeni bir baslangic – 1

Merhaba ,

Bu yazi aslinda kvm-benim-icin-yeni-bir-baslangic-networking-1 OVS ‘ cesi diyebiliriz. Tabirler icinde buraya bakmanizi rica edecegim.

Oncelikle bir Ubuntu isletim sistemi uzerinde hangi “openvswitch” paketleri var bi ona goz atalim.

noroot@kvm-ovs-server1:~$ apt-cache search openvswitch

neutron-plugin-openvswitch – Neutron is a virtual network service for Openstack – Open vSwitch plugin

neutron-plugin-openvswitch-agent – Neutron is a virtual network service for Openstack – Open vSwitch plugin agent

openvswitch-common – Open vSwitch common components

openvswitch-controller – Open vSwitch controller implementation

openvswitch-dbg – Debug symbols for Open vSwitch packages

openvswitch-pki – Open vSwitch public key infrastructure dependency package

openvswitch-switch – Open vSwitch switch implementations

openvswitch-datapath-dkms – Open vSwitch datapath module source – DKMS version

openvswitch-datapath-source – Open vSwitch datapath module source – module-assistant version

openvswitch-ipsec – Open vSwitch GRE-over-IPsec support

openvswitch-test – Open vSwitch test package

python-openvswitch – Python bindings for Open vSwitch

Ilk KVM kurulum makalesi aksine bridge-utils kurmuyorum, buna ihtiyac olmayacak cunku herseyi OVS programciklari tarafindan yapilacak (ovs-vsctl gibi)

noroot@kvm-ovs-server1:~$ sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder

Read the rest of this entry