
Artikel ini adalah kelanjutan dari terjemahan gratis dari manual resmi untuk sistem Riak CS 2.1.1.
Bagian 1. Konfigurasi Riak KVUntuk memastikan pengoperasian yang benar dari komponen Riak CS, penting untuk mengetahui bagaimana menghubungkan ke Riak KV. Node Riak CS biasanya berjalan di server yang sama dengan node Riak KV yang sesuai. Ini berarti bahwa perubahan hanya akan diperlukan jika Riak dikonfigurasi menggunakan parameter selain default.
Bagian 3. Stanchion, Proxy dan Load Balancing, S3 Client
Setting Riak CS terletak pada node CS di file konfigurasi riak-cs.conf dan advanced.conf. Kedua file tersebut biasanya terletak di direktori / etc / riak-cs. File riak-cs.conf baru adalah daftar sederhana dengan pasangan config = option , tetapi ada opsi yang hanya dapat diubah melalui file advanced.config. Ini terlihat seperti ini:
ADVANCED.CONFIG
{riak_cs, [
{parameter1, value},
{parameter2, value},
%% and so on...
]},
Jika Anda meningkatkan dari versi sebelumnya dari 2.0.0 - ketika file riak-cs.conf diperkenalkan - Anda masih dapat menggunakan file app.config yang terletak di lokasi riak-cs.conf / advanced.config. File app.config memiliki sintaks yang sama dengan file advanced.conf, jadi setiap contoh yang digunakan untuk advanced.conf dapat langsung digunakan di file app.config.
Harap dicatat bahwa file app.config lama menggantikan file konfigurasi baru. Jika app.config ada, baik riak-cs.conf maupun advanced.config tidak akan digunakan.
Catatan: tentang app.config warisanBagian di bawah ini menjelaskan opsi konfigurasi penting untuk Riak CS.
Jika Anda meningkatkan dari versi Riak CS sebelumnya ke Riak CS 2.0 dan berencana untuk terus menggunakan file app.config yang diwariskan, harap dicatat bahwa nama opsi telah berubah di beberapa file konfigurasi. Selain itu, format IP / Port diubah pada versi 2.0 untuk Stanchion, Riak, Riak CS. Anda dapat melihat perubahannya di Dokumen Rolling Upgrades .
Untuk daftar lengkap opsi yang tersedia dan daftar lengkap opsi untuk app.config, lihat Referensi Konfigurasi Lengkap .
Host dan port.
Untuk menghubungkan Riak CS ke Riak KV, pastikan parameter host dan port yang digunakan oleh Riak KV disetel:
- riak_host - ganti 127.0.0.1:8087 dengan alamat IP dan nomor port dari node Riak KV yang ingin Anda hubungkan dengan Riak CS.
Anda juga perlu menyetel host pendengar untuk Riak CS:
- pendengar - Ganti 127.0.0.1:8080 dengan alamat IP dan nomor port dari host Riak CS jika Anda bermaksud untuk menggunakannya secara non-lokal. Pastikan bahwa nomor port tidak bertentangan dengan port riak_host dari host Riak KV dan host Riak CS yang berjalan di mesin yang sama.
Catatan: tentang alamat IP AlamatSetelah beberapa perubahan pada riak-cs.conf, restart node Riak CS jika sudah berjalan.
IP yang Anda masukkan di sini harus cocok dengan alamat IP yang ditentukan untuk antarmuka buffer protokol Riak KV di file riak.conf, kecuali Riak CS berjalan di jaringan yang sama sekali berbeda, dalam hal ini terjemahan alamat.
Parameter Stanchion Node
Jika Anda menggunakan satu node Riak CS, maka Anda tidak perlu mengubah pengaturan Stanchion, karena berjalan di host lokal (Catatan. Stanchion diinstal hanya dalam satu instance untuk seluruh cluster). Jika sistem Riak CS memiliki banyak node, maka Anda harus menentukan alamat IP dan port node Stanchion dan apakah SSL digunakan atau tidak.
Parameter untuk Stanchion ada di file konfigurasi riak-cs.conf dari node Riak CS yang terletak di direktori ./etc/riak-cs/conf dari setiap node Riak CS.
Untuk mengatur host dan port untuk Stanchion, pastikan parameter berikut disetel untuk host dan port yang digunakan oleh Stanchion:
- stanchion_host - Ganti 127.0.0.1:8085 dengan alamat IP dan port host Stanchion.
Menggunakan SSL
SSL dinonaktifkan secara default di Stanchion, mis. parameter stanchion_ssl diatur off . Jika Stanchion dikonfigurasi untuk menggunakan SSL, ubah nilainya menjadi aktif . Contoh konfigurasi berikut menyetel host Stanchion ke localhost, port 8085 (default) dan mengizinkan penggunaan SSL.
RIAK-CS.CONF
stanchion_host = 127.0.0.1:8085
stanchion_ssl = on
ADVANCED.CONFIG
{riak_cs, [
%% Other configs
{stanchion_host, {"127.0.0.1", 8085}},
{stanchion_ssl, true},
%% Other configs
]}
Mengatur nama host
Anda juga dapat menentukan nama host Riak CS yang lebih nyaman untuk membantu Anda mengidentifikasi host yang diminta selama pemecahan masalah. Ini dikonfigurasi dalam file konfigurasi riak-cs.conf atau vm.args, yang juga terletak di /etc/riak-cs.conf. Nama node Riak CS akan diset di sini riak_cs@127.0.0.1:
RIAK-CS.CONF
nodename = riak_cs@127.0.0.1
VM.ARGS
-name riak_cs@127.0.0.1
Ubah 127.0.0.1 ke alamat IP atau nama host dari server yang menjalankan Riak CS.
Buat akun administrator
Administrator adalah pengguna yang diberi kewenangan khusus untuk melakukan tindakan seperti membuat pengguna atau mendapatkan statistik. Akun administrator tidak berbeda dengan akun pengguna lain. Anda harus membuat akun administrator untuk penggunaan Riak CS di masa mendatang.
Catatan: tentang membuat pengguna anonim.Untuk membuat akun administrator, gunakan permintaan HTTP POST dan nama pengguna yang Anda inginkan untuk akun administrator. Misalnya seperti:
Sebelum membuat akun administrator, Anda harus menyetel parameter anonymous_user_creation = on di riak-cs.conf (atau menyetel {anonymous_user_creation, true} di advanced.config / app.config). Anda dapat menonaktifkannya lagi saat administrator dibuat.
CURL
curl -H 'Content-Type: application/json' \
-XPOST http://<host>:<port>/riak-cs/user \
--data '{"email":"admin@example.com", "name":"admin"}'
Respons JSON akan terlihat seperti ini:
{
"display_name" : "admin",
"email" : "admin@example.com",
"id" : "8d6f05190095117120d4449484f5d87691aa03801cc4914411ab432e6ee0fd6b",
"key_id" : "OUCXMB6I3HOZ6D0GWO2D",
"key_secret" : "a58Mqd3qN-SqCoFIta58Mqd3qN7umE2hnunGag==",
"name" : "admin_example",
"status" : "enabled"
}
Anda dapat mengirim dan menerima XML secara opsional dengan menyetel Jenis Konten ke application / xml.
Setelah administrator dibuat, Anda harus mengatur hak administrator untuk setiap node Riak CS. Hak istimewa administrator diatur dalam file konfigurasi riak-cs.conf yang terletak di direktori / etc / riak-cs. Sisipkan baris key_id di antara tanda kutip untuk admin.key. Tempelkan parameter kunci_kunci admin.secret:
RIAK-CS.CONF
admin.key = OUCXMB6I3HOZ6D0GWO2D
admin.secret = a58Mqd3qN-SqCoFIta58Mqd3qN7umE2hnunGag==
ADVANCED.CONFIG
{riak_cs, [
%% Admin user credentials
{admin_key, "OUCXMB6I3HOZ6D0GWO2D"},
{admin_secret, "a58Mqd3qN-SqCoFIta58Mqd3qN7umE2hnunGag=="},
%% Other configs
]}
Membatasi ember
Anda juga dapat menetapkan batas jumlah keranjang yang dibuat oleh pengguna. Standarnya adalah maksimum 100 keranjang. Perlu diingat bahwa jika pengguna melebihi batas pembuatan bucket, mereka akan tetap tersedia untuk operasi lain, termasuk menghapus sebuah bucket. Anda dapat mengubah batas default menggunakan parameter max_buckets_per_user pada setiap node di file advanced.config - dan ini tidak akan menjadi perubahan yang sama di file riak-cs.conf. Misalnya konfigurasi di bawah ini menetapkan maksimum 1000:
ADVANCED.CONFIG
{riak_cs, [
%% Other configs
{max_buckets_per_user, 1000},
%% Other configs
]}
Jika Anda ingin menghapus batasan dalam membuat bucket oleh satu pengguna, Anda dapat menyetel nilai parameter max_buckets_per_user menjadi tidak terbatas.
Kolam koneksi
Riak CS menggunakan dua pool koneksi eksplisit untuk tujuan komunikasi dengan Riak KV: pool primer (primer) dan sekunder.
Kumpulan koneksi utama digunakan untuk melayani sebagian besar permintaan API yang terkait dengan memuat atau mengambil objek. Ini ditentukan dalam file konfigurasi sebagai pool.request.size . Ukuran kumpulan default adalah 128. Kumpulan
koneksi sekunder secara ketat digunakan untuk permintaan pencacahan untuk konten bucket. Kumpulan koneksi terpisah diperlukan untuk meningkatkan kinerja.
Pool koneksi sekunder didefinisikan dalam file konfigurasi sebagai pool.list.size . Secara default, ukurannya adalah 5.
Di bawah ini adalah entri konfigurasi connection_poolsdefault yang dapat ditemukan di file app.config:
RIAK-CS.CONF
pool.request.size = 128
pool.request.overflow = 0
pool.list.size = 5
pool.list.overflow = 0
ADVANCED.CONFIG
{riak_cs, [
%% Other configs
{connection_pools,
[
{request_pool, {128, 0} },
{bucket_list_pool, {5, 0} }
]},
%% Other configs
]}
Nilai untuk setiap kolam dibagi menjadi beberapa pasangan, di mana angka pertama mewakili ukuran normal kolam. Ini adalah jumlah permintaan bersamaan dari tipe tertentu yang dapat dilayani oleh node Riak CS. Angka kedua adalah jumlah luapan kumpulan yang diizinkan. Di sini tidak disarankan untuk menggunakan nilai apa pun selain 0 untuk luapan, kecuali pengujian yang cermat telah menunjukkan bahwa nilai yang dipilih berguna untuk kasus tertentu.
Tuning
Kami sangat menganjurkan agar Anda berhati-hati saat menyetel nilai parameter pb_backlog di Riak KV. Ketika node Riak CS dimulai, setiap kumpulan koneksi membuat koneksi ke Riak KV. Hal ini dapat menyebabkan masalah kawanan yang menggelegar , di mana sambungan di kolam tersebut diyakini terkait dengan KV Riak, tetapi pada kenyataannya sambungan tersebut terputus. Karena pembatasan kecepatan paket TCP RST (dikontrol oleh parameter net.inet.icmp.icmplim ), beberapa paket mungkin tidak menerima pemberitahuan sampai mereka digunakan untuk melayani permintaan pengguna. Ini memanifestasikan dirinya sebagai pesan {kesalahan, terputus} dalam file log CS Riak dan kesalahan dikembalikan kepada pengguna.
Koneksi SSL di Riak-CS
RIAK-CS.CONF
ssl.certfile = "./etc/cert.pem"
ssl.keyfile = "./etc/key.pem"
ADVANCED.CONFIG
{ssl, [
{certfile, "./etc/cert.pem"},
{keyfile, "./etc/key.pem"}
]},
Ganti teks dalam tanda kutip di jalur ke kunci enkripsi SSL Anda. Secara default, pada setiap node, file cert.pem dan key.pem terletak di direktori / etc. Anda bebas menggunakan kunci ini atau milik Anda sendiri.
Harap perhatikan bahwa Anda juga harus memberikan Otoritas Sertifikasi (Otoritas Sertifikasi), yaitu sertifikat CA. Jika bisa, Anda harus menggunakan file konfigurasi advanced.config dan menentukan lokasinya di parameter cacertfile . Tidak seperti certfile dan keyfile, parameter cacertfile tidak diberi komentar. Di sinilah Anda harus menambahkan sertifikat Anda. Contoh konfigurasi seperti itu:
ADVANCED.CONFIG
{ssl, [
{certfile, "./etc/cert.pem"},
{keyfile, "./etc/key.pem"},
{cacertfile, "./etc/cacert.pem"}
]},
%% Other configs
Anda dapat menemukan petunjuk untuk membuat sertifikat CA di sumber daya pihak ketiga .
Proksi vs. Koneksi Langsung
Riak CS dapat berinteraksi dengan klien S3 melalui salah satu dari dua cara berikut:
- konfigurasi proxy - ketika klien S3 terhubung ke Riak CS seolah-olah dari Amazon S3, yaitu, dengan URL Amazon tipikal.
- koneksi langsung - mengharuskan klien S3 yang terhubung ke Riak CS untuk dikonfigurasikan sebagai βlayanan yang kompatibel dengan S3β, yaitu, titik koneksi Riak CS menyamar sebagai Amazon S3. Contoh layanan tersebut adalah Transmit, s3cmd, DragonDisk.
Proksi
Untuk menyiapkan konfigurasi proxy, konfigurasikan klien proxy Anda sebagai titik di alamat cluster Riak CS. Kemudian siapkan klien Anda dengan kredensial Riak CS.
Ketika Riak CS menerima permintaan proxy, ia melayani permintaan itu sendiri dan menanggapi klien seolah-olah permintaan tersebut pergi ke S3.
Di sisi server, parameter root_host dalam file riak-cs.conf harus s3.amazonaws.com karena semua permintaan klien untuk URL keranjang akan menargetkan s3.amazonaws.com. Ini adalah defaultnya.
Penting : Satu masalah dengan konfigurasi proxy adalah banyak klien GUI hanya mengizinkan satu proxy untuk dikonfigurasi untuk semua sambungan. Untuk pelanggan yang mencoba terhubung ke S3 dan Riak CS, ini bisa menjadi masalah.
Koneksi langsung
Koneksi langsung dikonfigurasi melalui parameter cs_root_host di bagian riak-cs dari file app.config. Nilai harus disetel ke FQDN titik masuk CS Riak Anda, karena semua URL keranjang akan menargetkan titik masuk FQDN.
Anda juga memerlukan data DNS karakter pengganti untuk setiap turunan dari titik masuk untuk menyelesaikannya ke titik akhir itu sendiri. Contoh:
CONFIG
data.riakcs.net
*.data.riakcs.net
Pengaturan pengumpul sampah

Pengaturan berikut tersedia untuk mengkonfigurasi pengumpul sampah di Riak CS. Untuk informasi lebih lanjut, lihat bagian Pengumpulan Sampah .
- gc.leeway_period β (leeway_seconds advanced.config app.config) β , , , , . 24h(24 )
- gc.interval (gc_interval advanced.config app.config) β , . 15m (15 ). , . , gc_interval infinity.
- gc.retry_interval (gc_retry_interval advanced.config app.config) β , , pending_delete . - , , - . 6h (6 ).
- gc.max_workers (gc.max_workers advanced.config app.config) β , . 2.
- active_delete_threshold (active_delete_threshold di advanced.config atau app.config) - blok objek yang kurang dari nilai ambang akan dihapus secara sinkron dan manifesnya ditandai sebagai schedule_delete . Standarnya adalah 0.
Ada beberapa pengaturan tambahan yang hanya dapat diatur di file konfigurasi advanced.config atau app.config. Tak satu pun dari pengaturan berikut ini tersedia melalui file konfigurasi riak-cs.conf
- epoch_start β , . , + leeway_seconds. 0 . , , , . . Erlang. , 10, <<Β«10Β»>>.
- initial_gc_delay β gc_interval Riak CS. : GC ; GC. , initial_gc_delay.
- max_scheduled_delete_manifests β ( ), scheduled_delete . , , . , , , leeway_seconds. , , . .
- gc_batch_size - Parameter ini mewakili ukuran yang digunakan untuk memberi nomor pada hasil kueri indeks sekunder. Standarnya adalah 1000.
Konfigurasi yang tidak digunakan lagi
Saat ini Riak CS 2.0 masih mendukung pengaturan parameter pg_paginated_indexes, dan sangat disarankan untuk tidak menggunakan pengaturan ini. Pengaturan akan dihapus di rilis utama berikutnya.
Pengaturan Riak CS lainnya
Untuk daftar lengkap parameter Riak CS yang dapat dikonfigurasi , Anda dapat merujuk ke dokumen referensi konfigurasi .
Tautan
Penyimpanan Cloud Riak. Bagian 1. Mengonfigurasi
Penyimpanan Awan Riak KV Riak. Bagian 2. Mengonfigurasi komponen
Riak CS Riak Cloud Storage. Bagian 3. Stanchion, Proxy dan Load Balancing, Manual Asli Klien S3
.