Persyaratan hardware
Anda harus memenuhi persyaratan hardware minimum berikut untuk infrastruktur dengan ketersediaan tinggi di lingkungan tingkat produksi.
Video berikut memberikan panduan penentuan ukuran tingkat tinggi untuk penginstalan Anda:
Untuk semua skenario penginstalan yang dijelaskan dalam Topologi penginstalan, tabel berikut mencantumkan persyaratan hardware minimum untuk komponen penginstalan.
Dalam tabel ini, persyaratan hard disk adalah tambahan dari ruang hard disk yang diperlukan oleh sistem operasi. Bergantung pada aplikasi dan traffic jaringan, penginstalan Anda mungkin memerlukan lebih banyak atau lebih sedikit resource daripada yang tercantum di bawah.
Komponen Penginstalan | RAM | CPU | Hard disk minimum |
---|---|---|---|
Cassandra (mandiri) | 16 GB | 8-core | Penyimpanan lokal 250 GB dengan SSD yang mendukung 2000 IOPS |
Cassandra/Zookeeper di mesin yang sama | 16 GB | 8-core | Penyimpanan lokal 250 GB dengan SSD yang mendukung 2000 IOPS |
Prosesor/Router Pesan di mesin yang sama | 16 GB | 8-core | 100 GB |
Message Processor (mandiri) | 16 GB | 8-core | 100 GB |
Router (mandiri) | 8 GB | 8-core | 100 GB |
Analytics - Postgres/Qpid di server yang sama | 16GB* | 8-core* | Penyimpanan jaringan 500 GB - 1 TB**, sebaiknya dengan backend SSD, yang mendukung 1.000 IOPS atau lebih* |
Analytics - Postgres master atau standby mandiri | 16GB* | 8-core* | Penyimpanan jaringan 500 GB - 1 TB**, sebaiknya dengan backend SSD, yang mendukung 1.000 IOPS atau lebih* |
Analytics - Qpid (mandiri) | 8 GB | 4-core | Penyimpanan lokal 30 GB - 50 GB dengan SSD
Ukuran antrean Qpid default adalah 1 GB, yang dapat ditingkatkan menjadi 2 GB. Jika Anda memerlukan kapasitas yang lebih besar, tambahkan node Qpid tambahan. |
SymasLDAP/UI/Management Server | 8 GB | 4-core | 60 GB |
Server UI/Pengelolaan | 4 GB | 2-core | 60 GB |
SymasLDAP (mandiri) | 4 GB | 2-core | 60 GB |
* Sesuaikan persyaratan sistem Postgres berdasarkan throughput:
** Nilai hard disk Postgres didasarkan pada analisis langsung yang diambil oleh Edge. Jika Anda menambahkan nilai kustom ke data analisis, nilai ini harus ditingkatkan dengan tepat. Gunakan formula berikut untuk memperkirakan penyimpanan yang diperlukan:
Contoh:
*** Network Storage direkomendasikan untuk database PostgreSQL karena:
|
Selain itu, berikut adalah persyaratan hardware jika Anda ingin menginstal Layanan Monetisasi (tidak didukung pada penginstalan All-in-One):
Komponen dengan Monetisasi | RAM | CPU | Hard disk |
---|---|---|---|
Server Pengelolaan (dengan Layanan Monetisasi) | 8 GB | 4‑core | 60 GB |
Analytics - Postgres/Qpid di server yang sama | 16 GB | 8-core | Penyimpanan jaringan 500 GB - 1 TB, sebaiknya dengan backend SSD, yang mendukung 1.000 IOPS atau lebih tinggi, atau gunakan aturan dari tabel di atas. |
Analytics - Postgres master atau standby mandiri | 16 GB | 8-core | Penyimpanan jaringan 500 GB - 1 TB, sebaiknya dengan backend SSD, yang mendukung 1.000 IOPS atau lebih tinggi, atau gunakan aturan dari tabel di atas. |
Analytics - Qpid (mandiri) | 8 GB | 4-core | Penyimpanan lokal 40 GB - 500 GB dengan SSD atau HDD cepat
Untuk penginstalan lebih dari 250 TPS, sebaiknya gunakan HDD dengan penyimpanan lokal yang mendukung 1.000 IOPS. |
Persyaratan bandwidth jaringan Cassandra
Cassandra menggunakan Gossip protocol untuk bertukar informasi dengan node lain tentang topologi jaringan. Penggunaan Gossip, yang dikombinasikan dengan sifat terdistribusi Cassandra—yang melibatkan komunikasi dengan beberapa node untuk operasi baca dan tulis—menghasilkan transfer data yang signifikan di seluruh jaringan.
Cassandra memerlukan bandwidth jaringan minimum 1 Gbps per node. Untuk penginstalan produksi, sebaiknya gunakan bandwidth yang lebih tinggi.
Latensi persentil ke-99 atau maksimum untuk Cassandra harus di bawah 100 milidetik.
Persyaratan sistem operasi dan software pihak ketiga
Petunjuk penginstalan ini dan file penginstalan yang disediakan telah diuji pada sistem operasi dan software pihak ketiga yang tercantum dalam Software yang didukung dan versi yang didukung.
Prasyarat: Aktifkan repo EPEL
Sebelum melanjutkan penginstalan, pastikan repositori EPEL (Extra Packages for Enterprise Linux) diaktifkan. Gunakan perintah berikut berdasarkan versi sistem operasi Anda:
- Untuk Red Hat/CentOS/Oracle 8.X:
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo rpm -ivh epel-release-latest-8.noarch.rpm
- Untuk Red Hat/CentOS/Oracle 9.X:
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
sudo rpm -ivh epel-release-latest-9.noarch.rpm
Java
Anda memerlukan Java 1.8 versi yang didukung yang diinstal di setiap komputer sebelum penginstalan. JDK yang didukung tercantum dalam Software yang didukung dan versi yang didukung.
Pastikan variabel lingkungan JAVA_HOME
mengarah ke root JDK untuk
pengguna yang melakukan penginstalan.
SELinux
Bergantung pada setelan SELinux, Edge dapat mengalami masalah saat menginstal dan memulai komponen Edge. Jika perlu, Anda dapat menonaktifkan SELinux atau menyetelnya ke mode permisif selama penginstalan, lalu mengaktifkannya kembali setelah penginstalan. Lihat Menginstal utilitas apigee-setup Edge untuk mengetahui informasi selengkapnya.
Membuat pengguna 'apigee'
Prosedur penginstalan membuat pengguna sistem Unix bernama 'apigee'. Direktori dan file Edge dimiliki oleh 'apigee', seperti halnya proses Edge. Artinya, komponen Edge berjalan sebagai pengguna 'apigee'. Jika perlu, Anda dapat menjalankan komponen sebagai pengguna lain.
Direktori penginstalan
Secara default, penginstal menulis semua file ke direktori /opt/apigee
. Anda tidak dapat mengubah lokasi direktori ini. Meskipun Anda tidak dapat mengubah direktori ini, Anda dapat membuat
link simbolis untuk memetakan /opt/apigee
ke lokasi lain, seperti yang dijelaskan dalam
Membuat link simbolis dari /opt/apigee.
Dalam petunjuk di panduan ini, direktori penginstalan dicatat sebagai
/opt/apigee
.
Membuat symlink dari /opt/apigee
Sebelum membuat symlink, Anda harus membuat pengguna dan grup bernama "apigee" terlebih dahulu. Grup dan pengguna ini sama dengan yang dibuat oleh penginstal Edge.
Untuk membuat symlink, lakukan langkah-langkah berikut sebelum mendownload file bootstrap_4.53.01.sh. Anda harus melakukan semua langkah ini sebagai root:
- Buat pengguna dan grup "apigee":
groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
- Buat symlink dari
/opt/apigee
ke root penginstalan yang Anda inginkan:ln -Ts /srv/myInstallDir /opt/apigee
Dengan /srv/myInstallDir adalah lokasi yang diinginkan untuk file Edge.
- Ubah kepemilikan root penginstalan dan symlink ke pengguna "apigee":
chown -h apigee:apigee /srv/myInstallDir /opt/apigee
Setelan jaringan
Apigee merekomendasikan agar Anda memeriksa setelan jaringan sebelum penginstalan. Penginstal mengharapkan semua mesin memiliki alamat IP tetap. Gunakan perintah berikut untuk memvalidasi setelan:
hostname
menampilkan nama mesinhostname -i
menampilkan alamat IP untuk nama host yang dapat diakses dari komputer lain.
Bergantung pada jenis dan versi sistem operasi, Anda mungkin perlu mengedit
/etc/hosts
dan /etc/sysconfig/network
jika nama host tidak
disetel dengan benar. Lihat dokumentasi untuk sistem operasi spesifik Anda guna mendapatkan informasi selengkapnya.
Jika server memiliki beberapa kartu antarmuka, perintah "hostname -i" akan menampilkan daftar alamat IP yang dipisahkan dengan spasi. Secara default, penginstal Edge menggunakan alamat IP pertama yang ditampilkan, yang mungkin tidak benar dalam semua situasi. Sebagai alternatif, Anda dapat menetapkan properti berikut dalam file konfigurasi penginstalan:
ENABLE_DYNAMIC_HOSTIP=y
Dengan properti tersebut disetel ke "y", penginstal akan meminta Anda memilih alamat IP yang akan digunakan sebagai bagian dari penginstalan. Nilai defaultnya adalah "n". Lihat Referensi File Konfigurasi Edge untuk mengetahui informasi selengkapnya.
TCP Wrappers
TCP Wrappers dapat memblokir komunikasi beberapa port dan dapat memengaruhi penginstalan SymasLDAP, Postgres, dan Cassandra. Di node tersebut, periksa /etc/hosts.allow
dan
/etc/hosts.deny
untuk memastikan tidak ada batasan port pada port SymasLDAP, Postgres, dan Cassandra yang diperlukan.
iptables
Pastikan tidak ada kebijakan iptables yang mencegah konektivitas antar-node di port Edge yang diperlukan. Jika perlu, Anda dapat menghentikan iptables selama penginstalan menggunakan perintah:
sudo/etc/init.d/iptables stop
Akses direktori
Tabel berikut mencantumkan direktori di node Edge yang memiliki persyaratan khusus dari proses Edge:
Layanan | Direktori | Deskripsi |
---|---|---|
Router | /etc/rc.d/init.d/functions |
Edge Router menggunakan router Nginx dan memerlukan akses baca ke
Jika proses keamanan Anda mengharuskan Anda untuk menyetel izin di
Anda dapat menetapkan izin ke 744 untuk mengizinkan akses baca ke
|
Zookeeper | /dev/random |
Library klien Zookeeper memerlukan akses baca ke generator angka acak
/dev/random . Jika /dev/random diblokir saat membaca, maka
layanan Zookeeper mungkin gagal dimulai. |
Cassandra
Semua node Cassandra harus terhubung ke ring. Cassandra menyimpan replika data di beberapa node untuk memastikan keandalan dan fault tolerance. Strategi replikasi untuk setiap keyspace Edge menentukan node Cassandra tempat replika ditempatkan. Untuk mengetahui informasi selengkapnya, lihat Tentang faktor replikasi dan tingkat konsistensi Cassandra.
Cassandra secara otomatis menyesuaikan ukuran heap Java berdasarkan memori yang tersedia. Untuk mengetahui informasi selengkapnya, lihat Menyesuaikan resource Java jika terjadi penurunan performa atau konsumsi memori yang tinggi.
Setelah menginstal Edge untuk Private Cloud, Anda dapat memeriksa apakah Cassandra dikonfigurasi
dengan benar dengan memeriksa file /opt/apigee/apigee-cassandra/conf/cassandra.yaml
. Misalnya, pastikan skrip penginstalan Edge untuk Private Cloud menetapkan properti berikut:
cluster_name
initial_token
partitioner
seeds
listen_address
rpc_address
snitch
Database PostgreSQL
Setelah menginstal Edge, Anda dapat menyesuaikan setelan database PostgreSQL berikut berdasarkan jumlah RAM yang tersedia di sistem Anda:
conf_postgresql_shared_buffers = 35% of RAM # min 128kB conf_postgresql_effective_cache_size = 45% of RAM conf_postgresql_work_mem = 512MB # min 64kB
Untuk menetapkan nilai ini:
- Edit file postgresql.properties:
vi /opt/apigee/customer/application/postgresql.properties
Jika file tidak ada, buat file tersebut.
- Tetapkan properti yang tercantum di atas.
- Simpan hasil editan Anda.
- Mulai ulang database PostgreSQL:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
Konfigurasi lokal untuk Rocky 9.X
Jika Anda menggunakan Rocky 9.X, pastikan sistem Anda dikonfigurasi dengan LANG=en_US.utf8
di setelan lokalitas seluruh sistem. Untuk mengonfigurasi ini, jalankan perintah berikut:
dnf -y -q install langpacks-en localectl set-locale LANG=en_US.utf8 reboot
Batas sistem
Pastikan Anda telah menyetel batas sistem berikut pada node Cassandra dan Message Processor:
- Di node Cassandra, tetapkan batas memlock lunak dan keras, nofile, dan ruang alamat (as) untuk
pengguna penginstalan (default adalah "apigee") di
/etc/security/limits.d/90-apigee-edge-limits.conf
seperti yang ditunjukkan di bawah:apigee soft memlock unlimited apigee hard memlock unlimited apigee soft nofile 32768 apigee hard nofile 65536 apigee soft as unlimited apigee hard as unlimited apigee soft nproc 32768 apigee hard nproc 65536
- Di node Message Processor, tetapkan jumlah maksimum deskriptor file terbuka ke 64 K
di
/etc/security/limits.d/90-apigee-edge-limits.conf
seperti yang ditunjukkan di bawah:apigee soft nofile 32768 apigee hard nofile 65536
Jika perlu, Anda dapat menaikkan batas tersebut. Misalnya, jika Anda membuka banyak file sementara sekaligus.
Jika Anda melihat error berikut di Router atau Message Processor
system.log
, batas deskriptor file Anda mungkin disetel terlalu rendah:"java.io.IOException: Too many open files"
Anda dapat memeriksa batas pengguna dengan menjalankan:
# su - apigee $ ulimit -n 100000
Jika Anda masih mencapai batas file terbuka setelah menyetel batas deskriptor file ke
100000
, buka tiket dengan Dukungan Apigee Edge untuk pemecahan masalah lebih lanjut.
Network Security Services (NSS)
Network Security Services (NSS) adalah sekumpulan library yang mendukung pengembangan aplikasi klien dan server yang mendukung keamanan. Anda harus memastikan bahwa Anda telah menginstal NSS v3.19 atau yang lebih baru.
Untuk memeriksa versi saat ini:
yum info nss
Untuk mengupdate NSS:
yum update nss
Lihat artikel ini dari RedHat untuk mengetahui informasi selengkapnya.
Nonaktifkan pencarian DNS di IPv6 saat menggunakan NSCD (Name Service Cache Daemon)
Jika Anda telah menginstal dan mengaktifkan NSCD (Name Service Cache Daemon), Pemroses Pesan akan melakukan dua pencarian DNS: satu untuk IPv4 dan satu untuk IPv6. Anda harus menonaktifkan pencarian DNS di IPv6 saat menggunakan NSCD.
Untuk menonaktifkan pencarian DNS di IPv6:
- Di setiap node Message Processor, edit
/etc/nscd.conf
- Tetapkan properti berikut:
enable-cache hosts no
Menonaktifkan IPv6 di RHEL 8 dan yang lebih baru
Jika Anda menginstal Edge di RHEL 8 atau versi yang lebih baru di Google Cloud Platform, Anda harus menonaktifkan IPv6 di semua node Qpid.
Untuk mengetahui petunjuk tentang cara menonaktifkan IPv6, lihat dokumentasi yang disediakan oleh vendor OS Anda. Misalnya, Anda dapat menemukan informasi yang relevan di Dokumentasi Red Hat Enterprise Linux.
Alat
Penginstal menggunakan alat UNIX berikut dalam versi standar sebagaimana disediakan oleh EL5 atau EL6.
awk |
expr |
libxslt |
rpm |
unzip |
basename |
grep |
lua-socket |
rpm2cpio |
useradd |
bash |
hostname |
ls |
sed |
wc |
bc |
id |
net-tools |
sudo |
wget |
curl |
libaio |
perl (dari procps) |
tar |
xerces-c |
cyrus-sasl | libdb4 | pgrep (dari procps) | tr | enak |
tanggal |
libdb-cxx |
ps |
uuid |
chkconfig |
dirname | libibverbs | pwd | uname | |
echo | librdmacm | python |
Sinkronisasi waktu
Apigee merekomendasikan agar waktu server Anda disinkronkan. Jika belum dikonfigurasi, utilitas ntpdate
atau alat yang setara dapat digunakan untuk tujuan ini dengan memverifikasi apakah server disinkronkan waktunya. Misalnya, Anda dapat menggunakan yum install ntp
atau perintah yang setara untuk menginstal utilitas. Hal ini sangat berguna untuk mereplikasi penyiapan LDAP. Perhatikan bahwa Anda harus menyetel zona waktu server ke UTC.
Firewall dan host virtual
Istilah virtual
sering kali digunakan secara berlebihan di bidang IT, begitu juga dengan
deployment Apigee Edge untuk Private Cloud dan host virtual. Untuk memperjelas, ada dua penggunaan utama
istilah virtual
:
- Virtual machine (VM): Tidak diperlukan, tetapi beberapa deployment menggunakan teknologi VM untuk membuat server terisolasi bagi komponen Apigee mereka. Host VM, seperti host fisik, dapat memiliki antarmuka jaringan dan firewall.
- Host virtual: Endpoint web, yang serupa dengan host virtual Apache.
Router di VM dapat mengekspos beberapa host virtual (selama host tersebut berbeda satu sama lain dalam alias host atau port antarmukanya).
Sama seperti contoh penamaan, satu server fisik A
dapat menjalankan dua VM,
yang diberi nama "VM1" dan "VM2". Misalkan "VM1" mengekspos antarmuka Ethernet virtual, yang diberi nama "eth0" di dalam VM, dan yang diberi alamat IP 111.111.111.111
oleh mesin virtualisasi atau server DHCP jaringan; lalu misalkan VM2 mengekspos antarmuka Ethernet virtual yang juga diberi nama "eth0" dan diberi alamat IP 111.111.111.222
.
Kita mungkin memiliki router Apigee yang berjalan di setiap dua VM. Router mengekspos endpoint host virtual seperti dalam contoh hipotetis ini:
Router Apigee di VM1 mengekspos tiga host virtual di antarmuka eth0-nya (yang memiliki beberapa
alamat IP tertentu), api.mycompany.com:80
, api.mycompany.com:443
, dan
test.mycompany.com:80
.
Router di VM2 mengekspos api.mycompany.com:80
(nama dan port yang sama dengan yang diekspos oleh
VM1).
Sistem operasi host fisik mungkin memiliki firewall jaringan; jika demikian, firewall tersebut harus dikonfigurasi untuk meneruskan traffic TCP yang ditujukan ke port yang diekspos pada antarmuka virtual (111.111.111.111:{80, 443}
dan 111.111.111.222:80
). Selain itu, setiap sistem operasi VM dapat menyediakan firewallnya sendiri di antarmuka eth0-nya dan firewall ini juga harus mengizinkan traffic port 80 dan 443 untuk terhubung.
Basepath adalah komponen ketiga yang terlibat dalam merutekan panggilan API ke berbagai proxy API
yang mungkin telah Anda deploy. Paket proxy API dapat berbagi endpoint jika memiliki
basepath yang berbeda. Misalnya, satu basepath dapat ditentukan sebagai http://api.mycompany.com:80/
dan yang lain ditentukan sebagai http://api.mycompany.com:80/salesdemo
.
Dalam hal ini, Anda memerlukan load balancer atau traffic director untuk membagi traffic
http://api.mycompany.com:80/ antara dua alamat IP
(111.111.111.111
di VM1 dan 111.111.111.222
di VM2). Fungsi ini khusus untuk penginstalan tertentu Anda, dan dikonfigurasi oleh grup jaringan lokal Anda.
Basepath ditetapkan saat Anda men-deploy API. Dari contoh di atas, Anda dapat men-deploy dua API,
mycompany
dan testmycompany
, untuk organisasi
mycompany-org
dengan host virtual yang memiliki alias host
api.mycompany.com
dan port yang ditetapkan ke 80
. Jika Anda tidak mendeklarasikan
basepath dalam deployment, router tidak akan mengetahui API mana yang harus menerima permintaan masuk.
Namun, jika Anda men-deploy API testmycompany
dengan URL dasar
/salesdemo
, pengguna akan mengakses API tersebut menggunakan
http://api.mycompany.com:80/salesdemo
. Jika Anda men-deploy API mycompany dengan
URL dasar /
, pengguna Anda akan mengakses API melalui URL
http://api.mycompany.com:80/
.
Pemberian Lisensi
Setiap penginstalan Edge memerlukan file lisensi unik yang Anda dapatkan dari Apigee. Anda harus memberikan jalur ke file lisensi saat menginstal server pengelolaan, misalnya /tmp/license.txt.
Penginstal menyalin file lisensi ke
/opt/apigee/customer/conf/license.txt
.
Jika file lisensi valid, server pengelolaan akan memvalidasi masa berlaku dan jumlah Message Processor (MP) yang diizinkan. Jika salah satu setelan lisensi telah berakhir, Anda dapat menemukan log di
lokasi berikut: /opt/apigee/var/log/edge-management-server/logs
.
Dalam hal ini, Anda dapat menghubungi Dukungan Apigee Edge untuk mengetahui detail migrasi.
Jika Anda belum memiliki lisensi, hubungi Bagian Penjualan Apigee.