Configurarea IBM Cloud Transformation Advisor

Următorul document descrie configurația pentru Transformation Advisor 2.4.x +. Pentru detalii despre configurarea versiunilor mai vechi, vedeți aici.

Când instalați Transformation Advisor, sunt aplicate valorile implicite pentru setările de configurare. Persistența este o setare de configurare pe care va trebui să o stabiliți singur, în funcție de opțiunile de persistență disponibile pe mediul dumneavoastră. Vă rugăm să consultați secțiunea Persistența din documentul Cerințele preliminare pentru mai multe detalii despre aceasta. În funcție de mediul și preferințele dumneavoastră, ați putea dori să vă personalizați instalarea Transformation Advisor mai departe. Următoarea listă prezintă toate opțiunile de configurare disponibile în Transformation Advisor, care pot fi accesate în fișierul YAML de resursă personalizată. Vedeți Instalarea pentru a afla cum se accesează fișierul YAML de resursă personalizată. Multe dintre aceste opțiuni (după cum este indicat) sunt destinate depanării avansate și ar trebui să fie utilizate numai de către experți.

Parametru Descriere Implicit
networkPolicy.enabled Activează networkPolicy în cluster. Depanare avansată. true
route.enabled Activează ruta pentru a ajunge la serviciu. Depanare avansată. true
route.hosname Numele de gazdă pentru rută. Valoare descoperită și setată de operatorul TA
fips.enabled Setați la true dacă instalați într-un mediu în care s-a activat FIPS. false
tls.enabled Activează TLS între containere. Depanare avansată. true
tls.caCert Certificatul CA pentru TLS (Instrucţiunile pentru crearea certului de client sunt furnizate mai jos.) setat de icpa-installer
authentication.disabled.liberty Dezactivați autentificarea pentru serverul Liberty. Depanare avansată. false
authentication.disabled.ui Dezactivați autentificarea pentru UI. Depanare avansată. false
authentication.ocp.authIssuerEndpoint Punct final emitent de autentificare. Valoare descoperită și setată de operatorul TA
authentication.ocp.apiEndpoint Punct final API de autentificare. Valoare descoperită și setată de operatorul TA
authentication.ocp.secretName Nume secret pentru autentificare internă. transformation-advisor-secret
authentication.oidc.endpointPort Port punct final de autentificare OIDC Valoare descoperită și setată de operatorul TA
authentication.oidc.clientId Registrul OIDC va fi creat cu acest ID ta-ui
authentication.oidc.clientSecret Registrul OIDC va fi creat cu acest secret Valoare descoperită și setată de operatorul TA
authentication.thirdparty.identityRequestEndpoint Punct final cerere de identitate terță parte Nu este setat
authentication.thirdparty.identityRequestEndpointPath Cale punct final cerere de identitate terță parte Nu este setat
authentication.thirdparty.identityRequestEndpointScope Domeniu punct final cerere de identitate terță parte Nu este setat
authentication.thirdparty.identityRequestEndpointStatePrefix Prefix de stare punct final cerere de identitate terță parte Nu este setat
authentication.thirdparty.tokenRequestEndpoint Punct final cerere de jeton terță parte Nu este setat
authentication.thirdparty.tokenRequestEndpointPath Cale punct final cerere de jeton terță parte Nu este setat
authentication.thirdparty.tokenVerificationEndpoint Punct final de verificare terță parte Nu este setat
authentication.thirdparty.tokenVerificationEndpointPath Cale punct final de verificare terță parte Nu este setat
couchdb.image Tag de imagine Couchdb Valoare descoperită și setată de operatorul TA
couchdb.imagePullSecret Secret de tragere imagine. Utilizat pentru a accesa registrul îndreptățit. Vedeți Cerințele preliminare pentru mai multe detalii. Fără
couchdb.resources.requests.memory Cere memorie (Resursele ar putea fi modificate în funcție de disponibilitate. Valorile implicite sunt minime.) 1Gi
couchdb.resources.requests.cpu Cere cpu 500m
couchdb.resources.limits.memory Limitează memoria 8Gi
couchdb.resources.limits.cpu Limitează cpu 16000m
couchdb.livenessProbe.initialDelaySeconds Secunde de întârziere iniţială pentru sondarea de container în viaţă (Sondările ar putea fi modificate în funcţie de performanţa cluster-ului. Valorile implicite funcționează în majoritatea cazurilor. Depanare avansată.) 60
couchdb.livenessProbe.timeoutSeconds Secunde timeout sondare de container în viață. Depanare avansată. 3
couchdb.livenessProbe.periodSeconds Secunde perioadă sondare de container în viață. Depanare avansată. 5
couchdb.livenessProbe.failureThreshold Prag de eșec sondare de container în viață. Depanare avansată. 6
couchdb.readinessProbe.initialDelaySeconds Secunde întârziere inițială sondare de pregătire container. Depanare avansată. 5
couchdb.readinessProbe.timeoutSeconds Secunde timeout sondare de pregătire container. Depanare avansată. 3
couchdb.readinessProbe.periodSeconds Secunde perioadă sondare de pregătire container. Depanare avansată. 5
couchdb.readinessProbe.failureThreshold Prag de eșec sondare de pregătire container. Depanare avansată. 6
couchdb.persistence.enabled Persistența activată (Dacă este dezactivată, toate datele sunt pierdute când repornește containerul DB). true
couchdb.persistence.accessMode Mod acces Cuchdb. ReadWriteMany
couchdb.persistence.size Mărime spațiu de stocare Couchdb. 8Gi
couchdb.persistence.useDynamicProvisioning Utilizați provizionarea dinamică. Nu modificați. true
couchdb.persistence.existingClaim Revendicare PV existent (De obicei, este utilizat PVC-ul existent pentru a indica datele existente.) ""
couchdb.persistence.storageClassName Nume clasă de stocare Couchdb (de ex. "rook-ceph-cephfs-internal") ""
couchdb.persistence.supplementalGroups Grupuri suplimentare Couchdb (De obicei, utilizate pentru NFS) []
transadv.image Tag de imagine server Transadv Liberty. Depanare avansată.
transadv.imagePullSecret Secret de tragere imagine. Utilizat pentru a accesa registrul îndreptățit. Vedeți Cerințele preliminare pentru mai multe detalii.
transadv.pubilcUrl URL public server Transadv Valoare descoperită și setată de TA
transadv.image.logLevel Nivel de jurnalizare server Transadv info
transadv.resources.requests.memory Cere memorie 1Gi
transadv.resources.requests.cpu Cere cpu 500m
transadv.resources.limits.memory Limitează memoria 8Gi
transadv.resources.limits.cpu Limitează cpu 16000m
transadv.livenessProbe.initialDelaySeconds Secunde de întârziere inițială sondare de container în viață. Depanare avansată. 60
transadv.livenessProbe.timeoutSeconds Secunde timeout sondare de container în viață. Depanare avansată. 3
transadv.livenessProbe.periodSeconds Secunde perioadă sondare de container în viață. Depanare avansată. 5
transadv.livenessProbe.failureThreshold Prag de eșec sondare de container în viață. Depanare avansată. 6
transadv.readinessProbe.initialDelaySeconds Secunde întârziere inițială sondare de pregătire container. Depanare avansată. 60
transadv.readinessProbe.timeoutSeconds Secunde timeout sondare de pregătire container. Depanare avansată. 3
transadv.readinessProbe.periodSeconds Secunde perioadă sondare de pregătire container. Depanare avansată. 5
transadv.readinessProbe.failureThreshold Prag de eșec sondare de pregătire container. Depanare avansată. 6
transadvui.image Tag de imagine Transadv UI. Depanare avansată.
transadvui.imagePullSecret Secret de tragere imagine. Utilizat pentru a accesa registrul îndreptățit. Vedeți Cerințele preliminare pentru mai multe detalii.
transadvui.image.logLevel Nivel de jurnalizare Transadv UI info
transadvui.useSecureCookie Utilizare cookie securizat pentru Transadv UI true
transadvui.resources.requests.memory Cere memorie 1Gi
transadvui.resources.requests.cpu Cere cpu 500m
transadvui.resources.limits.memory Limitează memoria 4Gi
transadvui.resources.limits.cpu Limitează cpu 16000m
transadvui.livenessProbe.initialDelaySeconds Secunde de întârziere inițială sondare de container în viață. Depanare avansată. 60
transadvui.livenessProbe.timeoutSeconds Secunde timeout sondare de container în viață. Depanare avansată. 5
transadvui.livenessProbe.periodSeconds Secunde perioadă sondare de container în viață. Depanare avansată. 30
transadvui.livenessProbe.failureThreshold Prag de eșec sondare de container în viață. Depanare avansată. 6
transadvui.readinessProbe.initialDelaySeconds Secunde întârziere inițială sondare de pregătire container. Depanare avansată. 5
transadvui.readinessProbe.timeoutSeconds Secunde timeout sondare de pregătire container. Depanare avansată. 5
transadvui.readinessProbe.periodSeconds Secunde perioadă sondare de pregătire container. Depanare avansată. 30
transadvui.readinessProbe.failureThreshold Prag de eșec sondare de pregătire container. Depanare avansată. 6

Configurația programului de instalare CASE

Următoarele opțiuni sunt disponibile pentru comenzile programului de instalare CASE:

Opțiuni pentru acțiune de instalare:

cloudctl case launch \
    --case ibm-transadv \
    --inventory v2InstallProduct \
    --namespace $TA_PROJECT \
    --action install \
    --args "[OPTIONS]"
--acceptLicense <true|false>        : NECESAR: Trebuie să fie utilizat și setat la true pentru a continua cu instalarea.
--installIbmCatalog <true|false>    : OPȚIONAL: Dacă este setat la true, va fi instalat catalogul de operatori IBM, dacă nu există deja. Valoarea implicită este false.
--installTaCatalog <true|false>     : OPȚIONAL: Dacă este setat la true, va fi instalat catalogul Transformation Advisor, dacă nu există deja. Valoarea implicită este false.
--secret <secret>                   : OPȚIONAL: Specificați un secret de utilizat pentru a trage imaginile Tranformation Advisor din registrul îndreptățit.
--registry <registry>               : OPȚIONAL: Registrul îndreptățit specificat, de ex. cp.icr.io.
--user <user>                       : OPȚIONAL: Specificați utilizatorul pentru accesarea registrului îndreptățit.
--pass <password>                   : OPȚIONAL: Specificați parola pentru utilizatorul care va accesa registrul îndreptățit.
--tryAndBuy                               : OPȚIONAL: Dacă nu aveți o cheie de abilitare pentru registrul îndreptățit, utilizați această opțiune pentru a instala Transformation Advisor în modul de încercare și cumpărare.
--persistence <true|false>          : OPȚIONAL: Dacă este necesară persistența pentru Transformation Advisor (Implicit este true).
--accessMode <accessMode>           : OPȚIONAL: accessMode pentru stocare. Valoarea implicită este ReadWriteMany.
--persistenceClaim <claim>          : OPȚIONAL: Folosiți o revendicare de persistență existentă.
--storageClass <storage class>      : OPTIONAL: Modalitatea recomandată de utilizare a persistenței cu Transformation Advisor. Specificați o clasă de stocare validă de folosit.
--supplementalGroups [gid,...]            : OPȚIONAL: Poate fi folosit dacă se folosește stocarea bazată pe sistemul de fișiere, pentru asigurarea că containerul bazei de date are permisiune de citire/scriere pentru spațiul de stocare.
--hostName <hostname>               : OPȚIONAL: numele de gazdă pentru a accesa cluster-ul. Transformation Advisor va descoperi și va seta această valoare. Pentru majoritatea mediilor, nu ar trebui să fie necesară modificarea.
--apiEndpoint <apiEndpoint>         : OPȚIONAL: URL-ul de API pentru cluster. Transformation Advisor va descoperi și va seta această valoare. Pentru majoritatea mediilor, nu ar trebui să fie necesară modificarea.
--authIssuerEndpoint <aiEndpoint>   : OPȚIONAL: Punctul final de emitent Auth pentru cluster. Transformation Advisor va descoperi și va seta această valoare. Pentru majoritatea mediilor, nu ar trebui să fie necesară modificarea.
--publicUrlServer                         : OPȚIONAL: Vedeți documentația pentru mai multe informații. Transformation Advisor va descoperi și va seta această valoare. Pentru majoritatea mediilor, nu ar trebui să fie necesară modificarea.
--publicUrlUI                             : OPȚIONAL: Vedeți documentația pentru mai multe informații. Transformation Advisor va descoperi și va seta această valoare. Pentru majoritatea mediilor, nu ar trebui să fie necesară modificarea.
--customCACert <file path>          : OPȚIONAL: Specificați fișierul de utilizat pentru certificat CA personalizat. -- authConfigFile <file path> : OPȚIONAL: Specificați fișierul de utilizat pentru a configura autentificarea terță parte -- fips <true|false> : OPȚIONAL: Dacă vreți ca instalarea Transformation Advisor să fie activată pentru FIPS. Valoarea implicită este false.
--checkUpgrade                            : OPȚIONAL: Verificați dacă există o versiune TA instalată în spațiul de nume curent și, dacă există, dacă este posibilă modernizarea automată la noua versiune.
--upgrade                                 : OPȚIONAL: Modernizați versiunea TA instalată curent la noua versiune, dacă este posibil.
--taHelp                                  : OPȚIONAL: Afișați opțiunile disponibile

Opțiuni pentru acțiune de dezinstalare:

cloudctl case launch \
    --case ibm-transadv \
    --inventory v2InstallProduct \
    --namespace $TA_PROJECT \
    --action uninstall \
    --args "[OPTIONS]"
--uninstallIbmCatalog <true|false>    : OPȚIONAL: Dacă este setat la true, va fi dezinstalat catalogul de operatori IBM. Valoarea implicită este false.
--uninstallTaCatalog <true|false>     : OPȚIONAL: Dacă este setat la true, va fi dezinstalat catalogul de operatori IBM. Valoarea implicită este false.

Configurare autentificare terță parte

Configurarea autentificării terță parte - Instalare UI

NOTĂ: În plus față de proprietățile descrise în exemplele de mai jos, trebuie de asemenea să setați authentication.oidc.clientId și authentication.oidc.clientSecret corespunzător pentru sursa dumneavoastră de autentificare selectată.

În continuare, este prezentat un exemplu de configurație necesară în obiectul de configurare thirdparty pentru a utiliza Github OAuth:

      description: "github"
      identityRequestEndpoint: "https://github.com"
      identityRequestEndpointPath: "/login/oauth/authorize"
      identityRequestEndpointScope: "openid+offline"
      identityRequestEndpointStatePrefix: ""
      okenRequestEndpoint: "https://github.com"
      tokenRequestEndpointPath: "/login/oauth/access_token"
      tokenVerificationEndpoint: "https://api.github.com"
      tokenVerificationEndpointPath: "/user"

În continuare, este prezentat un exemplu de configurație necesară în obiectul de configurare thirdparty pentru a utiliza Box OAuth:

      description: "box"
      identityRequestEndpoint: "https://account.box.com"
      identityRequestEndpointPath: "/api/oauth2/authorize"
      identityRequestEndpointScope: "root_readonly"
      identityRequestEndpointStatePrefix: ""
      tokenRequestEndpoint: "https://api.box.com"
      tokenRequestEndpointPath: "/oauth2/token"
      tokenVerificationEndpoint: "https://api.box.com"
      tokenVerificationEndpointPath: "/2.0/users/me"

Configurarea autentificării terță parte - Instalare CASE

Specificați un fișier de configurație pentru autentificare terță parte folosind opțiunea -- authConfigFile cu acțiunea CASE install. În continuare, este prezentat un exemplu de astfel de fișier care utilizează GitHub OAuth: Nu modificați formatul fișierului.

# set to true to disable authentication on UI server
TA_AUTH_UI_DISABLED=false
# set to true to disable authentication on Liberty server
TA_AUTH_LIBERTY_DISABLED=false

# OAuth2 Server client id
TA_AUTH_OIDC_CLIENT_ID=xxx
# OAuth2 Server client secret
TA_AUTH_OIDC_CLIENT_SECRET=xxx

# endpoint to request identity of the OAuth2 Server, no tailing /
TA_AUTH_IDENTITY_REQUEST_ENDPOINT=https://github.com
# path of the endpoint to request identity to OAuth2 Server, with heading /
TA_AUTH_IDENTITY_REQUEST_ENDPOINT_PATH=/login/oauth/authorize
# OAuth2 scope
TA_AUTH_IDENTITY_REQUEST_ENDPOINT_SCOPE=openid+offline
# some OAuth2 state requires minimum length, default to empty
TA_AUTH_CALLBACK_STATE_PREFIX_PADDING=

# endpoint to request token of the OAuth2 Server, no tailing /
TA_AUTH_TOKEN_REQUEST_ENDPOINT=https://github.com
# path of the endpoint to request token of the OAuth2 Server, with heading /
TA_AUTH_TOKEN_REQUEST_ENDPOINT_PATH=/login/oauth/access_token

# endpoint to verify tokens of the OAuth2 Server, no tailing /
TA_AUTH_TOKEN_VERIFICATION_ENDPOINT=https://api.github.com
# path to the endpoint to verify tokens of the OAuth2 Server, with heading /
TA_AUTH_TOKEN_VERIFICATION_ENDPOINT_PATH=/user

Activarea BYOK (Bring Your Own Key)

Vă puteţi aduce propriul certificat (numit cert în restul secţiunii) şi cheia utilizată pentru TLS intern.

Pe baza presupunerii că:

  1. Cert-ul public este public.crt, iar cheia privată este private.pem.
  2. Transformation Advisor (TA) este sau va fi instalat în spaţiul de nume ta.

    Iată un exemplu de obţinere a unei perechi cert-cheie, cert-ul şi cheia dumneavoastră fiind în acelaşi format:

    openssl req -newkey rsa:2048 -nodes -keyout private.pem -x509 -days 730 -out public.crt -subj "/C=IE/ST=Cork/L=Cork/O=IBM/CN=internal.ta.ibm.com"

După ce obţineţi perechea de cert şi cheie proprii, urmaţi aceşti paşi pentru a activa cert-ul şi cheia:

  1. Comutaţi la spaţiul de nume ta sau creaţi unul dacă nu aţi instalat TA.

       # switch the project
       oc project ta
    

    or

       # create ta ns if it's not already there
       oc create ns ta
    
  2. Ștergeți secretul TA transformation-advisor-secret, dacă există.

    oc delete secret transformation-advisor-secret
    
  3. Dacă instalați folosind programul de instalare CASE, transmiteți --customCACert <public.crt>, unde <public.crt> este calea completă către fișierul public.crt.

    Dacă instalați folosind interfața de utilizator OpenShift, actualizați proprietatea caCert în fișierul YAML de resursă personalizată. Vedeți Instalarea pentru mai multe detalii despre accesarea fișierului YAML de resursă personalizată din UI.

    Iată un exemplu de caCert în fișierul YAML de resursă personalizată:

      tls:
        enabled: true
        caCert: |
          -----BEGIN CERTIFICATE-----
          MIIDKjCCAhICCQCjbqTC95dw+jANBgkqhkiG9w0BAQsFADBXMQswCQYDVQQGEwJJ
          RTENMAsGA1UECAwEQ29yazENMAsGA1UEBwwEQ29yazEMMAoGA1UECgwDSUJNMRww
          GgYDVQQDDBNpbnRlcm5hbC50YS5pYm0uY29tMB4XDTIwMDEyMDEzMjkxMVoXDTIy
          MDExOTEzMjkxMVowVzELMAkGA1UEBhMCSUUxDTALBgNVBAgMBENvcmsxDTALBgNV
          BAcMBENvcmsxDDAKBgNVBAoMA0lCTTEcMBoGA1UEAwwTaW50ZXJuYWwudGEuaWJt
          LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMIGfSptUnimmxZ
          IdVK6uLscJQetel+MX7u4viIaBwdd/IGDE7GHDHEYYFmEfv+gYbVT1+EAkdiLtHG
          SutUMPxpbUyv1xCW+9z3nDInHKzZxHMJJwB5j4+oVq+XkdXzZu2hwuoc0aA7Ek3r
          L6FFPIQi9bcmayuOa7HRpH43+86JuJF8tcx1MrDxWzBJraZNuvDVLs574qr/eM2d
          x5N+qkJqwOy94k0eH+x7kAKRp6vBEcVR+I/HHYDZSnC4UNEX8I/NbCS3wMUXysC9
          lcC2vsIKrCRSn9Fu/ixWwlGy6QV1my4H6ZPtvJV56fcS42523KTDbT628Xa9B3/p
          cX0WZWMCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEADIyp9A4p46DZ6brEbL0e+wWf
          bnnymf1QZWcz4xrrMW2CcKBmRqFIPFPBpSEbCKlsFaZex5863z7dsa5SU7fHRdHF
          Yk9t8mGu2B+yZF6nW4biPmezaDLPi9VUomxcd+/rxWKhZJIufWXxs22AOhNQHeeK
          PSjP8RPCh1Gny7kC3jUz1Q/wd4QF/OGeu+Xf5jhERpJPfjKMtPMPJPGiPYSqhYQM
          VA6G83nZVlPDtnFJ28AzZU2/YtvCzhU66Ua5PjbSG1w6QsXZt/lE3E9utcJ+MNQi
          3JwrLp4/97cupXsGmPPmkvH50LB8ex/N/ra6QOLGLm0gU218yXu7KezOfZNkTw==
          -----END CERTIFICATE-----    
    

    Puteţi copia şi lipi manual în locaţie. Nu uitaţi că indentarea este importantă. Există 2 spaţii suplimentare pentru fiecare linie din cert faţă de linia din caCert.

  4. Creaţi din nou secretul TA

    # create key.p12
    openssl pkcs12 -export -inkey private.pem -in public.crt -name default -out key.p12 -passout pass:plain-text-password
    
    # base64 encode private.pem and public.crt
    base64 -w 0 ./private.pem > private-base64
    base64 -w 0 ./public.crt > public-base64
    # on Mac
    # base64 ./private.pem > private-base64
    # base64 ./public.crt > public-base64
    
    # create key and initial vector for AES-CBC-256 (P)
    # key length for aes256 is 256 bits around 32 characters
    TA_TEMP_KEY=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 32 | xargs`
    # key length for aes256 is 128 bits around 16 characters
    TA_TEMP_IV=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 16 | xargs`
    
    # create transformation-advisor-secret
    oc create secret generic transformation-advisor-secret \
    --from-literal=db_username='plain-text-username' --from-literal=secret='plain-text-password' \
    --from-file=ta_public_key=./public-base64 --from-file=ta_private_key=./private-base64 \
    --from-literal=ta_aes_key=$TA_TEMP_KEY --from-literal=ta_aes_iv=$TA_TEMP_IV \
    --from-file=key.p12=key.p12
    

Puteți continua acum cu instalarea dumneavoastră.