Belajar file handling pada bahasa python programming

assalamualaikum, kali ini kita akan belajar mengenai file handling pada python

sebelum kita melanjutkan lebih jauh, ada baiknya kita mengenali apa itu file handling ?
sebuah file adalah informasi atau data yang berada pada komputer storage, kamu sudah mengetahui tentang perbedaan jenis file, seperti music, video, maupun text file. python memperikan kamu kemudahan untuk memanipulasi ( mengoperasikan ) file2 tersebut. biasanya kita bagi menjadi 2 kategori, yaitu file dan binary file. Text file adalah simple text dimana sebagai file binary yang mana memiliki binary data yang hanya dapat dibaca pada komputer

komponen2 pada file handling pada python sendiri lumayan cukup banyak, contoh

open(file_name, access_mode, buffering)
read(byte_count)
write(data)
close()
os.rename() os.delete()

Open
sekarang kita coba, pertama kita masuk dulu ke python console dan ketikkan:

>>> cobap = open(“momo.txt”, “w”)
>>> cobap

note : ketika ada file momo.txt dan kita menggunakan access mode  “w” file yang lama akan ke overwrite(replace) kalau kita ingin menambah gunakan “a

setelah itu coba isi dengan file momo.txt dengan command berikut :

>>> for count in range(0,100) :
…     cobap.write(str(count) + “\n”)

setelah itu coba cat momo.txt

Read
sekarang kita coba file handling read, langsung saja :

>>> cobap = open(“momo.txt”, “r”)
>>> for line in cobap.readlines() :
…     print line.strip()

Tutorial basic python : basic python operations with hands on

Assalamualaikum, bismillah oke disin kita akan belajar mengenai python. pada bagian ini kita akan mengenali basic2 dari operation python, untuk membantu kita agar lebih gampang conding di bahasa python programming.

oke kita langsung saja…

penggunaan DIR dan HELP
nah sekarang kita langsung saja operation help dengan cara sebagai berikut
kita ketikkan python di dalam linux terminal

import sys
help(sys)

keterangan : ( ) adalah bracket / parantheses 

pada output diatas kita bisa liat, apa saja yang ada pada sys module. sekarang kita coba menggunakan operation dir,

import sys
dir(sys)

 
Python argument passing
oke kali ini kita akan mencoba sebuah baris kode python yang berfungsi sebagai operation argument passing, kita coba dengan code berikut

buat file bernama ‘file1.py’ dan isi dengan code berikut :

import sys
print sys.argv

lalu kita run dengan cara

python file1.py 

output yang akan tampil adalah  :

 [‘file1.py’]

sekarang kita coba menambah bracket pada function argv, dengan command :

import sys
print sys.argv[2]

maka hasilnya akan seperti ini

Tutorial Install dan Konfigurasi Openstack Liberty : Object Storage kodename (Swift)

OpenStack Object Storage adalah sistem penyimpanan objek multi-tenant. Hal ini sangat scalable dan dapat mengelola sejumlah besar data yang tidak terstruktur dengan biaya rendah melalui RESTful HTTP API.

Ini mencakup komponen-komponen berikut:

Proxy servers (swift-proxy-server)
Menerima OpenStack Obyek Storage API dan permintaan HTTP baku untuk meng-upload file, memodifikasi metadata, dan menciptakan containers. Hal ini juga melayani file atau ‘containers listing’ untuk web browser. Untuk meningkatkan kinerja, proxy server dapat menggunakan cache opsional yang biasanya dikerahkan dengan ‘memcache’.

Account servers (swift-account-server)
Mengelola akun yang didefinisikan dengan Object Storage.

Container servers (swift-container-server)
Mengelola pemetaan container atau pemetaan folder, dalam Object Storage.

Object servers (swift-object-server)
Mengelola objek yang sebenarnya, seperti file, pada node penyimpanan.

Berbagai proses periodik
Melakukan tugas-tugas housekeeping di penyimpanan data yang besar. Layanan replikasi memastikan konsistensi dan ketersediaan melalui cluster. Proses berkala lainnya termasuk auditor, updaters, dan ‘reaper’.

WSGI middleware
Menangani otentikasi dan OpenStack Identity biasa.

swift client
Memungkinkan user untuk mengirimkan perintah ke REST API melalui klien command-line resmi baik sebagai ‘admin user’, ‘reseller user’, atau ‘swift user’.

swift-init
Membuat script yang menginisialisasi pembangunan ‘ring file’, mengambil nama daemon sebagai parameter dan menawarkan command. Didokumentasikan dalam http://docs.openstack.org/developer/swift/admin_guide.html#managing-services.

swift-recon
Sebuah alat CLI digunakan untuk mengambil berbagai metrik dan telemetri informasi tentang cluster yang telah dikumpulkan oleh middleware swift-recon.

swift-ring-builder
‘Storage ring build and rebalance utility’. Didokumentasikan dalam http://docs.openstack.org/developer/swift/admin_guide.html#managing-the-rings.

#LAB 35 Menginstal dan mengkonfigurasi Object Storage  pada ‘controller node’
Bagian ini menjelaskan cara menginstal dan mengkonfigurasi layanan proxy yang menangani permintaan untuk layanan akun, container, dan object yang beroperasi pada storage nodes. Untuk mempermudah, panduan ini akan menginstal dan mengkonfigurasi layanan proxy pada ‘controller node’. Namun, kamu dapat menjalankan layanan proxy pada setiap node dengan konektivitas jaringan ke ‘storage node’. Selain itu, kamu dapat menginstal dan mengkonfigurasi layanan proxy pada beberapa node untuk meningkatkan kinerja dan redundansi. Untuk informasi lebih lanjut, lihat Deployment Guide.

Layanan proxy bergantung pada mekanisme otentikasi dan otorisasi seperti layanan Identity. Namun, tidak seperti layanan lain, dia juga menawarkan mekanisme internal yang memungkinkan untuk beroperasi tanpa layanan OpenStack lainnya. Namun, untuk kesederhanaan, panduan ini referensi layanan Identitas di :doc: keystone. Sebelum kamu mengkonfigurasi layanan Object Storage, kamu harus membuat kredensial layanan dan endpoint API.

Catatan

Layanan Object Storage tidak menggunakan database SQL pada ‘controller node’. Sebaliknya, menggunakan database SQLite didistribusikan pada setiap ‘storage node’.

Dapatkan sumber mandat admin untuk mendapatkan akses ke command CLI ‘admin-only’:

$ source admin-openrc

Untuk membuat kredensial layanan Identity, selesaikan langkah-langkah ini:

Buat user swift:

$ openstack user create –domain default –password-prompt swift

Tambahkan peran admin ke user swift:

$ openstack role add –project service –user swift admin

Buat entitas layanan swift:

Buat endpoints API pada layanan Object Storage :

$ openstack endpoint create –region RegionOne \
  object-store public http://controller:8080/v1/AUTH_%\(tenant_id\)s
$ openstack endpoint create –region RegionOne \
  object-store internal http://controller:8080/v1/AUTH_%\(tenant_id\)s
$ openstack endpoint create –region RegionOne \
  object-store admin http://controller:8080/v1


#LAB 36 Instal dan konfigurasi komponen swift

Instal paket:

# apt-get install swift swift-proxy python-swiftclient \
  python-keystoneclient python-keystonemiddleware \
  memcached

 Catatan

Lengkapi environtment OpenStack sudah termasuk beberapa paket ini.

Buat direktore /etc/swift.

Dapatkan file konfigurasi pada layanan proxy dari repositori sumber Object Storage:

# curl -o /etc/swift/proxy-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/proxy-server.conf-sample?h=stable/liberty


Edit terlebih dahulu file /etc/swift/proxy-server.conf dan ikuti langkah dibawah ini:

nano /etc/swift/proxy-server.conf

pada bagian [DEFAULT], konfigurasi ‘bind port’, user, dan ‘configuration directory’:

[DEFAULT]

bind_port = 8080
user = swift
swift_dir = /etc/swift


pada bagian [pipeline:main], hapus modul tempurl dan tempauth dan tambahkan modul authtoken dan keystoneauth

[pipeline:main]
pipeline = catch_errors gatekeeper healthcheck proxy-logging cache
container_sync bulk ratelimit authtoken keystoneauth container-quotas
account-quotas slo dlo versioned_writes proxy-logging proxy-server

Catatan
Jangan mengubah urutan modul.

pada bagian [app: proxy server], aktifkan pembuatan akun otomatis:

[app:proxy-server]
use = egg:swift#proxy

account_autocreate = true


pada bagian [filter: authkeystone], konfigurasi peran operator:

[filter:keystoneauth]
use = egg:swift#keystoneauth

operator_roles = admin,user


pada bagian  [filter: authtoken], konfigurasi akses layanan Identity:

[filter:authtoken]
paste.filter_factory = keystonemiddleware.auth_token:filter_factory

auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = swift
password = SWIFT_PASS
delay_auth_decision = true


Ganti SWIFT_PASS dengan password yang kamu buat untuk user swift dalam pelayanan Identity.

Hapus komentar atau bahkan menghapus opsi lain dalam bagian [filter:authtoken].

pada bagian [filter: cache], konfigurasi lokasi memcached:

[filter:cache]
use = egg:swift#memcache

memcache_servers = 127.0.0.1:11211



#LAB 37 Menginstal dan mengkonfigurasi node penyimpanan (Swift)

Bagian ini menjelaskan cara menginstal dan mengkonfigurasi node penyimpanan yang mengoperasikan layanan akun, kontainer, dan objek. Untuk mempermudah, konfigurasi ini me-referensi dua node penyimpanan, masing-masing berisi dua perangkat penyimpanan blok lokal kosong. Petunjuk menggunakan /dev/sdb dan /dev/sdc, tetapi kamu dapat mengganti nilai yang berbeda untuk node tertentu.

Meskipun Object Storage mendukung sistem file dengan extended attributes (xattr), pengujian dan benchmarking menunjukkan performa dan kehandalan terbaik pada :term: XFS. Untuk informasi lebih lanjut tentang lingkungan skala secara horizontal.

Sebelum kamu menginstal dan mengkonfigurasi layanan Object Storage pada node penyimpanan, kamu harus mempersiapkan perangkat penyimpanan.





Catatan
Lakukan langkah ini pada setiap node penyimpanan.

Instal paket utilitas pendukung:

# apt-get install xfsprogs rsync

Formatlah perangkat /dev/sdb dan /dev/sdc sebagai XFS:

# mkfs.xfs /dev/sdb
# mkfs.xfs /dev/sdc

Buat struktur direktori ‘mount point’:

# mkdir -p /srv/node/sdb
# mkdir -p /srv/node/sdc

Edit file /etc/fstab dan tambahkan berikut untuk itu:

/dev/sdb /srv/node/sdb xfs noatime,nodiratime,nobarrier,logbufs=8 0 2
/dev/sdc /srv/node/sdc xfs noatime,nodiratime,nobarrier,logbufs=8 0 2

Mount perangkat:

# mount /srv/node/sdb
# mount /srv/node/sdc

Buat atau edit file /etc/rsyncd.conf mengandung berikut:

uid = swift
gid = swift
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
address = MANAGEMENT_INTERFACE_IP_ADDRESS
[account]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/account.lock
[container]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/container.lock
[object]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/object.lock


Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

Catatan
Layanan rsync tidak memerlukan otentikasi, jadi pertimbangkan menjalankannya pada jaringan private dalam lingkungan produksi.

Edit file /etc/default/rsync dan mengaktifkan layanan rsync:

nano /etc/default/rsync

RSYNC_ENABLE=true

Mulai layanan rsync:

# service rsync start


Instal dan konfigurasi komponen

 Catatan
Lakukan langkah ini pada setiap node penyimpanan.

Instal paket:

# apt-get install swift swift-account swift-container swift-object

Dapatkan file konfigurasi layanan accounting, container, dan object, dari repositori sumber di Object Storage:

# curl -o /etc/swift/account-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/account-server.conf-sample?h=stable/liberty 

# curl -o /etc/swift/container-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/container-server.conf-sample?h=stable/liberty

# curl -o /etc/swift/object-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/object-server.conf-sample?h=stable/liberty


Edit file /etc/swift/account-server.conf dan selesaikan langkah berikut:

nano /etc/swift/account-server.conf

pada bagian [DEFAULT], konfigurasikan ‘bind IP address’, ‘bind port’, user, ‘configuration directory’, dan ‘mount point directory’:

[DEFAULT]

bind_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
bind_port = 6002
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True


Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

pada bagian [pipeline:main], mengaktifkan modul yang tepat:

[pipeline:main]
pipeline = healthcheck recon account-server

pada bagian [filter:recon], konfigurasikan ‘recon (meters) cache directory’:

[filter:recon]
use = egg:swift#recon

recon_cache_path = /var/cache/swift


Edit file /etc/swift/container-server.conf dan selesaikan langkahberikut:

nano /etc/swift/container-server.conf

pada bagian DEFAULT] , konfigurasikan ‘bind IP address’, ‘bind port’, user, ‘configuration directory’, dan ‘mount point directory’:

[DEFAULT]

bind_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
bind_port = 6001
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True

 
Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

pada bagian [pipeline:main], mengaktifkan modul yang tepat:

[pipeline:main]
pipeline = healthcheck recon container-server

 

pada bagian [filter:recon], konfigurasikan ‘recon (meters) cache directory’:

[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift


Edit file /etc/swift/object-server.conf dan selesaikan langkah berikut:

nano /etc/swift/object-server.conf 

pada bagian [DEFAULT], konfigurasikan ‘bind IP address’, ‘bind port’, user, ‘configuration directory’, dan ‘mount point directory’:

[DEFAULT]

bind_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
bind_port = 6000
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True


Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

pada bagian [pipeline:main], mengaktifkan modul yang tepat:

[pipeline:main]
pipeline = healthcheck recon object-server

pada bagian [filter:recon], konfigurasikan ‘recon (meters) cache’ dan ‘lock directories’:

[filter:recon]
use = egg:swift#recon

recon_cache_path = /var/cache/swift
recon_lock_path = /var/lock


Pastikan kepemilikan tepat strukture direktori ‘mount point’:

# chown -R swift:swift /srv/node

Buat direktori recon dan pastikan kepemilikan tepat itu:

# mkdir -p /var/cache/swift
# chown -R root:swift /var/cache/swift

#LAB 38 Mengeclone dan Mengkonfigurasi Swift2







#LAB 38 Membuat dan Mendistribusikan initial ring

Sebelum memulai layanan Object Storage, kamu harus membuat initial akun, container, dan object ring. Pembangun ring membuat file konfigurasi dimana setiap node berguna untuk menentukan dan mengerahkan arsitektur penyimpanan. Untuk mempermudah, panduan ini menggunakan satu wilayah dan dua zona dengan 2 ^ 10 (1024) partisi maksimum, 3 replika setiap objek, dan 1 jam waktu minimum antara pergerakan satu partisi lebih dari sekali. Untuk Object Storage, partisi menunjukkan direktori pada perangkat penyimpanan bukan pada tabel partisi konvensional.

 Catatan
Lakukan langkah ini pada controller node.

membuat akun ring

Server akun menggunakan akun ring untuk mempertahankan daftar kontainer.
pindah ke directory /etc/swift.

cd /etc/swift

Buat file basis account.builder:

# swift-ring-builder account.builder create 10 3 1

Tambahkan setiap node penyimpanan untuk ring:

# swift-ring-builder account.builder \
  add –region 1 –zone 1 –ip

STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS –port 6002 \
  –device DEVICE_NAME –weight DEVICE_WEIGHT

Ganti STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan. Ganti DEVICE_NAME dengan nama perangkat penyimpanan pada node penyimpanan yang sama. Misalnya, menggunakan node penyimpanan pertama di Menginstal dan mengkonfigurasi node penyimpanan ganti dengan perangkat penyimpanan  /dev/sdb dan ‘weight of 100’:

# swift-ring-builder account.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6002 –device sdb –weight 100

Ulangi command ini untuk setiap perangkat penyimpanan pada setiap node penyimpanan. Pada arsitektur contoh gunakan command dalam empat variasi:

# swift-ring-builder account.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6002 –device sdb –weight 100
# swift-ring-builder account.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6002 –device sdc –weight 100
# swift-ring-builder account.builder add \
  –region 1 –zone 2 –ip 10.0.0.41 –port 6002 –device sdb –weight 100
# swift-ring-builder account.builder add \
  –region 1 –zone 2 –ip 10.0.0.41 –port 6002 –device sdc –weight 100


Memverifikasi ring content:

# swift-ring-builder account.builder


Rebalance ring:

# swift-ring-builder account.builder rebalance


Server kontainer menggunakan ‘container ring’ untuk mempertahankan daftar objek. Namun, tidak melacak lokasi objek.

Ubah ke directory /etc/swift.

cd /etc/swift

Buat file dasar container.builder:

# swift-ring-builder container.builder create 10 3 1


Tambahkan setiap node penyimpanan untuk ring:

# swift-ring-builder container.builder \
  add –region 1 –zone 1 –ip STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS –port 6001 \
  –device DEVICE_NAME –weight DEVICE_WEIGHT

Ganti STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan. Ganti DEVICE_NAME dengan nama perangkat penyimpanan pada node penyimpanan yang sama. Misalnya, menggunakan node penyimpanan pertama di Menginstal dan mengkonfigurasi node penyimpanan ganti dengan perangkat penyimpanan  /dev/sdb dan ‘weight of 100’:

# swift-ring-builder container.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6001 –device sdb –weight 100

Ulangi command ini untuk setiap perangkat penyimpanan pada setiap node penyimpanan. Pada arsitektur contoh gunakan command dalam empat variasi:

# swift-ring-builder container.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6001 –device sdb –weight 100

Memverifikasi ring content:

# swift-ring-builder container.builder

Rebalance ring:

# swift-ring-builder container.builder rebalance
Reassigned 1024 (100.00%) partitions. Balance is now 0.00.  Dispersion is now 0.00
Buat object ring

Server objek menggunakan ‘object ring’ untuk mempertahankan daftar lokasi objek pada perangkat lokal.

Ubah ke directory /etc/swift.

Buat file dasar object.builder:

# swift-ring-builder object.builder create 10 3 1


 Catatan
10.0.0.51 itu salah pencet, 

Tambahkan setiap node penyimpanan untuk ring:

# swift-ring-builder object.builder \
  add –region 1 –zone 1 –ip STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS –port 6000 \
  –device DEVICE_NAME –weight DEVICE_WEIGHT

Ganti STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan. Ganti DEVICE_NAME dengan nama perangkat penyimpanan pada node penyimpanan yang sama. Misalnya, menggunakan node penyimpanan pertama di Menginstal dan mengkonfigurasi node penyimpanan ganti dengan perangkat penyimpanan  /dev/sdb dan ‘weight of 100’:

# swift-ring-builder object.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6000 –device sdb –weight 100

Ulangi command ini untuk setiap perangkat penyimpanan pada setiap node penyimpanan. Pada arsitektur, contoh gunakan command dalam empat variasi:

# swift-ring-builder object.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6000 –device sdb –weight 100
# swift-ring-builder object.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6000 –device sdc –weight 100
# swift-ring-builder object.builder add \
  –region 1 –zone 2 –ip 10.0.0.41 –port 6000 –device sdb –weight 100
# swift-ring-builder object.builder add \
  –region 1 –zone 2 –ip 10.0.0.41 –port 6000 –device sdc –weight 100

Memverifikasi ring content:

# swift-ring-builder object.builder

Rebalance ring:

# swift-ring-builder object.builder rebalance

Mendistribusikan file konfigurasi ring

Salin file account.ring.gz, container.ring.gz, dan object.ring.gz ke direktori /etc/swift pada setiap node penyimpanan dan setiap node tambahan yang menjalankan layanan proxy.

Tutorial Install dan Konfigurasi Openstack Liberty : Object Storage kodename (Swift)

OpenStack Object Storage adalah sistem penyimpanan objek multi-tenant. Hal ini sangat scalable dan dapat mengelola sejumlah besar data yang tidak terstruktur dengan biaya rendah melalui RESTful HTTP API.

Ini mencakup komponen-komponen berikut:

Proxy servers (swift-proxy-server)
Menerima OpenStack Obyek Storage API dan permintaan HTTP baku untuk meng-upload file, memodifikasi metadata, dan menciptakan containers. Hal ini juga melayani file atau ‘containers listing’ untuk web browser. Untuk meningkatkan kinerja, proxy server dapat menggunakan cache opsional yang biasanya dikerahkan dengan ‘memcache’.

Account servers (swift-account-server)
Mengelola akun yang didefinisikan dengan Object Storage.

Container servers (swift-container-server)
Mengelola pemetaan container atau pemetaan folder, dalam Object Storage.

Object servers (swift-object-server)
Mengelola objek yang sebenarnya, seperti file, pada node penyimpanan.

Berbagai proses periodik
Melakukan tugas-tugas housekeeping di penyimpanan data yang besar. Layanan replikasi memastikan konsistensi dan ketersediaan melalui cluster. Proses berkala lainnya termasuk auditor, updaters, dan ‘reaper’.

WSGI middleware
Menangani otentikasi dan OpenStack Identity biasa.

swift client
Memungkinkan user untuk mengirimkan perintah ke REST API melalui klien command-line resmi baik sebagai ‘admin user’, ‘reseller user’, atau ‘swift user’.

swift-init
Membuat script yang menginisialisasi pembangunan ‘ring file’, mengambil nama daemon sebagai parameter dan menawarkan command. Didokumentasikan dalam http://docs.openstack.org/developer/swift/admin_guide.html#managing-services.

swift-recon
Sebuah alat CLI digunakan untuk mengambil berbagai metrik dan telemetri informasi tentang cluster yang telah dikumpulkan oleh middleware swift-recon.

swift-ring-builder
‘Storage ring build and rebalance utility’. Didokumentasikan dalam http://docs.openstack.org/developer/swift/admin_guide.html#managing-the-rings.

#LAB 35 Menginstal dan mengkonfigurasi Object Storage  pada ‘controller node’
Bagian ini menjelaskan cara menginstal dan mengkonfigurasi layanan proxy yang menangani permintaan untuk layanan akun, container, dan object yang beroperasi pada storage nodes. Untuk mempermudah, panduan ini akan menginstal dan mengkonfigurasi layanan proxy pada ‘controller node’. Namun, kamu dapat menjalankan layanan proxy pada setiap node dengan konektivitas jaringan ke ‘storage node’. Selain itu, kamu dapat menginstal dan mengkonfigurasi layanan proxy pada beberapa node untuk meningkatkan kinerja dan redundansi. Untuk informasi lebih lanjut, lihat Deployment Guide.

Layanan proxy bergantung pada mekanisme otentikasi dan otorisasi seperti layanan Identity. Namun, tidak seperti layanan lain, dia juga menawarkan mekanisme internal yang memungkinkan untuk beroperasi tanpa layanan OpenStack lainnya. Namun, untuk kesederhanaan, panduan ini referensi layanan Identitas di :doc: keystone. Sebelum kamu mengkonfigurasi layanan Object Storage, kamu harus membuat kredensial layanan dan endpoint API.

Catatan

Layanan Object Storage tidak menggunakan database SQL pada ‘controller node’. Sebaliknya, menggunakan database SQLite didistribusikan pada setiap ‘storage node’.

Dapatkan sumber mandat admin untuk mendapatkan akses ke command CLI ‘admin-only’:

$ source admin-openrc

Untuk membuat kredensial layanan Identity, selesaikan langkah-langkah ini:

Buat user swift:

$ openstack user create –domain default –password-prompt swift

Tambahkan peran admin ke user swift:

$ openstack role add –project service –user swift admin

Buat entitas layanan swift:

Buat endpoints API pada layanan Object Storage :

$ openstack endpoint create –region RegionOne \
  object-store public http://controller:8080/v1/AUTH_%\(tenant_id\)s
$ openstack endpoint create –region RegionOne \
  object-store internal http://controller:8080/v1/AUTH_%\(tenant_id\)s
$ openstack endpoint create –region RegionOne \
  object-store admin http://controller:8080/v1


#LAB 36 Instal dan konfigurasi komponen swift

Instal paket:

# apt-get install swift swift-proxy python-swiftclient \
  python-keystoneclient python-keystonemiddleware \
  memcached

 Catatan

Lengkapi environtment OpenStack sudah termasuk beberapa paket ini.

Buat direktore /etc/swift.

Dapatkan file konfigurasi pada layanan proxy dari repositori sumber Object Storage:

# curl -o /etc/swift/proxy-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/proxy-server.conf-sample?h=stable/liberty


Edit terlebih dahulu file /etc/swift/proxy-server.conf dan ikuti langkah dibawah ini:

nano /etc/swift/proxy-server.conf

pada bagian [DEFAULT], konfigurasi ‘bind port’, user, dan ‘configuration directory’:

[DEFAULT]

bind_port = 8080
user = swift
swift_dir = /etc/swift


pada bagian [pipeline:main], hapus modul tempurl dan tempauth dan tambahkan modul authtoken dan keystoneauth

[pipeline:main]
pipeline = catch_errors gatekeeper healthcheck proxy-logging cache
container_sync bulk ratelimit authtoken keystoneauth container-quotas
account-quotas slo dlo versioned_writes proxy-logging proxy-server

Catatan
Jangan mengubah urutan modul.

pada bagian [app: proxy server], aktifkan pembuatan akun otomatis:

[app:proxy-server]
use = egg:swift#proxy

account_autocreate = true


pada bagian [filter: authkeystone], konfigurasi peran operator:

[filter:keystoneauth]
use = egg:swift#keystoneauth

operator_roles = admin,user


pada bagian  [filter: authtoken], konfigurasi akses layanan Identity:

[filter:authtoken]
paste.filter_factory = keystonemiddleware.auth_token:filter_factory

auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = swift
password = SWIFT_PASS
delay_auth_decision = true


Ganti SWIFT_PASS dengan password yang kamu buat untuk user swift dalam pelayanan Identity.

Hapus komentar atau bahkan menghapus opsi lain dalam bagian [filter:authtoken].

pada bagian [filter: cache], konfigurasi lokasi memcached:

[filter:cache]
use = egg:swift#memcache

memcache_servers = 127.0.0.1:11211



#LAB 37 Menginstal dan mengkonfigurasi node penyimpanan (Swift)

Bagian ini menjelaskan cara menginstal dan mengkonfigurasi node penyimpanan yang mengoperasikan layanan akun, kontainer, dan objek. Untuk mempermudah, konfigurasi ini me-referensi dua node penyimpanan, masing-masing berisi dua perangkat penyimpanan blok lokal kosong. Petunjuk menggunakan /dev/sdb dan /dev/sdc, tetapi kamu dapat mengganti nilai yang berbeda untuk node tertentu.

Meskipun Object Storage mendukung sistem file dengan extended attributes (xattr), pengujian dan benchmarking menunjukkan performa dan kehandalan terbaik pada :term: XFS. Untuk informasi lebih lanjut tentang lingkungan skala secara horizontal.

Sebelum kamu menginstal dan mengkonfigurasi layanan Object Storage pada node penyimpanan, kamu harus mempersiapkan perangkat penyimpanan.





Catatan
Lakukan langkah ini pada setiap node penyimpanan.

Instal paket utilitas pendukung:

# apt-get install xfsprogs rsync

Formatlah perangkat /dev/sdb dan /dev/sdc sebagai XFS:

# mkfs.xfs /dev/sdb
# mkfs.xfs /dev/sdc

Buat struktur direktori ‘mount point’:

# mkdir -p /srv/node/sdb
# mkdir -p /srv/node/sdc

Edit file /etc/fstab dan tambahkan berikut untuk itu:

/dev/sdb /srv/node/sdb xfs noatime,nodiratime,nobarrier,logbufs=8 0 2
/dev/sdc /srv/node/sdc xfs noatime,nodiratime,nobarrier,logbufs=8 0 2

Mount perangkat:

# mount /srv/node/sdb
# mount /srv/node/sdc

Buat atau edit file /etc/rsyncd.conf mengandung berikut:

uid = swift
gid = swift
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
address = MANAGEMENT_INTERFACE_IP_ADDRESS
[account]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/account.lock
[container]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/container.lock
[object]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/object.lock


Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

Catatan
Layanan rsync tidak memerlukan otentikasi, jadi pertimbangkan menjalankannya pada jaringan private dalam lingkungan produksi.

Edit file /etc/default/rsync dan mengaktifkan layanan rsync:

nano /etc/default/rsync

RSYNC_ENABLE=true

Mulai layanan rsync:

# service rsync start


Instal dan konfigurasi komponen

 Catatan
Lakukan langkah ini pada setiap node penyimpanan.

Instal paket:

# apt-get install swift swift-account swift-container swift-object

Dapatkan file konfigurasi layanan accounting, container, dan object, dari repositori sumber di Object Storage:

# curl -o /etc/swift/account-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/account-server.conf-sample?h=stable/liberty 

# curl -o /etc/swift/container-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/container-server.conf-sample?h=stable/liberty

# curl -o /etc/swift/object-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/object-server.conf-sample?h=stable/liberty


Edit file /etc/swift/account-server.conf dan selesaikan langkah berikut:

nano /etc/swift/account-server.conf

pada bagian [DEFAULT], konfigurasikan ‘bind IP address’, ‘bind port’, user, ‘configuration directory’, dan ‘mount point directory’:

[DEFAULT]

bind_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
bind_port = 6002
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True


Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

pada bagian [pipeline:main], mengaktifkan modul yang tepat:

[pipeline:main]
pipeline = healthcheck recon account-server

pada bagian [filter:recon], konfigurasikan ‘recon (meters) cache directory’:

[filter:recon]
use = egg:swift#recon

recon_cache_path = /var/cache/swift


Edit file /etc/swift/container-server.conf dan selesaikan langkahberikut:

nano /etc/swift/container-server.conf

pada bagian DEFAULT] , konfigurasikan ‘bind IP address’, ‘bind port’, user, ‘configuration directory’, dan ‘mount point directory’:

[DEFAULT]

bind_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
bind_port = 6001
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True

 
Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

pada bagian [pipeline:main], mengaktifkan modul yang tepat:

[pipeline:main]
pipeline = healthcheck recon container-server

 

pada bagian [filter:recon], konfigurasikan ‘recon (meters) cache directory’:

[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift


Edit file /etc/swift/object-server.conf dan selesaikan langkah berikut:

nano /etc/swift/object-server.conf 

pada bagian [DEFAULT], konfigurasikan ‘bind IP address’, ‘bind port’, user, ‘configuration directory’, dan ‘mount point directory’:

[DEFAULT]

bind_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
bind_port = 6000
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True


Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

pada bagian [pipeline:main], mengaktifkan modul yang tepat:

[pipeline:main]
pipeline = healthcheck recon object-server

pada bagian [filter:recon], konfigurasikan ‘recon (meters) cache’ dan ‘lock directories’:

[filter:recon]
use = egg:swift#recon

recon_cache_path = /var/cache/swift
recon_lock_path = /var/lock


Pastikan kepemilikan tepat strukture direktori ‘mount point’:

# chown -R swift:swift /srv/node

Buat direktori recon dan pastikan kepemilikan tepat itu:

# mkdir -p /var/cache/swift
# chown -R root:swift /var/cache/swift

#LAB 38 Mengeclone dan Mengkonfigurasi Swift2







#LAB 39 Membuat dan Mendistribusikan initial ring

Sebelum memulai layanan Object Storage, kamu harus membuat initial akun, container, dan object ring. Pembangun ring membuat file konfigurasi dimana setiap node berguna untuk menentukan dan mengerahkan arsitektur penyimpanan. Untuk mempermudah, panduan ini menggunakan satu wilayah dan dua zona dengan 2 ^ 10 (1024) partisi maksimum, 3 replika setiap objek, dan 1 jam waktu minimum antara pergerakan satu partisi lebih dari sekali. Untuk Object Storage, partisi menunjukkan direktori pada perangkat penyimpanan bukan pada tabel partisi konvensional.

 Catatan
Lakukan langkah ini pada controller node.

membuat akun ring

Server akun menggunakan akun ring untuk mempertahankan daftar kontainer.
pindah ke directory /etc/swift.

cd /etc/swift

Buat file basis account.builder:

# swift-ring-builder account.builder create 10 3 1

Tambahkan setiap node penyimpanan untuk ring:

# swift-ring-builder account.builder \
  add –region 1 –zone 1 –ip

STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS –port 6002 \
  –device DEVICE_NAME –weight DEVICE_WEIGHT

Ganti STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan. Ganti DEVICE_NAME dengan nama perangkat penyimpanan pada node penyimpanan yang sama. Misalnya, menggunakan node penyimpanan pertama di Menginstal dan mengkonfigurasi node penyimpanan ganti dengan perangkat penyimpanan  /dev/sdb dan ‘weight of 100’:

# swift-ring-builder account.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6002 –device sdb –weight 100

Ulangi command ini untuk setiap perangkat penyimpanan pada setiap node penyimpanan. Pada arsitektur contoh gunakan command dalam empat variasi:

# swift-ring-builder account.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6002 –device sdb –weight 100
# swift-ring-builder account.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6002 –device sdc –weight 100
# swift-ring-builder account.builder add \
  –region 1 –zone 2 –ip 10.0.0.41 –port 6002 –device sdb –weight 100
# swift-ring-builder account.builder add \
  –region 1 –zone 2 –ip 10.0.0.41 –port 6002 –device sdc –weight 100


Memverifikasi ring content:

# swift-ring-builder account.builder


Rebalance ring:

# swift-ring-builder account.builder rebalance


Server kontainer menggunakan ‘container ring’ untuk mempertahankan daftar objek. Namun, tidak melacak lokasi objek.

Ubah ke directory /etc/swift.

cd /etc/swift

Buat file dasar container.builder:

# swift-ring-builder container.builder create 10 3 1


Tambahkan setiap node penyimpanan untuk ring:

# swift-ring-builder container.builder \
  add –region 1 –zone 1 –ip STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS –port 6001 \
  –device DEVICE_NAME –weight DEVICE_WEIGHT

Ganti STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan. Ganti DEVICE_NAME dengan nama perangkat penyimpanan pada node penyimpanan yang sama. Misalnya, menggunakan node penyimpanan pertama di Menginstal dan mengkonfigurasi node penyimpanan ganti dengan perangkat penyimpanan  /dev/sdb dan ‘weight of 100’:

# swift-ring-builder container.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6001 –device sdb –weight 100

Ulangi command ini untuk setiap perangkat penyimpanan pada setiap node penyimpanan. Pada arsitektur contoh gunakan command dalam empat variasi:

# swift-ring-builder container.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6001 –device sdb –weight 100

Memverifikasi ring content:

# swift-ring-builder container.builder

Rebalance ring:

# swift-ring-builder container.builder rebalance
Reassigned 1024 (100.00%) partitions. Balance is now 0.00.  Dispersion is now 0.00
Buat object ring

Server objek menggunakan ‘object ring’ untuk mempertahankan daftar lokasi objek pada perangkat lokal.

Ubah ke directory /etc/swift.

Buat file dasar object.builder:

# swift-ring-builder object.builder create 10 3 1


 Catatan
10.0.0.51 itu salah pencet, 

Tambahkan setiap node penyimpanan untuk ring:

# swift-ring-builder object.builder \
  add –region 1 –zone 1 –ip STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS –port 6000 \
  –device DEVICE_NAME –weight DEVICE_WEIGHT

Ganti STORAGE_NODE_MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan. Ganti DEVICE_NAME dengan nama perangkat penyimpanan pada node penyimpanan yang sama. Misalnya, menggunakan node penyimpanan pertama di Menginstal dan mengkonfigurasi node penyimpanan ganti dengan perangkat penyimpanan  /dev/sdb dan ‘weight of 100’:

# swift-ring-builder object.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6000 –device sdb –weight 100

Ulangi command ini untuk setiap perangkat penyimpanan pada setiap node penyimpanan. Pada arsitektur, contoh gunakan command dalam empat variasi:

# swift-ring-builder object.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6000 –device sdb –weight 100
# swift-ring-builder object.builder add \
  –region 1 –zone 1 –ip 10.0.0.40 –port 6000 –device sdc –weight 100
# swift-ring-builder object.builder add \
  –region 1 –zone 2 –ip 10.0.0.41 –port 6000 –device sdb –weight 100
# swift-ring-builder object.builder add \
  –region 1 –zone 2 –ip 10.0.0.41 –port 6000 –device sdc –weight 100

Memverifikasi ring content:

# swift-ring-builder object.builder

Rebalance ring:

# swift-ring-builder object.builder rebalance

Mendistribusikan file konfigurasi ring

Salin file account.ring.gz, container.ring.gz, dan object.ring.gz ke direktori /etc/swift pada setiap node penyimpanan dan setiap node tambahan yang menjalankan layanan proxy.

#LAB 40 Finalisasi instalasi

download file /etc/swift/swift.conf` dari repositori sumber Object Storage:

# curl -o /etc/swift/swift.conf \
https://git.openstack.org/cgit/openstack/swift/plain/etc/swift.conf-sample?h=stable/liberty

Edit file /etc/swift/swift.conf dan selesaikan tindakan berikut:

nano /etc/swift/swift.conf

pada bagian [swift-hash],  konfigurasi prefiks dan suffiks pada ‘hash path’ environtment kamu.

[swift-hash]

swift_hash_path_suffix = HASH_PATH_SUFFIX
swift_hash_path_prefix = HASH_PATH_PREFIX

Ganti HASH_PATH_PREFIX dan HASH_PATH_SUFFIX dengan nilai-nilai yang unik.

 Peringatan
Jaga nilai-nilai ini rahasia dan tidak mengubah atau kehilangan mereka.

pada bagian [storage-kebijakan: 0], konfigurasi kebijakan penyimpanan default:

[storage-policy:0]

name = Policy-0
default = yes

Salin file swift.conf ke direktori /etc/swift pada setiap node penyimpanan dan setiap node tambahan untuk menjalankan layanan proxy.

Pada semua node, pastikan kepemilikan yang tepat dari direktori konfigurasi:

# chown -R root:swift /etc/swift

Pada node kontroler dan setiap node lain yang menjalankan layanan proxy, restart layanan proxy Object Storage termasuk dependensinya:

# service memcached restart

 

# service swift-proxy restart

 
 Pada node penyimpanan, memulai layanan Object Storage:

# swift-init all start


 Catatan

Node storage menjalankan banyak layanan Object Storage dan command swift-init membuat mereka lebih mudah untuk mengelola. kamu dapat mengabaikan kesalahan layanan yang tidak berjalan pada node penyimpanan.

lakukan finalisasi diatas di semua node storage

#LAB 41 Verifikasi operasi Swift pada controller node

Catatan
Lakukan langkah ini pada controller node.
tambah OS_AUTH_VERSION=3 ke 2 source admin dan demo

gunakan sumber kredensial demo:

$ . demo-openrc

Show service status:

$ swift stat

 Upload test file:

$ swift upload container1 FILE


List container:

$ swift list

download  test file

$ swift download container1 FILE

verifikasi lewat dashboard

Tutorial Install dan Konfigurasi Openstack Liberty : Object Storage kodename (Swift)




#LAB 37 Menginstal dan mengkonfigurasi node penyimpanan (Swift)

Bagian ini menjelaskan cara menginstal dan mengkonfigurasi node penyimpanan yang mengoperasikan layanan akun, kontainer, dan objek. Untuk mempermudah, konfigurasi ini me-referensi dua node penyimpanan, masing-masing berisi dua perangkat penyimpanan blok lokal kosong. Petunjuk menggunakan /dev/sdb dan /dev/sdc, tetapi kamu dapat mengganti nilai yang berbeda untuk node tertentu.

Meskipun Object Storage mendukung sistem file dengan extended attributes (xattr), pengujian dan benchmarking menunjukkan performa dan kehandalan terbaik pada :term: XFS. Untuk informasi lebih lanjut tentang lingkungan skala secara horizontal.

Sebelum kamu menginstal dan mengkonfigurasi layanan Object Storage pada node penyimpanan, kamu harus mempersiapkan perangkat penyimpanan.





Catatan
Lakukan langkah ini pada setiap node penyimpanan.

Instal paket utilitas pendukung:

# apt-get install xfsprogs rsync

Formatlah perangkat /dev/sdb dan /dev/sdc sebagai XFS:

# mkfs.xfs /dev/sdb
# mkfs.xfs /dev/sdc

Buat struktur direktori ‘mount point’:

# mkdir -p /srv/node/sdb
# mkdir -p /srv/node/sdc

Edit file /etc/fstab dan tambahkan berikut untuk itu:

/dev/sdb /srv/node/sdb xfs noatime,nodiratime,nobarrier,logbufs=8 0 2
/dev/sdc /srv/node/sdc xfs noatime,nodiratime,nobarrier,logbufs=8 0 2

Mount perangkat:

# mount /srv/node/sdb
# mount /srv/node/sdc

Buat atau edit file /etc/rsyncd.conf mengandung berikut:

uid = swift
gid = swift
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
address = MANAGEMENT_INTERFACE_IP_ADDRESS
[account]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/account.lock
[container]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/container.lock
[object]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/object.lock


Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

Catatan
Layanan rsync tidak memerlukan otentikasi, jadi pertimbangkan menjalankannya pada jaringan private dalam lingkungan produksi.

Edit file /etc/default/rsync dan mengaktifkan layanan rsync:

nano /etc/default/rsync

RSYNC_ENABLE=true

Mulai layanan rsync:

# service rsync start


Instal dan konfigurasi komponen

 Catatan
Lakukan langkah ini pada setiap node penyimpanan.

Instal paket:

# apt-get install swift swift-account swift-container swift-object

Dapatkan file konfigurasi layanan accounting, container, dan object, dari repositori sumber di Object Storage:

# curl -o /etc/swift/account-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/account-server.conf-sample?h=stable/liberty 

# curl -o /etc/swift/container-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/container-server.conf-sample?h=stable/liberty

# curl -o /etc/swift/object-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/object-server.conf-sample?h=stable/liberty


Edit file /etc/swift/account-server.conf dan selesaikan langkah berikut:

nano /etc/swift/account-server.conf

pada bagian [DEFAULT], konfigurasikan ‘bind IP address’, ‘bind port’, user, ‘configuration directory’, dan ‘mount point directory’:

[DEFAULT]

bind_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
bind_port = 6002
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True


Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

pada bagian [pipeline:main], mengaktifkan modul yang tepat:

[pipeline:main]
pipeline = healthcheck recon account-server

pada bagian [filter:recon], konfigurasikan ‘recon (meters) cache directory’:

[filter:recon]
use = egg:swift#recon

recon_cache_path = /var/cache/swift


Edit file /etc/swift/container-server.conf dan selesaikan langkahberikut:

nano /etc/swift/container-server.conf

pada bagian DEFAULT] , konfigurasikan ‘bind IP address’, ‘bind port’, user, ‘configuration directory’, dan ‘mount point directory’:

[DEFAULT]

bind_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
bind_port = 6001
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True

 
Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

pada bagian [pipeline:main], mengaktifkan modul yang tepat:

[pipeline:main]
pipeline = healthcheck recon container-server

 

pada bagian [filter:recon], konfigurasikan ‘recon (meters) cache directory’:

[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift


Edit file /etc/swift/object-server.conf dan selesaikan langkah berikut:

nano /etc/swift/object-server.conf 

pada bagian [DEFAULT], konfigurasikan ‘bind IP address’, ‘bind port’, user, ‘configuration directory’, dan ‘mount point directory’:

[DEFAULT]

bind_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
bind_port = 6000
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True


Ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan alamat IP dari jaringan manajemen pada node penyimpanan.

pada bagian [pipeline:main], mengaktifkan modul yang tepat:

[pipeline:main]
pipeline = healthcheck recon object-server

pada bagian [filter:recon], konfigurasikan ‘recon (meters) cache’ dan ‘lock directories’:

[filter:recon]
use = egg:swift#recon

recon_cache_path = /var/cache/swift
recon_lock_path = /var/lock


Pastikan kepemilikan tepat strukture direktori ‘mount point’:

# chown -R swift:swift /srv/node

Buat direktori recon dan pastikan kepemilikan tepat itu:

# mkdir -p /var/cache/swift
# chown -R root:swift /var/cache/swift

#LAB 38 Mengeclone dan Mengkonfigurasi Swift2