Advertisement
thanh_thu

Monitor and Log OpenStack Clouds with ELK

Jun 23rd, 2019
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.29 KB | None | 0 0
  1. => Lấy nhật ký:
  2. Hầu hết các dịch vụ quy ước ghi log của chúng vào thư mục con của /var/log/. Các thành phần sau đây tạo ra các bản ghi cần được theo dõi:
  3.  
  4. Nova (log location – /var/log/nova)
  5. Swift (log location – /var/log/syslog)
  6. Cinder (log location – /var/log/cinder)
  7. Keystone (log location – /var/log/keystone)
  8. Neutron (log location – /var/log/neutron)
  9. Glance (log location – /var/log/glance)
  10.  
  11. Ngoài ra, Openstack cho phép truy xuất log bằng API REST và CLI. Sử dụng API trả về dữ liệu theo định dạng JSON có cấu trúc, giúp quá trìnhog ghi log và vận chuyển log đơn giản hơn do khả năng tương thích tốt với Logstash và Elasticsearch.
  12.  
  13. => Authentication
  14. Để sử dụng API Openstack, cần một token xác thực mà có thể lấy đc từ keystone bằng curl:
  15.  
  16. curl -X POST -H "Content-Type: application/json" -d '{
  17. "auth": {
  18. "tenantName": "<TENANT_NAME>",
  19. "passwordCredentials": {
  20. "username": "<USERNAME>",
  21. "password": "<PASSWORD>"
  22. }
  23. }
  24. }' "http://<OPENSTACK_IP>:35357/v2.0/tokens/"
  25.  
  26. TENANT_NAME: tên dự án muốn giám sát
  27. USERNAME, PASSWORD: thông tin đăng nhập admin vào Openstack
  28. OPENSTACK_IP: địa chỉ opensatck.
  29.  
  30. => Nova Metrics
  31. Theo dõi từ : - hypervisor
  32. - server/Vm
  33. - tenant
  34. => Hypervisor Metrics
  35. - current_workload: số task (build, snapshot, migrate, ...)
  36. - Running_vms: số VMs.
  37. - vcpus: số use/available CPUs
  38. - free_disk_gb: dung lượng ổ cứng trống = GB
  39. - free_ram_mb: dung lượng bộ nhớ khả dụng
  40.  
  41. GET http://<IP>:8774/v2.1/os-hypervisors/statistics
  42.  
  43. => Server Metrics
  44. Thông tin về các bản riêng lể hoạt động trên các node compute
  45. GET http://<IP>:8774/v2.1/<TENANT_ID>/servers/<SERVER_ID>/diagnostics
  46. Danh sác máy chủ cho mỗi tenant
  47. GET http://<IP>:8774/v2.1/<TENANT_ID>/servers
  48.  
  49. => Tenant Metrics
  50. GET http://<IP>:8774/v2.1/os-quota-sets/<TENANT_ID>
  51.  
  52. => RabbitMQ
  53. Các dữ liệu đc thu thập = [rabbitmqctl]:
  54.  
  55. - đếm queues hoạt động
  56. Command: rabbitmqctl list_queues name | wc -l
  57.  
  58. - kích thước queues theo bytes
  59. Command: rabbitmqctl list_queues name memory | grep computeytes
  60.  
  61. - số consumer theo queues
  62. Command: rabbitmqctl list_queues name consumers | grep compute
  63.  
  64. => Cách giám sát và ghi log OpenStack với ELK
  65.  
  66. - Cài đặt Logstash trên OpenStack Controler
  67. - Sử dụng Logstash để chuyển tiếp log trên các node controller đến Central Elasticsearch server. Ngoài ra có thể sử dụng beats. Beats là những data shipper mã nguồn mở mà ta sẽ cài đặt như các agent trên các server mà chúng ta cần thu thập các sự kiện để gửi các kiểu dữ liệu khác nhau tới Elasticsearch. Beats có thể gửi dữ liệu trực tiếp tới Elasticsearch hay tới Logstash.
  68. - Chúng ta cần cấu hình logstash để chúng thu thập các bản ghi thích hợp, phân tích và gửi chúng đến một máy chủ Elasticsearch
  69. - Sử dụng grok để parse,để ELK có thể trình bày dữ liệu 1 cách phù hợp.
  70. - Giao diện đồ họa tổ chức và làm rõ thông tin chảy vào ELK là Kibana.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement