Skip to content

Conversation

@maltesander
Copy link
Member

@maltesander maltesander commented Nov 6, 2022

Description

  • Added TLS encryption
  • Added TLS Authenication

Currently CRD looks like:

apiVersion: druid.stackable.tech/v1alpha1
kind: DruidCluster
metadata:
  name: derby-druid
spec:
  version: 24.0.0-stackable0.1.0
  clusterConfig:
    authentication:
      tls:
        authenticationClass: druid-mtls-authentication-class
    deepStorage:
      hdfs:
        configMapName: druid-hdfs
        directory: /druid
    metadataStorageDatabase:
      dbType: derby
      connString: jdbc:derby://localhost:1527/var/druid/metadata.db;create=true
      host: localhost
      port: 1527
    tls:
      secretClass: tls
    zookeeperConfigMapName: druid-znode

Not quite happy for the authentication part, basically the same information is repeated in the referenced AuthenticationClass.

Still mergeable for now, we need to come up with a better way first.

Test: https://ci.stackable.tech/view/02%20Operator%20Tests%20(custom)/job/druid-operator-it-custom/37/

fixes #6

Review Checklist

  • Code contains useful comments
  • CRD change approved (or not applicable)
  • (Integration-)Test cases added (or not applicable)
  • Documentation added (or not applicable)
  • Changelog updated (or not applicable)
  • Cargo.toml only contains references to git tags (not specific commits or branches)
  • Helm chart can be installed and deployed operator works (or not applicable)

Once the review is done, comment bors r+ (or bors merge) to merge. Further information

@maltesander maltesander requested a review from a team November 6, 2022 15:26
@maltesander maltesander self-assigned this Nov 6, 2022
…ation

# Conflicts:
#	CHANGELOG.md
#	rust/crd/src/lib.rs
#	rust/operator-binary/src/druid_controller.rs
@maltesander maltesander added release-note Denotes a PR that will be considered when it comes time to generate release notes. release-note/action-required Denotes a PR that introduces potentially breaking changes that require user action. labels Nov 7, 2022
@razvan razvan requested review from razvan and vsupalov and removed request for a team November 10, 2022 08:51
Copy link
Member

@razvan razvan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is lot going on in here but it look very good in general

  1. The new example/tls is missing the Zookeeper resources
  2. Some additional (unit and integration) tests would help.
  3. The docs could be more clear what the difference between setting tls and authentication is.
    I haven't run the getting started code.

@maltesander maltesander requested a review from razvan November 11, 2022 14:42
Copy link
Member

@razvan razvan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm.

@maltesander
Copy link
Member Author

Co-authored-by: Razvan-Daniel Mihai <84674+razvan@users.noreply.github.com>
@maltesander
Copy link
Member Author

bors merge

bors bot pushed a commit that referenced this pull request Nov 14, 2022
# Description

- Added TLS encryption
- Added TLS Authenication

Currently CRD looks like:
```
apiVersion: druid.stackable.tech/v1alpha1
kind: DruidCluster
metadata:
  name: derby-druid
spec:
  version: 24.0.0-stackable0.1.0
  clusterConfig:
    authentication:
      tls:
        authenticationClass: druid-mtls-authentication-class
    deepStorage:
      hdfs:
        configMapName: druid-hdfs
        directory: /druid
    metadataStorageDatabase:
      dbType: derby
      connString: jdbc:derby://localhost:1527/var/druid/metadata.db;create=true
      host: localhost
      port: 1527
    tls:
      secretClass: tls
    zookeeperConfigMapName: druid-znode
```

Not quite happy for the authentication part, basically the same information is repeated in the referenced AuthenticationClass. 

Still mergeable for now, we need to come up with a better way first.

Test: https://ci.stackable.tech/view/02%20Operator%20Tests%20(custom)/job/druid-operator-it-custom/37/

fixes #6



Co-authored-by: Malte Sander <malte.sander.it@gmail.com>
@bors
Copy link
Contributor

bors bot commented Nov 14, 2022

Pull request successfully merged into main.

Build succeeded:

@bors bors bot changed the title Support tls encryption and authentication [Merged by Bors] - Support tls encryption and authentication Nov 14, 2022
@bors bors bot closed this Nov 14, 2022
@bors bors bot deleted the support_tls_authentication branch November 14, 2022 09:25
bors bot pushed a commit that referenced this pull request Nov 14, 2022
# Description

This doesn't add or change any functionality.

Fixes #335 

Required for #306 

This is based on #333 and has to be merged after that.

:green_circle: CI: https://ci.stackable.tech/view/02%20Operator%20Tests%20(custom)/job/druid-operator-it-custom/39/

## Review Checklist

- [x] Code contains useful comments
- [x] CRD change approved (or not applicable)
- [x] (Integration-)Test cases added (or not applicable)
- [x] Documentation added (or not applicable)
- [x] Changelog updated (or not applicable)
- [x] Cargo.toml only contains references to git tags (not specific commits or branches)
- [x] Helm chart can be installed and deployed operator works (or not applicable)

Once the review is done, comment `bors r+` (or `bors merge`) to merge. [Further information](https://bors.tech/documentation/getting-started/#reviewing-pull-requests)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release-note/action-required Denotes a PR that introduces potentially breaking changes that require user action. release-note Denotes a PR that will be considered when it comes time to generate release notes.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support TLS authentication & encryption with provided certificates

3 participants