Ubuntu 24.04
Sponsored Link

OpenStack Caracal : Neutron कॉन्फ़िगर करें (नियंत्रण नोड)2024/05/21

 

OpenStack नेटवर्क सेवा (Neutron) कॉन्फ़िगर करें।

यह उदाहरण यहां की तरह ऑल इन वन सेटिंग्स नहीं है, लेकिन 3 नोड्स वातावरण को निम्नानुसार कॉन्फ़िगर करें।
Neutron को एक प्लगइन सॉफ़्टवेयर की आवश्यकता है, इसे कुछ सॉफ़्टवेयर में से चुनना संभव है।
यह उदाहरण ML2 प्लगइन चुनता है. (यह बैकएंड के अंतर्गत Open vSwitch का उपयोग करता है)

------------+--------------------------+--------------------------+------------
            |                          |                          |
        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  |  |  Neutron L2/L3 Agent  |  |        Libvirt        |
|  Memcached  Nginx     |  |   Neutron Metadata    |  |      Nova Compute     |
|  Keystone   httpd     |  |     Open vSwitch      |  |    Neutron L2 Agent   |
|  Glance     Nova API  |  |                       |  |      Open vSwitch     |
|  Neutron Server       |  |                       |  |                       |
|  Neutron Metadata     |  |                       |  |                       |
+-----------------------+  +-----------------------+  +-----------------------+

[1]

Keystone सर्वर पर Neutron के लिए उपयोगकर्ता या सेवाएँ जोड़ें, यहाँ देखें।

[2] नियंत्रण नोड पर Neutron सर्वर स्थापित करें।
root@dlp ~(keystone)#
apt -y install neutron-server neutron-metadata-agent neutron-plugin-ml2 python3-neutronclient
[3] Neutron सर्वर कॉन्फ़िगर करें।
root@dlp ~(keystone)#
mv /etc/neutron/neutron.conf /etc/neutron/neutron.conf.org

root@dlp ~(keystone)#
vi /etc/neutron/neutron.conf
# नया निर्माण

[DEFAULT]
bind_host = 127.0.0.1
bind_port = 9696
core_plugin = ml2
service_plugins = router
auth_strategy = keystone
state_path = /var/lib/neutron
dhcp_agent_notification = True
allow_overlapping_ips = True
notify_nova_on_port_status_changes = True
notify_nova_on_port_data_changes = True
# RabbitMQ कनेक्शन जानकारी
transport_url = rabbit://openstack:password@dlp.srv.world:5672

[agent]
root_helper = sudo /usr/bin/neutron-rootwrap /etc/neutron/rootwrap.conf

# Keystone प्रामाणिक जानकारी
[keystone_authtoken]
www_authenticate_uri = https://dlp.srv.world:5000
auth_url = https://dlp.srv.world:5000
memcached_servers = dlp.srv.world:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = neutron
password = servicepassword
# यदि Apache2 Keystone पर स्व-हस्ताक्षरित प्रमाणपत्र का उपयोग कर रहे हैं, तो [true] पर जाएँ
insecure = false

# MariaDB कनेक्शन जानकारी
[database]
connection = mysql+pymysql://neutron:password@dlp.srv.world:3306/neutron_ml2

# Nova प्रामाणिक जानकारी
[nova]
auth_url = https://dlp.srv.world:5000
auth_type = password
project_domain_name = Default
user_domain_name = Default
region_name = RegionOne
project_name = service
username = nova
password = servicepassword
# यदि Apache2 Keystone पर स्व-हस्ताक्षरित प्रमाणपत्र का उपयोग कर रहे हैं, तो [true] पर जाएँ
insecure = false

[oslo_concurrency]
lock_path = $state_path/tmp

[oslo_policy]
enforce_new_defaults = true

root@dlp ~(keystone)#
chmod 640 /etc/neutron/neutron.conf

root@dlp ~(keystone)#
chgrp neutron /etc/neutron/neutron.conf
root@dlp ~(keystone)#
vi /etc/neutron/metadata_agent.ini
[DEFAULT]
# झूठ 2 : जोड़ें
# Nova API होस्ट निर्दिष्ट करें
nova_metadata_host = dlp.srv.world
nova_metadata_protocol = https
# अपनी पसंद की कोई भी गुप्त कुंजी निर्दिष्ट करें
metadata_proxy_shared_secret = metadata_secret
# Memcache सर्वर निर्दिष्ट करें
memcache_servers = dlp.srv.world:11211

root@dlp ~(keystone)#
vi /etc/neutron/plugins/ml2/ml2_conf.ini
# पंक्ति 154 : जोड़ें
# ठीक है, अब [tenant_network_types] के लिए कोई मूल्य नहीं है (यदि आवश्यकता हो तो बाद में सेट करें)

[ml2]
type_drivers = flat,vlan,vxlan
tenant_network_types =
mechanism_drivers = openvswitch
extension_drivers = port_security,qos
external_network_type = flat
root@dlp ~(keystone)#
vi /etc/nova/nova.conf
# अंत में निम्न जोड़ें : Neutron प्रमाणीकरण जानकारी
# [metadata_proxy_shared_secret] का मान [metadata_agent.ini] के मान के समान है

[neutron]
auth_url = https://dlp.srv.world:5000
auth_type = password
project_domain_name = Default
user_domain_name = Default
region_name = RegionOne
project_name = service
username = neutron
password = servicepassword
service_metadata_proxy = True
metadata_proxy_shared_secret = metadata_secret
insecure = false
[4] प्रॉक्सी सेटिंग्स के लिए Nginx कॉन्फ़िगर करें।
root@dlp ~(keystone)#
vi /etc/nginx/nginx.conf
# [stream] अनुभाग में जोड़ें

stream {
    upstream glance-api {
        server 127.0.0.1:9292;
    }
    server {
        listen 10.0.0.30:9292 ssl;
        proxy_pass glance-api;
    }
    upstream nova-api {
        server 127.0.0.1:8774;
    }
    server {
        listen 10.0.0.30:8774 ssl;
        proxy_pass nova-api;
    }
    upstream nova-metadata-api {
        server 127.0.0.1:8775;
    }
    server {
        listen 10.0.0.30:8775 ssl;
        proxy_pass nova-metadata-api;
    }
    upstream placement-api {
        server 127.0.0.1:8778;
    }
    server {
        listen 10.0.0.30:8778 ssl;
        proxy_pass placement-api;
    }
    upstream novncproxy {
        server 127.0.0.1:6080;
    }
    server {
        listen 10.0.0.30:6080 ssl;
        proxy_pass novncproxy;
    }
    upstream neutron-api {
        server 127.0.0.1:9696;
    }
    server {
        listen 10.0.0.30:9696 ssl;
        proxy_pass neutron-api;
    }
    ssl_certificate "/etc/letsencrypt/live/dlp.srv.world/fullchain.pem";
    ssl_certificate_key "/etc/letsencrypt/live/dlp.srv.world/privkey.pem";
}
[5] Neutron सेवाएँ प्रारंभ करें।
root@dlp ~(keystone)#
ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini

root@dlp ~(keystone)#
su -s /bin/bash neutron -c "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugin.ini upgrade head"

root@dlp ~(keystone)#
systemctl restart neutron-server neutron-metadata-agent nova-api nginx

root@dlp ~(keystone)#
systemctl enable neutron-server neutron-metadata-agent

मिलान सामग्री