إيه اللي بيحصل فعلا جوه OpenStack لما تعمل server create؟ بالدليل | Deep Dive 0
Sa3y Lab
0:00 / 0:00
إيه اللي بيحصل فعلا جوه OpenStack لما تعمل server create؟ بالدليل | Deep Dive 0
126 просмотров · 1 дн. назад
Sa3y Lab
216 подписчиков
126 просмотров · 1 дн. назад
الأمر ده كلنا كتبناه مية مرة: openstack server create. بتدوس Enter، وفي ثواني الـ VM بتبقى ACTIVE. بس إيه اللي حصل في الثواني دي بالظبط؟
في الحلقة دي بنمشي ورا request واحد جوه OpenStack خطوة بخطوة: Keystone و nova-api و nova-conductor و nova-scheduler و Placement و Neutron و Glance و Ceph — وكل خطوة بأمر وسطر log من السيستم نفسه. وفي الآخر بنكسر الـ cloud تلات مرات ونشوف كل مرة وقع فين.
🇬🇧 English subtitles available — turn on CC.
We follow one openstack server create request through every OpenStack service — Keystone, nova-api, conductor, scheduler, Placement, Neutron, Glance and Ceph — with a command and a log line as proof at every step. Then we break the cloud 3 times and trace each failure.
⏱️ Chapters
00:00 What happens in these seconds?
00:55 Intro
01:26 The lab & one command
02:18 The players + 3 ways services talk
04:06 1 · Keystone: the token
04:55 2 · nova-api: 202 Accepted
08:18 3 · Scheduling: conductor → scheduler → Placement
15:24 4 · On the compute: queue, port, Ceph clone, vif-plugged
23:48 One XML file holds all of OpenStack
25:52 Where did the seconds go?
27:32 The full map
29:19 Breaking the cloud 3 times
31:32 Break 2: scheduler down
34:53 Break 3: No valid host
36:21 The 3-command method
37:12 Next: Keystone
🧪 The lab
Kolla-Ansible 2025.1 · 3 controllers (HA) · 3 computes · 3 Ceph nodes · ML2/OVS + VXLAN
💻 Commands used in the episode
openstack server create --flavor m1.tiny --image cirros-raw --network demo-net --wait sa3y-vm
openstack token issue
openstack --debug server create --flavor m1.tiny --image cirros-raw --network demo-net sa3y-vm-2
openstack server event list sa3y-vm-2
grep $REQUEST_ID /var/log/kolla/nova/nova-scheduler.log
openstack resource provider allocation show $SERVER_ID
openstack resource provider list
docker exec rabbitmq rabbitmqctl list_queues name consumers messages
openstack port list --server sa3y-vm-2
openstack port show $PORT_ID -c fixed_ips -c binding_host_id -c binding_vif_type -c status
rbd ls vms
rbd info vms/${SERVER_ID}_disk | grep parent
grep $SERVER_ID /var/log/kolla/nova/nova-compute.log | grep network-vif-plugged
docker exec nova_libvirt virsh dumpxml $INSTANCE_NAME
openstack server event show sa3y-vm-2 $REQUEST_ID
grep $SERVER_ID /var/log/kolla/nova/nova-compute.log | grep "Took"
💥 The 3 breaks
1) Wrong password → HTTP 401 (Keystone)
2) nova-scheduler stopped on all controllers → message stuck in the queue → rpc_response_timeout (60 s) → ERROR
3) Flavor with a 1 PB disk → No valid host was found (Placement)
💼 LinkedIn: / ahmed-saey-eldin-224a28130
#OpenStack #CloudComputing #TelcoCloud #Ceph #DevOps