Edge nasıl yapılandırılır?

Kurulumdan sonra Edge'i yapılandırmak için .properties dosyaları ve Edge yardımcı programlarının bir kombinasyonunu kullanırsınız. Örneğin, Edge kullanıcı arayüzünde TLS/SSL'yi yapılandırmak için .properties dosyalarını gerekli özellikleri ayarlamak üzere düzenlersiniz. .properties dosyalarında yapılan değişiklikler, etkilenen Edge bileşenini yeniden başlatmanızı gerektirir.

Apigee, .properties dosyalarını config ile kod (bazen CwC olarak kısaltılır) olarak düzenleme tekniğini ifade eder. Temel olarak yapılandırmaya sahip kod, .properties dosyalarındaki ayarları temel alan bir anahtar/değer arama aracıdır. Yapılandırmalı kodda anahtarlar jeton olarak adlandırılır. Bu nedenle, Edge'i yapılandırmak için .properties dosyalarında jetonlar ayarlarsınız.

Yapılandırmalı kod, Edge bileşenlerinin ürünle birlikte gönderilen varsayılan değerleri belirlemesine olanak tanır, kurulum ekibinin yükleme topolojisine göre bu ayarları geçersiz kılmasına ve ardından müşterilerin seçtikleri özellikleri geçersiz kılmasına olanak tanır.

Bunu bir hiyerarşi olarak düşünüyorsanız ayarlar, yükleyici ekibinden veya Apigee'den gelen tüm ayarları geçersiz kılma konusunda en yüksek önceliğe sahip olacak şekilde aşağıdaki gibi düzenlenir:

  1. Müşteri
  2. Yükleyici
  3. Bileşen

Bir jetonun mevcut değerini belirleme

.properties dosyasındaki bir jeton için yeni bir değer ayarlamadan önce, aşağıdaki komutu kullanarak jetonun mevcut değerini belirlemeniz gerekir:

/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token

Burada component_name, bileşenin adı, token ise incelenecek jetondur.

Bu komut, jetonun mevcut değerini belirlemek için bileşenin .properties dosyalarının hiyerarşisinde arama yapar.

Aşağıdaki örnekte, Yönlendirici için conf_http_HTTPRequest.line.limit jetonunun mevcut değeri kontrol edilir:

/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

Aşağıdaki gibi bir çıkış almanız gerekir:

Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties

Jetonun değeri # ile başlıyorsa jetonun açıklaması dışa aktarılmıştır. Jetonu değiştirmek için özel bir söz dizimi kullanmanız gerekir. Daha fazla bilgi için Şu anda yorum eklenmiş olan bir jeton ayarlama bölümüne bakın.

Jetonun tam adını bilmiyorsanız mülk adına veya anahtar kelimeye göre arama yapmak için grep gibi bir araç kullanın. Daha fazla bilgi için Jeton bulma bölümünü inceleyin.

Özellikler dosyaları

Düzenlenebilir ve düzenlenemeyen bileşen yapılandırma dosyaları bulunur. Bu bölümde söz konusu dosyalar açıklanmaktadır.

Düzenlenebilir bileşen yapılandırma dosyaları

Aşağıdaki tabloda Apigee bileşenleri ve bu bileşenleri yapılandırmak için düzenleyebileceğiniz özellik dosyaları listelenmiştir:

Bileşen Bileşen Adı Düzenlenebilir Yapılandırma Dosyası
Cassandra apigee-cassandra /opt/apigee/customer/application/cassandra.properties
Apigee TOA apigee-sso /opt/apigee/customer/application/sso.properties
Yönetim Sunucusu edge-management-server /opt/apigee/customer/application/management-server.properties
Mesaj İşleyici edge-message-processor /opt/apigee/customer/application/message-processor.properties
apigee-monit apigee-monit /opt/apigee/customer/application/monit.properties
Klasik kullanıcı arayüzü (yeni Edge kullanıcı arayüzünü etkilemez) edge-ui /opt/apigee/customer/application/ui.properties
Edge kullanıcı arayüzü (yalnızca yeni Edge kullanıcı arayüzü; Klasik kullanıcı arayüzünü etkilemez) apigee-management-ui Yok (yükleme yapılandırma dosyasını kullanın)
OpenLDAP apigee-openldap /opt/apigee/customer/application/openldap.properties
Postgres Sunucusu edge-postgres-server /opt/apigee/customer/application/postgres-server.properties
PostgreSQL Veritabanı apigee-postgresql /opt/apigee/customer/application/postgressql.properties
Qpid Sunucusu edge-qpid-server /opt/apigee/customer/application/qpid-server.properties
Qpidd apigee-qpidd /opt/apigee/customer/application/qpidd.properties
Yönlendirici edge-router /opt/apigee/customer/application/router.properties
Zookeeper apigee-zookeeper /opt/apigee/customer/application/zookeeper.properties

Bu bileşen yapılandırma dosyalarından birinde bir özellik ayarlamak istiyorsanız ancak özellik yoksa özelliği yukarıda listelenen konumda oluşturabilirsiniz.

Ayrıca, özellikler dosyasının "Apigee" kullanıcısına ait olduğundan emin olmanız gerekir:

chown apigee:apigee /opt/apigee/customer/application/configuration_file.properties

Düzenlenemeyen bileşen yapılandırma dosyaları

Düzenlenebilir bileşen yapılandırma dosyalarının yanı sıra düzenleyemeyeceğiniz yapılandırma dosyaları da vardır.

Bilgilendirici (düzenlenemez) dosyalar şunları içerir:

Sahip Dosya Adı veya Dizin
Döşeme
/opt/apigee/token
Bileşen
/opt/apigee/component_name/conf

Burada component_name, bileşeni tanımlar. Olası değerler şunları içerir:

  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (PostgreSQL veritabanı)
  • apigee-qpidd (Qpidd)
  • apigee-sso (Edge TOA)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (Yönetim Sunucusu)
  • edge-management-ui (yeni Edge kullanıcı arayüzü)
  • edge-message-processor (Mesaj İşleyici)
  • edge-postgres-server (Postgres Sunucusu)
  • edge-qpid-server (Qpid Sunucusu)
  • edge-router (Edge Yönlendirici)
  • edge-ui (Klasik kullanıcı arayüzü)

Jeton değeri belirleyin

.properties dosyalarını yalnızca /opt/apigee/customer/application dizininde değiştirebilirsiniz. Her bileşenin bu dizinde kendi .properties dosyası vardır. Örneğin, router.properties ve management-server.properties. Mülk dosyalarının tam listesi için .properties dosyalarının konumu konusuna bakın.

.properties dosyası oluşturmak için:

  1. Bir düzenleyicide yeni metin dosyası oluşturun. Dosya adı, müşteri dosyaları için yukarıdaki tabloda gösterilen listeyle eşleşmelidir.
  2. Aşağıdaki örnekte gösterildiği gibi dosyanın sahibini "Apigee:Apigee" olarak değiştirin:
    chown apigee:apigee /opt/apigee/customer/application/router.properties

    Edge hizmetini çalıştıran kullanıcıyı "Apigee" kullanıcısından değiştirdiyseniz sahipliği Edge hizmetini çalıştıran kullanıcı olarak değiştirmek için chown kullanın.

Edge'i yükselttiğinizde /opt/apigee/customer/application dizinindeki .properties dosyaları okunur. Bu, yükseltme işleminin bileşen üzerinde ayarladığınız tüm özellikleri koruyacağı anlamına gelir.

Jetonun değerini belirlemek için:

  1. Bileşenin .properties dosyasını düzenleyin.
  2. Jetonun değerini ekleyin veya değiştirin. Aşağıdaki örnekte conf_http_HTTPRequest.line.limit özelliğinin değeri "10k" olarak ayarlanmaktadır:
    conf_http_HTTPRequest.line.limit=10k

    Jeton birden fazla değer alıyorsa aşağıdaki örnekte gösterildiği gibi, her bir değeri virgülle ayırın:

    conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*

    Bir listeye bunun gibi yeni bir değer eklemek için genellikle yeni değeri listenin sonuna eklersiniz.

  3. Bileşeni yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service component_name restart

    Burada component_name şunlardan biridir:

    • apigee-cassandra (Cassandra)
    • apigee-openldap (OpenLDAP)
    • apigee-postgresql (PostgreSQL veritabanı)
    • apigee-qpidd (Qpidd)
    • apigee-sso (Edge TOA)
    • apigee-zookeeper (ZooKeeper)
    • edge-management-server (Yönetim Sunucusu)
    • edge-management-ui (yeni Edge kullanıcı arayüzü)
    • edge-message-processor (Mesaj İşleyici)
    • edge-postgres-server (Postgres Sunucusu)
    • edge-qpid-server (Qpid Sunucusu)
    • edge-router (Edge Yönlendirici)
    • edge-ui (Klasik kullanıcı arayüzü)

    Örneğin, router.properties talimatını düzenledikten sonra Yönlendiriciyi yeniden başlatın:

    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  4. (İsteğe bağlı) configure -search seçeneğini kullanarak jeton değerinin yeni değerinize ayarlanıp ayarlanmadığını kontrol edin. Örneğin:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

    configure -search hakkında daha fazla bilgi için Bir jetonun mevcut değerini belirleme bölümünü inceleyin.

Jetonu bulma

Çoğu durumda, ayarlamanız gereken jetonlar bu kılavuzda açıklanmıştır. Bununla birlikte, tam adını veya konumunu bilmediğiniz mevcut bir jetonun değerini geçersiz kılmanız gerekirse bileşenin source dizininde arama yapmak için grep öğesini kullanın.

Örneğin, Edge'in önceki bir sürümünde session.maxAge özelliğini ayarladığınızı ve bu özelliği ayarlamak için kullanılan jeton değerini öğrenmek istediğinizi biliyorsanız /opt/apigee/edge-ui/source dizinindeki özellik için grep:

grep -ri "session.maxAge" /opt/apigee/edge-ui/source

Aşağıdaki biçimde bir sonuç görmeniz gerekir:

/opt/apigee/component_name/source/conf/application.conf:property_name={T}token_name{/T}

Aşağıdaki örnekte kullanıcı arayüzünün session.maxAge jetonunun değeri gösterilmektedir:

/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}

{T}{/T} etiketleri arasındaki dize, kullanıcı arayüzünün .properties dosyasında ayarlayabileceğiniz jetonun adıdır.

Şu anda yorum eklenmiş olan bir jeton ayarlayın

Bazı jetonlar, Edge yapılandırma dosyalarında açıklamaya dahil edilir. Bir yükleme veya bileşen yapılandırma dosyasında yorumlanan bir jeton ayarlamaya çalışırsanız ayarınız yok sayılır.

Bir Edge yapılandırma dosyasında yorumlanan jetonun değerini ayarlamak için aşağıdaki biçimde özel söz dizimi kullanın:

conf/filename+propertyName=propertyValue

Örneğin, İleti İşleyici'de HTTPClient.proxy.host adlı özelliği ayarlamak üzere mülkün jetonunu belirlemek için önce grep:

grep -ri /opt/apigee/edge-message-processor/ -e "HTTPClient.proxy.host"

grep komutu, jeton adını içeren sonuçları döndürür. Mülk adının # ön ekiyle belirtildiği gibi nasıl yorumlandığına dikkat edin:

source/conf/http.properties:#HTTPClient.proxy.host={T}conf_http_HTTPClient.proxy.host{/T}
token/default.properties:conf_http_HTTPClient.proxy.host=
conf/http.properties:#HTTPClient.proxy.host=

Bu özelliğin değerini ayarlamak için /opt/apigee/customer/application/message-processor.properties öğesini düzenleyin ancak aşağıdaki örnekte gösterildiği gibi özel bir söz dizimi kullanın:

conf/http.properties+HTTPClient.proxy.host=myhost.name.com

Bu durumda, mülk adının önüne conf/http.properties+ eklemeniz gerekir. Bu, "+" işaretinden önce gelen özelliği içeren yapılandırma dosyasının konumu ve adıdır.

İleti İşleyici'yi yeniden başlattıktan sonra /opt/apigee/edge-message-processor/conf/http.properties dosyasını inceleyin:

cat /opt/apigee/edge-message-processor/conf/http.properties

Dosyanın sonunda, özellik grubunu şu biçimde görürsünüz:

conf/http.properties:HTTPClient.proxy.host=myhost.name.com