Persyaratan penginstalan

Persyaratan hardware

Anda harus memenuhi persyaratan hardware minimum berikut untuk infrastruktur yang sangat tersedia di lingkungan tingkat produksi.

Video berikut memberikan panduan ukuran tingkat tinggi untuk pemasangan 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 kapasitas 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 ini.

Komponen Penginstalan RAM CPU Hard disk minimum
Cassandra 16 GB 8 core Penyimpanan lokal 250 GB dengan SSD yang mendukung 2000 IOPS
Kirim pesan Pemroses/Router di komputer yang sama 16 GB 8 core 100 GB
Message Processor (mandiri) 16 GB 8 core 100 GB
Router (mandiri) 16 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 tinggi*
Analytics - Master atau standby Postgres (mandiri) 16GB* 8 core* Penyimpanan jaringan 500 GB - 1 TB*****, sebaiknya dengan backend SSD, yang mendukung 1.000 IOPS atau lebih tinggi*
Analytics - Qpid mandiri 8 GB 4 inti 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 lebih besar, tambahkan node Qpid tambahan.

OpenLDAP/UI/Management Server 8 GB 4 inti 60 GB
Server Pengelolaan/UI 4 GB 2 inti 60 GB
OpenLDAP (mandiri) 4 GB 2 inti 60 GB

* Menyesuaikan 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: penyimpanan jaringan terkelola 16 GB, 8 core*** yang mendukung 1.000 IOPS atau lebih tinggi
  • Lebih dari 1.000 TPS: penyimpanan jaringan terkelola 16 GB, 8 core, *** yang mendukung 2.000 IOPS atau lebih tinggi
  • Lebih dari 2.000 TPS: penyimpanan jaringan terkelola 32 GB, 16 core, *** yang mendukung 2.000 IOPS atau lebih tinggi
  • Lebih dari 4.000 TPS: penyimpanan jaringan terkelola 64 GB, 32 core, *** yang mendukung 4.000 IOPS atau lebih tinggi

** Nilai hard disk Postgres didasarkan pada analisis unik yang ditangkap oleh Edge. Jika Anda menambahkan nilai kustom ke data analisis, nilai ini juga perlu ditingkatkan. 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

*** Penyimpanan Jaringan direkomendasikan untuk database Postgresql karena:

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

Selain itu, bagian berikut mencantumkan persyaratan hardware jika Anda ingin menginstal Layanan Monetisasi (tidak didukung pada penginstalan All-in-One):

Komponen dengan Monetisasi RAM CPU {i>Hard disk<i}
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.
Analisis - Master Postgres 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 16 GB 8 core Penyimpanan lokal 40 GB - 500 GB dengan SSD atau HDD cepat

Untuk penginstalan di atas 250 TPS, sebaiknya gunakan HDD dengan penyimpanan lokal yang mendukung 1.000 IOPS.

Persyaratan sistem operasi dan software pihak ketiga

Petunjuk penginstalan dan file penginstalan yang disediakan ini telah diuji di sistem operasi dan software pihak ketiga yang tercantum di Software yang didukung dan versi yang didukung.

Java

Anda memerlukan versi Java 1.8 yang didukung yang diinstal pada setiap komputer sebelum penginstalan. JDK yang didukung tercantum di 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 Anda untuk 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 akan membuat pengguna sistem Unix bernama 'apigee'. Direktori dan file Edge dimiliki oleh 'apigee', seperti halnya proses Edge. Artinya, komponen Edge dijalankan sebagai pengguna 'apigee'. Jika perlu, Anda dapat menjalankan komponen sebagai pengguna yang berbeda.

Direktori penginstalan

Secara default, penginstal menulis semua file ke direktori /opt/apigee. Anda tidak dapat mengubah lokasi direktori ini. Meskipun tidak dapat mengubah direktori ini, Anda dapat membuat symlink untuk memetakan /opt/apigee ke lokasi lain, seperti yang dijelaskan dalam Membuat symlink dari /opt/apigee.

Dalam petunjuk dalam panduan ini, direktori penginstalan dicatat sebagai /opt/apigee.

Sebelum membuat symlink, Anda harus terlebih dahulu membuat pengguna dan grup bernama "apigee". Ini adalah grup dan pengguna yang sama dengan yang dibuat oleh Edge Installer.

Untuk membuat symlink, lakukan langkah-langkah ini sebelum mendownload file bootstrap_4.51.00.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 diinginkan:
    ln -Ts /srv/myInstallDir /opt/apigee

    Dengan /srv/myInstallDir adalah lokasi file Edge yang diinginkan.

  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 bahwa 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 ditangani 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 sistem operasi khusus Anda untuk informasi selengkapnya.

Jika server memiliki beberapa kartu antarmuka, perintah "nama host -i" akan menampilkan daftar alamat IP yang dipisahkan 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 informasi selengkapnya.

Wrapper TCP

TCP Wrapper dapat memblokir komunikasi beberapa port dan dapat memengaruhi penginstalan OpenLDAP, Postgres, dan Cassandra. Pada node tersebut, periksa /etc/hosts.allow dan /etc/hosts.deny untuk memastikan bahwa tidak ada pembatasan port di port OpenLDAP, Postgres, dan Cassandra yang diperlukan.

IPtables

Validasi bahwa tidak ada kebijakan iptable yang mencegah konektivitas antar-node pada port Edge yang diperlukan. Jika perlu, Anda dapat menghentikan iptables selama penginstalan menggunakan perintah:

sudo/etc/init.d/iptables stop

Pada CentOS 7.x:

systemctl stop firewalld

Akses direktori

Tabel berikut mencantumkan direktori pada node Edge yang memiliki persyaratan khusus dari proses Edge:

Layanan Direktori Deskripsi
Router /etc/rc.d/init.d/functions

Router Edge menggunakan router NGINX dan memerlukan akses baca ke /etc/rc.d/init.d/functions.

Jika proses keamanan mengharuskan Anda menetapkan izin di /etc/rc.d/init.d/functions, jangan tetapkan izin ke 700, atau Router akan gagal dimulai.

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

Penjaga kebun binatang /dev/random Library klien Zookeeper memerlukan akses baca ke generator angka acak /dev/random. Jika /dev/random diblokir saat dibaca, layanan Zookeeper mungkin gagal dimulai.

Cassandra

Semua node Cassandra harus terhubung ke sebuah cincin. 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, baca artikel Tentang faktor replikasi Cassandra dan level konsistensi.

Cassandra secara otomatis menyesuaikan ukuran heap Java-nya berdasarkan memori yang tersedia. Untuk mengetahui informasi selengkapnya, lihat Menyesuaikan resource Java jika terjadi penurunan performa atau penggunaan memori yang tinggi.

Setelah menginstal Edge untuk Private Cloud, Anda dapat memeriksa apakah Cassandra dikonfigurasi secara 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. Setel properti yang tercantum di atas.
  3. Simpan hasil edit Anda.
  4. Mulai ulang database PostgreSQL:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart

Batas sistem

Pastikan Anda telah menetapkan batas sistem berikut pada node Cassandra dan Message Processor:

  • Pada node Cassandra, tetapkan batas soft dan hard memlock, nofile, dan ruang alamat (as) untuk pengguna penginstalan (default-nya adalah "apigee") di /etc/security/limits.d/90-apigee-edge-limits.conf seperti yang ditunjukkan di bawah ini:
    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

    Untuk informasi selengkapnya, lihat Setelan produksi yang direkomendasikan dalam dokumentasi Apache Cassandra.

  • Pada node Message Processor, tetapkan jumlah maksimum deskriptor file yang terbuka ke 64K di /etc/security/limits.d/90-apigee-edge-limits.conf seperti yang ditunjukkan di bawah ini:
    apigee soft nofile 32768
    apigee hard nofile 65536

    Jika perlu, Anda dapat meningkatkan batas tersebut. Misalnya, jika Anda memiliki banyak file sementara yang terbuka pada satu waktu.

  • Jika Anda pernah melihat error berikut pada system.log Router atau Pemroses Pesan, batas deskriptor file mungkin ditetapkan 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 menetapkan batas deskriptor file ke 100000, buka tiket dengan Dukungan Apigee Edge untuk pemecahan masalah lebih lanjut.

Layanan Keamanan Jaringan (NSS)

Layanan Keamanan Jaringan (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 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), Message Processors 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 Pemroses Pesan, edit /etc/nscd.conf
  2. Tetapkan properti berikut:
    enable-cache hosts no

Menonaktifkan IPv6 di Google Cloud Platform untuk RedHat/CentOS 7

Jika Anda menginstal Edge di RedHat 7 atau CentOS 7 di Google Cloud Platform, Anda harus menonaktifkan IPv6 di semua node Qpid.

Lihat dokumentasi RedHat atau CentOS versi OS spesifik Anda untuk mendapatkan petunjuk tentang cara menonaktifkan IPv6. Misalnya, Anda dapat:

  1. Buka /etc/hosts di editor.
  2. Sisipkan karakter "#" di kolom salah satu baris berikut untuk dijadikan sebagai komentar:
    #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
  3. Simpan file.

AMI AWS

Jika Anda menginstal Edge di AWS Amazon Machine Image (AMI) untuk Red Hat Enterprise Linux 7.x, Anda harus menjalankan perintah berikut terlebih dahulu:

yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional

Alat

Penginstal menggunakan alat UNIX berikut dalam versi standar yang disediakan oleh EL5 atau EL6.

awk

expr

libxslt

npm

unzip

basename

grep

soket lua

rpm2cpio

penggunatambahkan

bash

hostname

ls

sed

wc

bc

id

net-tools

sudo

wget

curl

Libia

perl (dari procps)

tar

Xerces-C

sirus-sasl libdb4 pgrep (dari procps) tr yum

date

libdb-cxx

ps

uuid

{i>chkconfig<i}

dirname libibverb pwd {i>uname<i}  
echo librdmacm python    

NTP

Apigee merekomendasikan agar waktu server Anda disinkronkan. Jika belum dikonfigurasi, utilitas ntpdate dapat melakukan tujuan ini, yang memverifikasi apakah server disinkronkan berdasarkan waktu. Anda dapat menggunakan yum install ntp untuk menginstal utilitas. Hal ini sangat berguna untuk mereplikasi penyiapan OpenLDAP. Perlu diperhatikan bahwa Anda menyiapkan zona waktu server dalam UTC.

openldap 2.4

Penginstalan secara lokal memerlukan OpenLDAP 2.4. Jika server Anda memiliki koneksi Internet, skrip penginstalan Edge akan mendownload dan menginstal OpenLDAP. Jika server tidak memiliki koneksi Internet, Anda harus memastikan bahwa OpenLDAP sudah terinstal sebelum menjalankan skrip penginstalan Edge. Di RHEL/CentOS, Anda dapat menjalankan yum install openldap-clients openldap-servers untuk menginstal OpenLDAP.

Untuk penginstalan 13 host dan 12 host dengan dua pusat data, replikasi OpenLDAP diperlukan karena ada beberapa node yang menghosting OpenLDAP.

Firewall dan host virtual

Istilah virtual biasanya kelebihan beban di arena IT, dan begitu pula dengan Apigee Edge untuk deployment Private Cloud dan host virtual. Untuk memperjelas, ada dua penggunaan utama istilah virtual:

  • Virtual machine (VM): Tidak wajib, tetapi beberapa deployment menggunakan teknologi VM untuk membuat server terisolasi untuk komponen Apigee-nya. Host VM, seperti host fisik, dapat memiliki antarmuka jaringan dan firewall.
  • Host virtual: Endpoint web, serupa dengan host virtual Apache.

Router di VM dapat mengekspos beberapa host virtual (selama host virtual tersebut berbeda satu sama lain dalam alias host atau di port antarmukanya).

Sama seperti contoh penamaan, satu server fisik A mungkin menjalankan dua VM, bernama "VM1" dan "VM2". Anggaplah "VM1" mengekspos antarmuka Ethernet virtual, yang diberi nama "eth0" di dalam VM, dan diberi alamat IP 111.111.111.111 oleh mesin virtualisasi atau server DHCP jaringan; lalu asumsikan VM2 mengekspos antarmuka Ethernet virtual yang juga bernama "eth0" dan akan diberi alamat IP 111.111.111.222.

Kita mungkin memiliki router Apigee yang berjalan di masing-masing VM. Router mengekspos endpoint host virtual seperti dalam contoh hipotesis berikut:

Router Apigee di VM1 mengekspos tiga host virtual pada antarmuka eth0-nya (yang memiliki beberapa alamat IP spesifik), 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 seperti yang diekspos oleh VM1).

Sistem operasi host fisik mungkin memiliki firewall jaringan. Jika demikian, firewall tersebut harus dikonfigurasi untuk meneruskan traffic TCP yang terikat 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 firewall sendiri pada antarmuka eth0-nya, yang 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 jalur dasar yang berbeda. Misalnya, satu jalur dasar dapat ditentukan sebagai http://api.mycompany.com:80/ dan yang lainnya ditentukan sebagai http://api.mycompany.com:80/salesdemo.

Dalam hal ini, Anda memerlukan load balancer atau direktur traffic untuk memisahkan traffic http://api.mycompany.com:80/ di 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 jalur dasar dalam deployment, router tidak akan tahu ke API mana permintaan masuk akan dikirim.

Namun, jika Anda men-deploy API testmycompany dengan URL dasar /salesdemo, pengguna dapat mengakses API tersebut menggunakan http://api.mycompany.com:80/salesdemo. Jika Anda men-deploy perusahaan perusahaan API dengan URL dasar /, pengguna Anda akan mengakses API dengan URL http://api.mycompany.com:80/.

Pemberian (hak) lisensi

Setiap penginstalan Edge memerlukan file lisensi unik yang Anda peroleh dari Apigee. Anda harus memberikan jalur ke file lisensi saat menginstal server pengelolaan, misalnya /tmp/license.txt.

Penginstal akan menyalin file lisensi ke /opt/apigee/customer/conf/license.txt.

Jika file lisensi valid, server pengelolaan akan memvalidasi masa berlaku dan jumlah Pemroses Pesan (MP) yang diizinkan. Jika salah satu setelan lisensi sudah tidak berlaku, 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.