• جهت اضافه کردن یک ورودی برای swift endpoint (admin)
# openstack endpoint create —region RegionOne object-store admin https://$swift_proxy:8080/v1
# openstack endpoint create —region RegionOne object-store admin https://$swift_proxy:8080/v1
• پیکربندی Proxy Node:
گام1: حال جهت نصب Swift-Proxy با فرض اینکه repositoryهای EPEL و Ocata بر روی سرور Proxy Node شما پیشتر نصب شدهاند، کافیست تا دستور زیر را اجرا نمایید:
# yum —enablerepo=centos-openstack-ocata,epel -y install openstack-swift-proxy python-memcached openssh-clients
گام1: حال جهت نصب Swift-Proxy با فرض اینکه repositoryهای EPEL و Ocata بر روی سرور Proxy Node شما پیشتر نصب شدهاند، کافیست تا دستور زیر را اجرا نمایید:
# yum —enablerepo=centos-openstack-ocata,epel -y install openstack-swift-proxy python-memcached openssh-clients
گام2: در ادامه میبایست به پیکربندی Swift-Proxy بپردازیم. برای این منظور فایل پیکربندی proxy-server.conf را که در مسیر /etc/swift قرار دارد توسط ویرایشگر متنی vi باز کرده:
# vi /etc/swift/proxy-server.conf
سپس بصورت زیر عمل میکنیم (توجه داشته باشید که بخشهای Highlight شده را میبایست اضافه نماییم):
[filter:cache]
use = egg:swift#memcache
# line 42: specify Memcached server
memcache_servers = 10.0.0.30:11211
# end line: change like follows (Keystone auth info)
[filter:authtoken]
paste.filter_factory = keystonemiddleware.auth_token:filter_factory
# admin_tenant_name = %SERVICE_TENANT_NAME%
# admin_user = %SERVICE_USER%
# admin_password = %SERVICE_PASSWORD%
# auth_host = 127.0.0.1
# auth_port = 35357
# auth_protocol = http
# signing_dir = /tmp/keystone-signing-swift
auth_uri = https://10.0.0.30:5000
auth_url = https://10.0.0.30:35357
memcached_servers = 10.0.0.30:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = swift
password = servicepassword
delay_auth_decision = true
در نهایت فایل پیکربندی مزبور را ذخیره کرده و از آن خارج میشویم.
# vi /etc/swift/proxy-server.conf
سپس بصورت زیر عمل میکنیم (توجه داشته باشید که بخشهای Highlight شده را میبایست اضافه نماییم):
[filter:cache]
use = egg:swift#memcache
# line 42: specify Memcached server
memcache_servers = 10.0.0.30:11211
# end line: change like follows (Keystone auth info)
[filter:authtoken]
paste.filter_factory = keystonemiddleware.auth_token:filter_factory
# admin_tenant_name = %SERVICE_TENANT_NAME%
# admin_user = %SERVICE_USER%
# admin_password = %SERVICE_PASSWORD%
# auth_host = 127.0.0.1
# auth_port = 35357
# auth_protocol = http
# signing_dir = /tmp/keystone-signing-swift
auth_uri = https://10.0.0.30:5000
auth_url = https://10.0.0.30:35357
memcached_servers = 10.0.0.30:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = swift
password = servicepassword
delay_auth_decision = true
در نهایت فایل پیکربندی مزبور را ذخیره کرده و از آن خارج میشویم.
در ادامه این بار فایل پیکربندی swift.conf را که در مسیر /etc/swift قرار دارد توسط ویرایشگر متنی vi باز کرده:
# vi /etc/swift/swift.conf
و خطوط Highlight شده زیر را تغییر داده یا اضافه نمایید:
[swift-hash]
swift_hash_path_suffix = swift_shared_path
swift_hash_path_prefix = swift_shared_path
در آخر نیز فایل پیکربندی swift.conf را ذخیره نموده و از آن خارج شوید.
# vi /etc/swift/swift.conf
و خطوط Highlight شده زیر را تغییر داده یا اضافه نمایید:
[swift-hash]
swift_hash_path_suffix = swift_shared_path
swift_hash_path_prefix = swift_shared_path
در آخر نیز فایل پیکربندی swift.conf را ذخیره نموده و از آن خارج شوید.
گام3: در این مرحله میبایست Swift Ring fileها را پیکربندی نماییم. برای این منظور دستورات زیر را به ترتیب و پشت سرهم اجرا کنید:
# swift-ring-builder /etc/swift/account.builder create 12 3 1
# swift-ring-builder /etc/swift/container.builder create 12 3 1
# swift-ring-builder /etc/swift/object.builder create 12 3 1
# swift-ring-builder /etc/swift/account.builder add r0z0-10.0.0.71:6202/device0 100
# swift-ring-builder /etc/swift/container.builder add r0z0-10.0.0.71:6201/device0 100
# swift-ring-builder /etc/swift/object.builder add r0z0-10.0.0.71:6200/device0 100
# swift-ring-builder /etc/swift/account.builder add r1z1-10.0.0.72:6202/device1 100
# swift-ring-builder /etc/swift/container.builder add r1z1-10.0.0.72:6201/device1 100
# swift-ring-builder /etc/swift/object.builder add r1z1-10.0.0.72:6200/device1 100
# swift-ring-builder /etc/swift/account.builder add r2z2-10.0.0.73:6202/device2 100
# swift-ring-builder /etc/swift/container.builder add r2z2-10.0.0.73:6201/device2 100
# swift-ring-builder /etc/swift/object.builder add r2z2-10.0.0.73:6200/device2 100
# swift-ring-builder /etc/swift/account.builder rebalance
# swift-ring-builder /etc/swift/container.builder rebalance
# swift-ring-builder /etc/swift/object.builder rebalance
# swift-ring-builder /etc/swift/account.builder create 12 3 1
# swift-ring-builder /etc/swift/container.builder create 12 3 1
# swift-ring-builder /etc/swift/object.builder create 12 3 1
# swift-ring-builder /etc/swift/account.builder add r0z0-10.0.0.71:6202/device0 100
# swift-ring-builder /etc/swift/container.builder add r0z0-10.0.0.71:6201/device0 100
# swift-ring-builder /etc/swift/object.builder add r0z0-10.0.0.71:6200/device0 100
# swift-ring-builder /etc/swift/account.builder add r1z1-10.0.0.72:6202/device1 100
# swift-ring-builder /etc/swift/container.builder add r1z1-10.0.0.72:6201/device1 100
# swift-ring-builder /etc/swift/object.builder add r1z1-10.0.0.72:6200/device1 100
# swift-ring-builder /etc/swift/account.builder add r2z2-10.0.0.73:6202/device2 100
# swift-ring-builder /etc/swift/container.builder add r2z2-10.0.0.73:6201/device2 100
# swift-ring-builder /etc/swift/object.builder add r2z2-10.0.0.73:6200/device2 100
# swift-ring-builder /etc/swift/account.builder rebalance
# swift-ring-builder /etc/swift/container.builder rebalance
# swift-ring-builder /etc/swift/object.builder rebalance
حال دستورات زیر را به منظور تعیین مالکین فایل پیکربندی swift و همچنین start و enable کردن سرویس openstack-swift-proxy اجرا نموده تا در پروسههای boot بعدی نیز این سرویس بصورت خودکار اجرا شود:
# chown swift. /etc/swift/*.gz
# systemctl start openstack-swift-proxy
# systemctl enable openstack-swift-proxy
# chown swift. /etc/swift/*.gz
# systemctl start openstack-swift-proxy
# systemctl enable openstack-swift-proxy
گام4: اگر فایروال Firewalld بر روی سرور شما در حال اجرا است، میبایست توسط دستورات زیر به پورت 8080/TCP اجازه دسترسی بدهید:
# firewall-cmd —add-port=8080/tcp —permanent
# firewall-cmd —reload
# firewall-cmd —add-port=8080/tcp —permanent
# firewall-cmd —reload
♻️ پایان Part-26. امیدوارم این بخش از آموزش را نیز پسندیده باشید. فردا شب بخش دیگری از آموزش دوره تخصصی COA را ارائه خواهیم نمود. شب خوش
ایرانیان در بزرگ ترین شرکت های آمریکایی حضوری موثر دارند. @iranopensource 🐧