Persyaratan penginstalan

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:

  • Kurang dari 250 TPS: 8 GB, 4-core dapat dipertimbangkan dengan penyimpanan jaringan terkelola*** yang mendukung 1.000 IOPS atau lebih tinggi
  • Lebih dari 250 TPS: 16 GB, 8-core, penyimpanan jaringan terkelola*** yang mendukung 1.000 IOPS atau lebih tinggi
  • Lebih dari 1000 TPS: 16 GB, 8-core, penyimpanan jaringan terkelola*** yang mendukung 2000 IOPS atau lebih tinggi
  • Lebih dari 2.000 TPS: 32 GB, 16 core, penyimpanan jaringan terkelola*** yang mendukung 2.000 IOPS atau lebih tinggi
  • Lebih dari 4.000 TPS: 64 GB, 32 core, penyimpanan jaringan terkelola*** yang mendukung 4.000 IOPS atau lebih tinggi

** 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:

bytes of storage needed =

  (# bytes of analytics data/request) *

  (requests/second) *

  (seconds/hour) *

  (hours of peak usage/day) *

  (days/month) *

  (months of data retention)

Contoh:

(2K bytes) * (100 req/sec) * (3600 secs/hr) * (18 peak hours/day) * (30 days/month) * (3 months retention)

= 1,194,393,600,000 bytes or 1194.4 GB of storage needed

*** Network Storage direkomendasikan untuk database PostgreSQL karena:

  • Fitur ini memberikan kemampuan untuk meningkatkan ukuran penyimpanan secara dinamis jika dan saat diperlukan.
  • IOPS jaringan dapat disesuaikan secara langsung di sebagian besar subsistem lingkungan/Penyimpanan/Jaringan saat ini.
  • Snapshot tingkat penyimpanan dapat diaktifkan sebagai bagian dari solusi pencadangan dan pemulihan.

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.

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:

  1. Buat pengguna dan grup "apigee":
    groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
  2. 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.

  3. 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 mesin
  • hostname -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 /etc/rc.d/init.d/functions.

Jika proses keamanan Anda mengharuskan Anda untuk menyetel izin di /etc/rc.d/init.d/functions, jangan menyetelnya ke 700 karena Router akan gagal dimulai.

Anda dapat menetapkan izin ke 744 untuk mengizinkan akses baca ke /etc/rc.d/init.d/functions.

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:

  1. Edit file postgresql.properties:
    vi /opt/apigee/customer/application/postgresql.properties

    Jika file tidak ada, buat file tersebut.

  2. Tetapkan properti yang tercantum di atas.
  3. Simpan hasil editan Anda.
  4. 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:

  1. Di setiap node Message Processor, edit /etc/nscd.conf
  2. 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.