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

Private Cloud için Edge v4.18.05

Edge'i yükleme işleminden sonra yapılandırmak için .properties dosyalarının 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 gerekli özellikleri ayarlamak üzere .properties dosyalarını düzenlersiniz. .properties dosyalarında yapılan değişiklikler için etkilenen Edge bileşenini yeniden başlatmanız gerekir.

Apigee, .properties dosyalarını yapılandırmalı kod olarak düzenleme tekniğini ifade eder. Yapılandırma içeren kod, temel olarak .properties dosyalarındaki ayarlara dayalı bir anahtar/değer arama aracıdır. Yapılandırma içeren kodda anahtarlara jeton denir. Bu nedenle, Edge'i yapılandırmak için .properties dosyalarında jetonları ayarlarsınız.

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

Bunu bir hiyerarşi olarak düşünürseniz ayarlar aşağıdaki gibi düzenlenir. Müşteri ayarları, yükleyici ekibi veya Apigee'deki tüm ayarları geçersiz kılmak için en yüksek önceliğe sahiptir:

  1. Müşteri
  2. Yükleyici
  3. Apigee

.properties dosyalarını kullanma

Müşteri olarak, yalnızca /opt/apigee/customer/application dizinindeki .properties dosyalarını değiştirebilirsiniz. Her bileşenin bu dizinde kendi .properties dosyası vardır. Örneğin, router.properties ve management-server.properties.

Örneğin, .properties dosyası oluşturmak için:

  1. Dosyayı bir düzenleyicide herhangi bir kullanıcı olarak oluşturun.
  2. Dosya sahibini "Apigee:Apigee" olarak değiştirmek için chown kodunu kullanın. Alternatif olarak, Edge hizmetini çalıştıran kullanıcıyı "Apigee" kullanıcısından değiştirdiyseniz, dosyayı Edge hizmetini çalıştıran kullanıcı olarak değiştirebilirsiniz.

Bir bileşen için mülk ayarlamak üzere jeton ayarlamak için ilgili .properties dosyasını düzenleyin ve ardından bileşeni yeniden başlatın:

/opt/apigee/apigee-service/bin/apigee-service component restart

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

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

Edge'i yeni sürüme geçirdiğinizde /opt/apigee/customer/application dizinindeki .properties dosyaları okunur. Bu, yükseltme işleminde bileşende belirlediğiniz tüm özelliklerin korunacağı anlamına gelir.

.properties dosyalarının konumu

Edge bileşenleri için .properties dosyalarında üç üst düzey dizin bulunur: yükleme, sahibi ve müşteriler. Varsayılan konumlar aşağıdaki tabloda gösterilmiştir:

Sahip Varsayılan jeton kök dizini
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ü)
Kurulum
/opt/apigee/token
Müşteri
/opt/apigee/customer

Bir jetonun mevcut değerini belirleme

Bileşen için .properties dosyasında bir jeton ayarlamadan önce, aşağıdaki komutu kullanarak önce mevcut değerini belirleyebilirsiniz:

/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 geçerli değerini belirlemek için .properties dosyalarının hiyerarşisini arar.

Örneğin, Yönlendirici için conf_http_HTTPRequest.line.limit jetonunun mevcut değerini kontrol etmek üzere:

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

Çıkış şu şekilde görünmelidir:

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

.properties dosyalarında jeton ayarlama

Bir jetonun değerini geçersiz kılmak için:

  1. Jeton değerini ayarlamak için bileşene ait .properties dosyasını düzenleyin. Dosya yoksa oluşturun.
  2. Bileşeni yeniden başlatın.
  3. Jeton değerini kontrol edin.

Örneğin, Edge Router için istek satırı sınırını ayarlamak üzere:

  1. conf_http_HTTPRequest.line.limit jetonunu ayarlamak için /opt/apigee/customer/application/router.properties dosyasını düzenleyin:
    conf_http_HTTPRequest.line.limit=8k
  2. Edge Yönlendiriciyi yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  3. Jetonun değerini kontrol edin:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

Birden çok değer alan bir jeton ayarlayın

Bazı jetonlar, virgülle ayrılmış bir değer listesi alır. Örneğin, conf_security_rbac.restricted.resources jetonu yalnızca sysadmin'in çağırabilmesi için kısıtlanmış URI'lerin bir listesini alır. conf_security_rbac.restricted.resources değerini görmek için:

cd /opt/apigee/edge-management-server
grep -ri "conf_security_rbac.restricted.resources" *

Çıkışta şunlar yer alır:

token/default.properties:conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status

Değer listesi alan bir jeton ayarlamak için yeni değerleri .properties dosyasındaki jetonun mevcut değerine ekleyin. Bu nedenle, /myuri/* URI'sini conf_security_rbac.restricted.resources'a eklemek için /opt/apigee/customer/application/management-server.properties dosyasını aşağıdaki gibi düzenleyin:

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

Jeton bulma

Çoğu durumda, ayarlamanız gereken jetonlar bu kılavuzda belirtilir. Ancak, bir özelliği geçersiz kılmak için kullanılan jetonu belirlemeniz gerekiyorsa bileşenin source klasöründe grep işlemi gerçekleştirin.

Örneğin, Edge'in önceki bir sürümünde session.maxAge mülkünü ayarladığınızı biliyor ve bu ayarı yapmak için kullanılan jeton değerini öğrenmek istiyorsanız /opt/apigee/edge-ui/source dizinindeki mülk için grep:

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

Aşağıdaki şekilde bir sonuç görürsünüz:

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

{T}{/T} etiketleri arasındaki dize, .properties dosyasında belirlediğiniz jetondur.

Şu anda yoruma alınmış bir jeton ayarlama

Bazı jetonlar, Edge yapılandırma dosyalarında yorumlanmıştır. Yorum satırı içine alınmış bir jeton ayarlamaya çalışırsanız ayar yoksayılır.

Yorumlanmış bir jeton ayarlamak için aşağıdaki biçimde özel bir söz dizimi kullanırsınız:

conf/file.extension+propertyName=propertyValue

Örneğin, Mesaj İşleyicide HTTPClient.proxy.host adlı mülkü ayarlamak istiyorsunuz. Ardından, mülkün jetonunu belirlemesi için grep yapın:

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

grep komutu, jeton değerini içeren biçimde sonuçları döndürür. Mülk adının, mülk adındaki # ön ekiyle belirtildiği gibi nasıl yoruma alındığı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=

Mülkü ayarlamak için /opt/apigee/customer/application/message-processor.properties değerini düzenleyin. Mülkü şu şekilde ayarlayabilirsiniz:

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

Mülk adının önüne conf/http.properties+, mülkü içeren yapılandırma dosyasının konumu ve adının önüne "+" eklendiğini fark edin.

İleti İşleyen'i 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, mülk kümesini şu biçimde görürsünüz:

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