Instalasi Openstack Liberty - Ubuntu 14.04 LTS - Part 6.0
9:42:00 AMAssalamualaikum, untuk yang sebelumnya kita sudah membahas, menginstall dan mengkonfigurasi nova. sekarang kita masuk ke bab cara menginstall dan mengkonfigurasi layanan Openstack Networking (Neutron) menggunakan jarigan opsi provider atau self-service.
untuk part yang sebelum nya, silakan klik link dibawah ini
- Instalasi Openstack Liberty - Ubuntu 14.04 LTS - Part 1.0
- Instalasi Openstack Liberty - Ubuntu 14.04 LTS - Part 2.0
- Instalasi Openstack Liberty - Ubuntu 14.04 LTS - Part 3.0
- Instalasi Openstack Liberty - Ubuntu 14.04 LTS - Part 4.0
- Instalasi Openstack Liberty - Ubuntu 14.04 LTS - Part 5.0
NEUTRONOpenstack Networking ( Neutron ), adalah sebuah layanan NaaS (Networking as a Service). Neutron adalah salah satu komponen penting dalam openstack, neutron berfungsi untuk menghubungkan Instances(vm) ke dunia real. Singkatnya neutron adalah services yang menghandel dan memanage virtual networking infrastructure di dalam platform openstack cloud. Apa saja elemen-elemen tersebut? Elemen tersebut yaitu networks, subnets, dan routers. Beberapa advanced fitur seperti subnet, router, load-balancer, firewall dan VPN juga menggunakan services neutron. Neutron ini mengelola semua networking untuk VNI (Virtual Networking Infrastructure) dan PNI (Physical Networking Infrastructure)
komponen dari Neutron sebagai berikut :
- neutron-server, menerima dan me-route (memilih jalur terbaik) permintaan API untuk membawa neutron plug-in.
- OpenStack Networking plug-ins and agents, plug dan unplug ports, membuat networks atau subnets, dan menyediakan IP Address.
- Messaging queue, komponen ini bekerja dengan cara menggunakan installasi paling sering dipakai dari neutron untuk me-route informasi di antara neutron-server dan agent-agentnya. Dan bisa juga bekerja seperti sebagai database untuk menyimpan networking state.
Neutron menyediakan networks dan connectivity untuk Compute.
okee sekarang kita lanjut nge-lab lagi :3
LAB 23 - Membuat Database Neutron - Node Controller
sebelum kita mengkonfigurasi Neutron, kita harus membuat database, service credentials, dan API endpoints nya
pertama kita buat databasenya terlebih dahulu, login sebagai user biasa:
$ mysql -u root -p
lalu buat neutron database nya:
CREATE DATABASE neutron;
kemudian kita beri akses untuk database neutron:
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' \
IDENTIFIED BY 'NEUTRON_DBPASS';
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' \
IDENTIFIED BY 'NEUTRON_DBPASS';
$ source admin-openrc.sh
lalu buat service credentialsnya, pertama kita buat user untuk neutron:
$ openstack user create --domain default --password-prompt neutron
masukan password untuk user neutron.
kemudian tambahkan role admin ke user neutron:
$ openstack role add --project service --user neutron admin
jika sudah, sekarang kita akan membuat service entity neutron:
$ openstack service create --name neutron \
--description "Vschool OpenStack Networking" network
buat Networking Service API endpoint nya (Admin, Public, Internal):
$ openstack endpoint create --region RegionOne \
network admin http://10.10.10.11:9696
$ openstack endpoint create --region RegionOne \
network public http://10.10.10.11:9696
$ openstack endpoint create --region RegionOne \
network internal http://10.10.10.11:9696
note: 10.10.10.11 adalah ip node controller
LAB 24 - Konfigurasi Opsi Networking Neutron - Node Controller
kita hanya bisa men-deploy satu dari 2 opsi arsitektur neutron ini.
- Opsi 1 - Provider (External) Networks, yaitu arsitektur sangat simple yang hanya support untuk menghubungkan VMs ke external networks. Dan hanya admin atau user privileged yang bisa me-manage external networks.
- Opsi 2 - Self-Service Networks, yaitu arsitektur yang dapat menghubungkan VMs ke self-service networks. User demo dan user unprivileged yang lain dapat me-manage self-service termasuk router yang menyediakan koneksi antara self-service dan external-networks.
kita akan menggunakan Opsi 2 untuk lab kali ini.
ingat! ini masih di node controller
STEP 1 - Install Package Neutron
pertama kita install paket nya dulu:
# apt-get install neutron-server neutron-plugin-ml2 neutron-plugin-linuxbridge-agent neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent python-neutronclient conntrack
STEP 2 - Konfigurasi Server Komponen
kemudian kita konfigurasi file neutron.conf:
# nano /etc/neutron/neutron.conf
dan tambahkan konfigurasi berikut:
[DEFAULT]
core_plugin = ml2
service_plugins = router
allow_overlapping_ips = True
rpc_backend = rabbit
auth_strategy = keystone
notify_nova_on_port_status_changes = True
notify_nova_on_port_data_changes = True
nova_url = http://10.10.10.11:8774/v2
verbose = True
[keystone_authtoken]
auth_uri = http://10.10.10.11:5000
auth_url = http://10.10.10.11:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = neutron
password = vschool
[database]
connection = mysql://neutron:vschool@10.10.10.11/neutron
rabbit_host = 10.10.10.11
rabbit_userid = openstack
rabbit_password = vschool
[nova]
auth_url = http://10.10.10.11:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
region_name = RegionOne
project_name = service
username = nova
STEP 3 - Konfigurasi Modular Layer 2 (ML2) plug-in
kemudian kita buka file ml2_conf.ini:
# nano /etc/neutron/plugins/ml2/ml2_conf.ini
kemudian tambahkan konfigurasi berikut:
[ml2]
type_drivers = flat,vlan,vxlan
tenant_network_types = vxlan
mechanism_drivers = linuxbridge,l2population
extension_drivers = port_security
[ml2_type_flat]
flat_networks = public
[ml2_type_vxlan]
vni_ranges = 1:1000
[securitygroup]
enable_ipset = True
STEP 4 - Konfigurasi Linux bridge agent
lalu kita buka file linuxbridge_agent.ini:
# nano /etc/neutron/plugins/ml2/linuxbridge_agent.ini
dan tambahkan konfugurasi berikut:
[linux_bridge]
physical_interface_mappings = public:eth1
[vxlan]
enable_vxlan = True
local_ip = 10.10.10.11
l2_population = True
[agent]
prevent_arp_spoofing = True
[securitygroup]
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
STEP 5 - Konfigurasi layer-3 agent
buka file l3_agent.ini:
# nano /etc/neutron/l3_agent.ini
dan tambahkan konfigurasi berikut:
[DEFAULT]
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
external_network_bridge =
verbose = True
STEP 6 - Konfigurasi DHCP agent
buka file dhcp_agent.ini:
# nano /etc/neutron/dhcp_agent.ini
kemudian tambahkan konfigurasi berikut:
[DEFAULT]
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
enable_isolated_metadata = True
verbose = True
dnsmasq_config_file = /etc/neutron/dnsmasq-neutron.conf
setelah itu buat dan ubah file dnsmasq-neutron.conf untuk mengaktifkan DHCP MTU.
# nano /etc/neutron/dnsmasq-neutron.conf
dan tambahkan konfigurasi berikut
dhcp-option-force=26,1450
STEP 7 - Konfigurasi metadata agent
buka file metadata_agent.ini:
# nano /etc/neutron/metadata_agent.ini
dan tambahkan konfigurasi berikut:
[DEFAULT]
auth_uri = http://10.10.10.11:5000
auth_url = http://10.10.10.11:35357
auth_region = RegionOne
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = neutron
password = vschool
nova_metadata_ip = 10.10.10.11
metadata_proxy_shared_secret = metadata123
verbose = True
LAB 25 - Konfigurasi Neutron di Compute - Node Compute
note: sekarang kita pindah ke node compute (nova)
buka file nova.conf sebagai super user:
# nano /etc/nova/nova.conf
kemudian tambahkan konfigurasi berikut:
[neutron]
url = http://10.10.10.11:9696
auth_url = http://10.10.10.11:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
region_name = RegionOne
project_name = service
username = neutron
password = vschool
service_metadata_proxy = True
metadata_proxy_shared_secret = metadata123
LAB 26 - Sinkronisasi Neutron - Node Controller
sekarang kita pindah lagi ke node controller, sinkronisasi neutron dengan perintah berikut:
# su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron
# service nova-api restart
lalu restart juga service networking nya
# service neutron-server restart
# service neutron-plugin-linuxbridge-agent restart
# service neutron-dhcp-agent restart
# service neutron-metadata-agent restart
# service neutron-l3-agent restart
kemudian kita hapus file glance.sqlite nya, karena secara default ubuntu membuat paket di SQLite database. berikut perintah untuk menghapus nya:
# rm -f /var/lib/neutron/neutron.sqlite
LAB 27 - Install Paket Neutron - Node Compute
STEP 1 - Install Package Neutron
pertama kita install paket neutron nya:
# apt-get install neutron-plugin-linuxbridge-agent conntrack
lalu buka file neutron.conf dengan perintah:
# nano /etc/neutron/neutron.conf
dan tambahkan konfigurasi berikut
[DEFAULT]
rpc_backend = rabbit
auth_strategy = keystone
verbose = True
[oslo_messaging_rabbit]
rabbit_host = 10.10.10.11
rabbit_userid = openstack
rabbit_password = vschool
[keystone_authtoken]
auth_uri = http://10.10.10.11:5000
auth_url = http://10.10.10.11:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = neutron
password = vschool
STEP 2 - Konfugurasi Linux bridge agent
konfigurasi linuxbridge_agent.ini dengan perintah:
# nano /etc/neutron/plugins/ml2/linuxbridge_agent.ini
lalu tambahkan konfigurasi dibawah ini:
[linux_bridge]
physical_interface_mappings = public:eth1
[vxlan]
enable_vxlan = True
local_ip = 10.10.10.22
l2_population = True
[agent]
prevent_arp_spoofing = True
[securitygroup]
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
STEP 3 - Konfigurasi Compute agar menggunakan Neutron
kemudian buka file nova.conf:
# nano /etc/nova/nova.conf
dan tambahkan konfigurasi berikut:
[neutron]
url = http://10.10.10.11:9696
auth_url = http://10.10.10.11:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
region_name = RegionOne
project_name = service
username = neutron
password = vschool
STEP 4 - Restart Service-nya
kemudian restart nova-compute dan juga linux bridge agent nya:
# /etc/init.d/nova-compute restart
# /etc/init.d/neutron-plugin-linuxbridge-agent restart
LAB 28 - Verifikasi Neutron - Node Controller
login sebagai user biasa di node controller. kemudian load file admin-openrc.sh:
$ source admin-openrc.sh
lalu load extension neutron server-nya (cek proses neutron server)
$ neutron ext-list
kemudian cek agent list yang sedang berjalan
$ neutron agent-list
note: pastikan ada 4 host controller dan 1 host compute dan semuanya terdapat simbol :-)
fyuhhhh... kita lanjut ke part 7 tentang horizon yaa. untuk neutron sudahi dulu sampai disini. jika ada yang salah atau tidak mengerti silakan kontak saya atau komen aja juga tidak apa apa.
next to Horizon~
Nun walqalami wama yasthurun
Wassalamualaikum...
note: untuk gambarnya nyusul yaa
1 komentar
Terimakasih mas ilmu nya,
ReplyDeletemau tanya sekalian, setelah saya coba semua step2 nya tapi di bagian neotron agent list tidak ada "linux brige agent"
dan setelah saya cek ulang tidak ada yang salah dengan konfigurasi saya, mohon bantuannya