[DCAE] Does pnda cli supports only keystone v2.0


Bharath Thiruveedula
 

Dear DCAE team,

I am trying to bring PNDA using OOM (master). I face issues while pnda-cli trying to fetch tokens from keystone. Seems like URL formed is of keystone v2.0 version. Can I assume it won't support keystone v3 as of now?

As per the PNDA demo we need to setup logstash in between PNDA and DCAE service components. But I didn't any instruction to set up. Mainly I am looking for configuration that takes input and output topic name of DMAAP. Can you give some pointers regarding this?


Best Regards
Bharath T


Donald Hunter
 

Hi Bharath,

At the moment, the helm template for dcae-pnda-bootstrap hard-codes KEYSTONE_AUTH_VERSION: '2' even though the pnda-cli installer does support v3:

https://github.com/pndaproject/pnda-cli/blob/develop/cli/backend_heat_templates.py#L310-L317 

You could try modifying oom/kubernetes/pnda/charts/dcae-pnda-bootstrap/resources/inputs/pnda_env.yaml to change KEYSTONE_AUTH_VERSION to '3' then rebuilding the helm templates.

I will reply to your logstash question in a separate message – I need to gather some info first.

Cheers,
Donald.


Donald Hunter
 

Hi Bharath,

The DMaaP topic is unauthenticated.VES_MEASUREMENT_OUTPUT and the PNDA topic is ves.avro. The logstash configuration would look like this:

input {
  kafka {
    topics => ["unauthenticated.VES_MEASUREMENT_OUTPUT"]
    bootstrap_servers => "dmaap-host:9092"
  }
}

filter {
  mutate {
    add_field => {
      "src" => "ves"
      "host_ip" => "onap.demon"
    }
    rename => { "message" => "rawdata"}
  }
  ruby {
    # Convert the Logstash timestamp to a milliseconds timestamp integer
    # You can use whatever makes sense to you as long as the timestamp is a valid timestamp integer in milliseconds
    code => "event.set('timestamp', (event.get('@timestamp').to_f * 1000).to_i)"
  }
}

output {
  kafka {
    topic_id => "ves.avro"
    bootstrap_servers => "pnda-kafka-host:9094"
    value_serializer => "org.apache.kafka.common.serialization.ByteArraySerializer"
    codec => pnda-avro{
      schema_uri => "dataplatform-raw.avsc"
    }
  }
  stdout {
    codec => "json"
  }
}


Note that this will also display the messages to stdout, which is helpful for debugging. You can remove the stdout section if you don't want that.

Cheers,
Donald.