Iran Open Source (IOS)
2.63K subscribers
6.69K photos
147 videos
1.69K files
1.16K links
کانال IOS:
💎 امنیت سایبری، امنیت اطلاعات، امنیت شبکه
💎 دوره‌های تخصصی شبکه، امنیت و دیتاسنتر
💎 مجازی‌سازی، پردازش ابری و ذخیره سازی
💎 معرفی کتاب
💎 اخبار IT، امنیت، هک و نفوذ

🌀 مدیر کانال: میثم ناظمی
@Meysam_Nazemi

🌀 مدیر تبلیغات: @MoNaITCU
Download Telegram
گام3: حال می‌بایست Swift Ring fileها را از Swift Proxy Node به همه Storage Nodeها کپی نماییم. برای این منظور از دستور scp یا Secure Copy Protocol بصورت زیر استفاده خواهیم کرد:
# scp /etc/swift/*.gz 10.0.0.71:/etc/swift/
شکل 29-15
گام4: در این مرحله می‌بایست به پیکربندی Swift و Rsync بر روی همه Storage Nodeها بپردازیم. برای این منظور می‌بایست بصورت زیر عمل نماییم:
# chown swift. /etc/swift/*.gz
# vi /etc/swift/swift.conf

# set the value which is set on Proxy Node
[swift-hash]
swift_hash_path_suffix = swift_shared_path
swift_hash_path_prefix = swift_shared_path

# vi /etc/swift/account-server.conf

# line 6: change
bind_ip = 0.0.0.0
bind_port = 6202

# vi /etc/swift/container-server.conf

# line 6: change
bind_ip = 0.0.0.0

bind_port = 6201

# vi /etc/swift/object-server.conf

# line 6: change
bind_ip = 0.0.0.0
bind_port = 6200

# vi /etc/rsyncd.conf

# add to the end
pid file = /var/run/rsyncd.pid
log file = /var/log/rsyncd.log
uid = swift
gid = swift
# specify the IP address of each storage node
address = 10.0.0.71

[account]
path = /srv/node
read only = false
write only = no
list = yes
incoming chmod = 0644
outgoing chmod = 0644
max connections = 25
lock file = /var/lock/account.lock

[container]
path = /srv/node
read only = false
write only = no
list = yes
incoming chmod = 0644
outgoing chmod = 0644
max connections = 25
lock file = /var/lock/container.lock

[object]
path = /srv/node
read only = false
write only = no
list = yes
incoming chmod = 0644
outgoing chmod = 0644
max connections = 25
lock file = /var/lock/object.lock

[swift_server]
path = /etc/swift
read only = true
write only = no
list = yes
incoming chmod = 0644
outgoing chmod = 0644
max connections = 5
lock file = /var/lock/swift_server.lock
شکل 30-15
گام5: بر روی Storage Node، اگر سرویس SELinux فعال است، می‌بایست policy آن را بصورت زیر تغییر دهید. فقط توجه داشته باشید که شماره device را بر روی هر Node می‌بایست تغییر دهید ("device*"):
# semanage fcontext -a -t swift_data_t /srv/node/device0
# restorecon /srv/node/device0
شکل 31-15
گام6: اگر فایروال Firewalld بر روی سرور شما در حال اجراست، با استفاده از دستورات زیر به پورت‌های: 873/TCP، 6200/TCP، 6201/TCP و 6202/TCP اجازده دسترسی بدهید:
# firewall-cmd —add-port={873/tcp,6200/tcp,6201/tcp,6202/tcp} —permanent
# firewall-cmd —reload
شکل 32-15
گام7: حال می‌بایست Swift سرویس‌ها را بصورت زیر start نمایید:
# systemctl start rsyncd
# systemctl enable rsyncd
# for ringtype in account container object; do
systemctl start openstack-swift-$ringtype
systemctl enable openstack-swift-$ringtype
for service in replicator updater auditor; do
if [ $ringtype != 'account' ] || [ $service != 'updater' ]; then
systemctl start openstack-swift-$ringtype-$service
systemctl enable openstack-swift-$ringtype-$service
fi
done
done
شکل 33-15
چطور از Swift استفاده کنیم؟
در بخش‌های قبل با مراحل نصب و راه‌اندازی و همچنین پیکربندی Swift به عنوان OpenStack Object Storage آشنا شدیم، حال این سوال پیش می‌آید که چطور می‌توان از Swift Storage برای کلاینت‌‌ها استفاده کرد؟ جهت پاسخ به این سوال سناریو شکل 34-15 را مشاهده نمایید. این سناریو همان سناریو قبل است با این تفاوت که یک Client را نیز به آن اضافه کرده‌ایم.
شکل 34-15
برای این منظور می‌بایست گام‌های زیر را دنبال نمایید:

گام1: ابتدا می‌بایست کاربری را برای استفاده از Swift بر روی سرور Control Node که پیشتر کامپوننت Keystone را بر روی آن نصب و پیکربندی‌ کرده‌ایم، اضافه نماییم. در این روش، اگر شما می‌خواهید که به سرعت از Swift استفاده نماییم، نیازی به اضافه کردن یک user جدید نیست و می‌توانید از کاربر admin یا swift user موجود بر روی Keystone نیز استفاده نمایید.
• جهت اضافه کردن swiftservice project
# openstack project create —domain default —description "Swift Service Project" swiftservice
شکل 35-15
• جهت اضافه کردن نقش SwiftOperator
# openstack role create SwiftOperator
شکل 36-15
• جهت اضافه کردن یک user
# openstack user create —domain default —project swiftservice —password userpassword swiftuser01