OpenStack Antelope : Skyline कॉन्फ़िगर करें2023/09/11 |
OpenStack डैशबोर्ड सेवा (Skyline) स्थापित करें।
यह उदाहरण निम्न प्रकार से पर्यावरण पर आधारित है।
------------+--------------------------+--------------------------+------------ | | | eth0|10.0.0.30 eth0|10.0.0.50 eth0|10.0.0.51 +-----------+-----------+ +-----------+-----------+ +-----------+-----------+ | [ dlp.srv.world ] | | [ network.srv.world ] | | [ node01.srv.world ] | | (Control Node) | | (Network Node) | | (Compute Node) | | | | | | | | MariaDB RabbitMQ | | Open vSwitch | | Libvirt | | Memcached Nginx | | Neutron Server | | Nova Compute | | Keystone httpd | | OVN-Northd | | Open vSwitch | | Glance Nova API | | Nginx iSCSI Target | | OVN Metadata Agent | | Cinder API | | Cinder Volume | | OVN-Controller | | Skyline API/Console | | Heat API/Engine | | | +-----------------------+ +-----------------------+ +-----------------------+ |
[1] | Keystone में Skyline के लिए उपयोगकर्ता जोड़ें। |
# [service] प्रोजेक्ट में [skyline] उपयोगकर्ता बनाएं root@dlp ~(keystone)# openstack user create --domain default --project service --password servicepassword skyline +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | default_project_id | d3dd87fb1a034f7883539a6a4f83781f | | domain_id | default | | enabled | True | | id | 7ff47d496710451da563f7f09c08927c | | name | skyline | | options | {} | | password_expires_at | None | +---------------------+----------------------------------+ # [skyline] उपयोगकर्ता को [admin] भूमिका में जोड़ें root@dlp ~(keystone)# openstack role add --project service --user skyline admin
|
[2] | Skyline सेवा के लिए MariaDB पर एक उपयोगकर्ता और डेटाबेस जोड़ें। |
root@dlp ~(keystone)# mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 113 Server version: 10.6.12-MariaDB-0ubuntu0.22.04.1 Ubuntu 22.04 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> create database skyline; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> grant all privileges on skyline.* to skyline@'localhost' identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> grant all privileges on skyline.* to skyline@'%' identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> exit Bye |
[3] | Skyline API कॉन्फ़िगर करें। |
root@dlp ~(keystone)#
groupadd -g 64080 skyline root@dlp ~(keystone)# useradd -u 64080 -g skyline -d /var/lib/skyline -s /sbin/nologin skyline root@dlp ~(keystone)# mkdir -p /etc/skyline /var/lib/skyline /var/log/skyline root@dlp ~(keystone)# chmod 750 /etc/skyline /var/lib/skyline /var/log/skyline
root@dlp ~(keystone)#
pip3 install skyline-apiserver root@dlp ~(keystone)# git clone https://opendev.org/openstack/skyline-apiserver.git root@dlp ~(keystone)# cp ./skyline-apiserver/etc/gunicorn.py /etc/skyline/gunicorn.py root@dlp ~(keystone)# cp ./skyline-apiserver/etc/skyline.yaml.sample /etc/skyline/skyline.yaml
root@dlp ~(keystone)#
vi /etc/skyline/gunicorn.py # पंक्ति 17 : परिवर्तन bind = " 127.0.0.1:28000 "
root@dlp ~(keystone)#
vi /etc/skyline/skyline.yaml # पंक्ति 5 : MariaDB कनेक्शन जानकारी database_url: mysql://skyline:password@dlp.srv.world/skyline # पंक्ति 7 : परिवर्तन log_dir: /var/log/skyline # पंक्ति 27 : Keystone कनेक्शन जानकारी keystone_url: https://dlp.srv.world:5000 # पंक्ति 59 : Skyline उपयोगकर्ता पासवर्ड system_user_domain: Default system_user_name: skyline system_user_password: 'servicepassword'root@dlp ~(keystone)# cd ./skyline-apiserver root@dlp skyline-apiserver(keystone)# make db_sync alembic -c skyline_apiserver/db/alembic/alembic.ini upgrade head 2023-03-30 10:48:07.135 | INFO | alembic.runtime.migration:__init__:204 - Context impl MySQLImpl. 2023-03-30 10:48:07.135 | INFO | alembic.runtime.migration:__init__:207 - Will assume non-transactional DDL. 2023-03-30 10:48:07.154 | INFO | alembic.runtime.migration:run_migrations:618 - Running upgrade -> 000, initroot@dlp skyline-apiserver(keystone)# root@dlp ~(keystone)# chown -R skyline. /etc/skyline /var/lib/skyline /var/log/skyline
root@dlp ~(keystone)#
vi /etc/systemd/system/skyline-apiserver.service # नया निर्माण [Unit] Description=OpenStack Skyline APIServer [Service] User=skyline Group=skyline Type=simple ExecStart=/usr/local/bin/gunicorn -c /etc/skyline/gunicorn.py skyline_apiserver.main:app LimitNOFILE=32768 Restart=on-failure TimeoutStopSec=15 [Install] WantedBy=multi-user.target systemctl daemon-reload root@dlp ~(keystone)# systemctl enable --now skyline-apiserver |
[4] | Skyline कंसोल कॉन्फ़िगर करें। |
root@dlp ~(keystone)#
root@dlp ~(keystone)# apt -y install npm python-is-python3 root@dlp ~(keystone)# npm install -g yarn
git clone https://opendev.org/openstack/skyline-console.git root@dlp ~(keystone)# cd ./skyline-console root@dlp skyline-console(keystone)# make package root@dlp skyline-console(keystone)# pip3 install --force-reinstall ./dist/skyline_console-*.whl root@dlp skyline-console(keystone)#
root@dlp ~(keystone)#
vi /etc/nginx/conf.d/skyline.conf # नया निर्माण upstream skyline { server 127.0.0.1:28000 fail_timeout=0; } server { listen 9999 ssl http2 default_server; server_name dlp.srv.world; root /usr/local/lib/python3.10/dist-packages/skyline_console/static; index index.html; # अपने प्रमाणपत्र में बदलें ssl_certificate "/etc/letsencrypt/live/dlp.srv.world/fullchain.pem"; ssl_certificate_key "/etc/letsencrypt/live/dlp.srv.world/privkey.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; error_page 497 https://$http_host$request_uri; location / { try_files $uri $uri/ /index.html; expires 1d; add_header Cache-Control "public"; } location /api/openstack/skyline/ { proxy_pass http://skyline/; proxy_redirect off; proxy_buffering off; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header Host $http_host; } # अपने Nova Endpoint पर बदलें location /api/openstack/regionone/nova/ { proxy_pass https://dlp.srv.world:8774/; proxy_redirect https://dlp.srv.world:8774/ /api/openstack/regionone/nova/; proxy_buffering off; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header Host $http_host; } # अपने Keystone Endpoint पर बदलें location /api/openstack/regionone/keystone/ { proxy_pass https://dlp.srv.world:5000/; proxy_redirect https://dlp.srv.world:5000/ /api/openstack/regionone/keystone/; proxy_buffering off; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header Host $http_host; } # अपने Glance Endpoint पर बदलें location /api/openstack/regionone/glance/ { proxy_pass https://dlp.srv.world:9292/; proxy_redirect https://dlp.srv.world:9292/ /api/openstack/regionone/glance/; proxy_buffering off; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header Host $http_host; } # अपने Neutron Endpoint पर बदलें location /api/openstack/regionone/neutron/ { proxy_pass https://network.srv.world:9696/; proxy_redirect https://network.srv.world:9696/ /api/openstack/regionone/neutron/; proxy_buffering off; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header Host $http_host; } # अपने Heat Endpoint पर बदलें location /api/openstack/regionone/heat/ { proxy_pass https://network.srv.world:8004/; proxy_redirect https://network.srv.world:8004/ /api/openstack/regionone/heat/; proxy_buffering off; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header Host $http_host; } # अपने Placement Endpoint पर बदलें location /api/openstack/regionone/placement/ { proxy_pass https://dlp.srv.world:8778/; proxy_redirect https://dlp.srv.world:8778/ /api/openstack/regionone/placement/; proxy_buffering off; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header Host $http_host; } # अपने Cinder Endpoint पर बदलें location /api/openstack/regionone/cinder/ { proxy_pass https://dlp.srv.world:8776/; proxy_redirect https://dlp.srv.world:8776/ /api/openstack/regionone/cinder/; proxy_buffering off; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header Host $http_host; } } systemctl restart nginx |
[5] |
किसी भी वेब ब्राउज़र से नीचे दिए गए यूआरएल तक पहुंचें।
एक्सेस करने के बाद, Skyline लॉगिन फॉर्म प्रदर्शित होता है, आप Keystone में किसी भी उपयोगकर्ता के साथ लॉगिन कर सकते हैं।
⇒ https://(डैशबोर्ड सर्वर का होस्टनाम - वही नाम जो प्रमाणपत्र में पंजीकृत है):9999/ |
![]() |
[6] | सफलतापूर्वक लॉगिन करने के बाद, Skyline डैशबोर्ड प्रदर्शित होता है। |
![]() |
[7] | सेटिंग्स को सत्यापित करने के लिए एक उदाहरण बनाने का प्रयास करें। बाएँ फलक पर [इंस्टेंस] चुनें और दाएँ फलक पर [क्रिएट इंस्टेंस] बटन पर क्लिक करें। |
![]() |
[8] | उदाहरण के लिए छवि और डिस्क को कॉन्फ़िगर करें। |
![]() |
[9] | उदाहरण के लिए नेटवर्क और सुरक्षा समूह कॉन्फ़िगर करें। |
![]() |
[10] | उदाहरण के लिए इंस्टेंस का नाम और कुंजी-जोड़ी कॉन्फ़िगर करें। |
![]() |
[11] | सेटिंग्स की पुष्टि करें और [पुष्टि करें] बटन पर क्लिक करें। |
![]() |
[12] | यह ठीक है यदि इंस्टेंस सफलतापूर्वक बनाया गया है और [स्थिति] [सक्रिय] में बदल जाती है। |
![]() |
![]() |
![]() |
Sponsored Link |