Uploaded image for project: 'Logging analytics'
  1. Logging analytics
  2. LOG-898 ONAP Deployment Resiliency changes to deploy without POD failures
  3. LOG-924

Kubernetes chart dependencies - make all 105 in 87 files conditional - post yaml for cd

XMLWordPrintable

      Derived from 20181208 baseline
      https://wiki.onap.org/display/DW/Log+Streaming+Compliance+and+API#LogStreamingComplianceandAPI-DeploymentDependencyTree

      Discussion on state of enforced dependencies - SDNC is a good example - it will not deploy unless dmaap, consul and sdc are pre-deployed, however other projects that have compile-time/injection-time pom.xml dependencies are not reflected.

      Some projects have explicit deployments set in their init containers - others do not yet.

      Issues:

      Enforced dependencies block a module for dev testing unless dependencies are up
      For example - everyone needs AAI up - but there are no init containers referencing AAI so any module can deploy without AAI - but functionality will be limited.
      The deployment profile is useful for module-level deployments, consistent sequential deployments, CD and dev environments

      Proposal:

      Follow - as usual - AAI example - where they put in a conditional on the --set enabled flag - and don't enforce the dependency - not blocking bringing up just a single module. However if the dependency is enabled in dev/values.yaml then the dependency is checked.

      https://git.onap.org/oom/tree/kubernetes/aai/charts/aai-traversal/templates/job.yaml#n42

      spec:      initContainers:
          {{ if eq .Values.global.aafEnabled true }}
          - --container-name
          - aaf-locate
          {{ end }}
      
      tested sdnc via  sudo ./cd.sh -b master -e onap -p false -a false -t robot -x 1 -z false -f false -s 600 -c false -d true -w false -r false
      
      where dmaap, consul and sdc are raised first via dev0.yaml and sdnc is in dev1.yaml
      
      Use for any containers stuck at the 0/1 Init:0/1 stage  - these are likely waiting on dependent containers
      check the --container-name kv pair in StatefulSet/Deployment.yaml:spec:intiContainers:args
      or the corresponding defined chart/container names in values.yaml:config:
      106 sets in 87 files
       
      overall order
      aaf<-aai
      aaf<-oof
      music<-oof
      dmaap<-aai
      dmaap<-pomba
      dmaap<-sdnc
      consul<-sdnc
      sdc<-sdnc
      consul<-dcaegen2
      msb<-dcaegen2
       
      order
      dmaap, aaf, msb, consul, dcaegen2, aai, oof, sdc, sdnc, pomba
       
       
      valid sets of pods
      aaf
      aai, dmaap, aaf
      dcaegen2, consul, msb
      oof, aaf, music
      pomba, dmaap
      sdnc, consul, sdc
      ..the rest can be singular
       
      aaf
        aaf-cm
          aaf-locate
        aaf-fs
          aaf-locate
        aaf-gui
          aaf-cm
        aaf-hello
          aaf-locate
        aaf-locate
          aaf-service
        aaf-oauth
          aaf-locate
        aaf-service
          aaf-cs
        aaf-sms
          aaf-sms-quorumclient (via job)
          aaf-sms-vault
          aaf-sms-vault-backend
       
      aai
        aai
          aai-resources
          aai-traversal
          aai-graphadmin
        aai-champ
          aai-cassandra
        aai-graphadmin
          aai-cassandra
        aai-resources
          aai-cassandra
        aai-sparky-be
          aai-elasticsearch
          aai-search-data
          aai
        aai-spike
          message-router-kafka
        aai-traversal
           aai
           aai-cassandra
           aaf-locate (conditional)
       
      appc
        appc
          mariadb-galera
        appc-ansible-server
          appc
       
      clamp
        clamp
          mariadb
        clamp-dash-kibana
          clamp-dash-es
        clamp-dash-logstash
          clamp-dash-es
       
      common
        controller-blueprints
          mariadb-galera
        mongo
          *-nfs-provisioner
        mysql
          *-nfs-provisioner
        dgbuilder
        network-name-gen
          mariadb-galera
       
      dcaegen2
        dcae-bootstrap
          dcae-cloudify-manager
          consul-server
          msb-discovery
          kube2msb
       
      dep-health-init
         hbase
       
      dmaap
         dmaap-bus-controller
           postgres
         dmaap-dr-node
           dmaap-dr-prov
         dmaap-dr-prov
           mariadb
         message-router
           kafka
           zookeeper
         message-router-kafka
           zookeeper
      log
        log-kibana
          log-elasticsearch
        log-logstash
          log-elasticsearch
       
      msb
        kube2msb
          msb-discovery
        msb-discovery
          msb-consul
        msb-eag
          msb-discovery
        msb-iag
          msb-discovery
       
      music
        music-cassandra
        music-tomcat
          zookeeper
       
      oof
        oof-has-api
          oof-has-controller
          aaf-service
        oof-has-controller
          music-tomcat
          aaf-sms
        oof-has-data
          music-tomcat
        oof-has-reservation
          music-tomcat
        oof-has-service
          music-tomcat
       
      policy
        policy
          mariadb
        brmsgw
          pap
        drools
          mariadb
          nexus
        pdb
          pap
       
      pomba
        pomba-contextaggregator
          message-router
        pomba-kibana
          pomba-elasticsearch
        pomba-data-router
          pomba-search-data
        pomba-search-data
          pomba-elasticsearch
       
      portal
        portal-widget
          portal-db
        portal-sdk
          portal-db
       
      sdc
        sdc-dcae-be
          common.name
          sdc-be
        sdc-dcae-dt
          sdc-dcae-be
        sdc-dcae-fe
          sdc-dcae-be
        sdc-dcae-tosca-lab
          sdc-dcae-be
        sdc-fe
          sdc-kb
        sdc-wfd-fe
          sdc-wfd-be
       
      sdnc
        sdnc
          mysql
        sdnc-ansible-server
          sdnc
        dmaap-listener
          mysql
          sdnc
          message-router
        sdnc-portal
          mysql / sdnc-db
          sdnc
        sdnc-prom
          sdnc
          consul
        ueb-listener
          mysql
          sdnc
          sdc-be
          message-router
       
      so
        so
          mariadb
        so-bpmn-infra
          mariadb
        so-catalog-db-adapter
          mariadb
        so-openstack-adapter
          mariadb
        so-request-db-adapter
          mariadb
        so-sdc-adapter
          mariadb
        so-sdc-controller
          mariadb
        so-vfc-adapter
          mariadb
       
      vfc
        vfc-catalog
          vfc-db
        vfc-ems-driver
          mariadb // commented
        vfc-generic-vnfm-driver
          mariadb // commented
        vfc-hauwei-vnfm-driver
          mariadb // commented
        vfc-juju-vnfm-driver
          mariadb // commented
        vfc-multivim-proxy
          mariadb // commented
         vfc-nokia-vnfm-driver
          mariadb // commented
         vfc-nokia-v2vnfm-driver
          mariadb // commented
        vfc-nslcm
          vfc-db
        vfc-vnfmgr
          vfc-db
        vfc-resmgr
          mariadb // commented
        vfc-workflow
          mariadb // commented
        vfc-workflow-engine
          mariadb // commented
        vfc-vnflcm
          vfc-db
        vfc-vnfres
          vfc-db
        vfc-zte-sdnc-driver
          mariadb // commented
        vfc-zte-vnfm-driver
          mariadb // commented
       
      vid
        vid
          mariadb-galera
      vnfsdk
        postgres
      

            pau2882 pau2882
            michaelobrien michaelobrien
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: