Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Couchbase access for public MATS apps #18

Open
8 tasks
randytpierce opened this issue Mar 8, 2023 · 8 comments
Open
8 tasks

Couchbase access for public MATS apps #18

randytpierce opened this issue Mar 8, 2023 · 8 comments
Assignees
Labels
scorecard scorecard work

Comments

@randytpierce
Copy link
Collaborator

randytpierce commented Mar 8, 2023

The scorecard app needs to write to the Couchbase SCORECARD collection. Currently, our Couchbase cluster is deployed on our internal network. This leaves us wondering how we will make the scorecard app publicly available on https://gsl.noaa.gov/mats/.

It seems like we can either:

  1. Deploy the Couchbase cluster into the DMZ and let the scorecard app have limited write permissions. (preferred)
  2. Deploy some other Couchbase cluster in AWS(?) and let the scorecard app have limited write permissions. (It's not clear how this is different than 1. other than AWS being involved)
  3. Have some kind of firewall hole from the app in the DMZ to our internal Couchbase cluster. (This seems problematic from a security perspective)

We need more discussion with ITS on this.

Tasks

  1. scorecard
    randytpierce
  2. scorecard
    gopa-noaa
  3. scorecard
    ian-noaa
@randytpierce randytpierce added the scorecard scorecard work label Mar 8, 2023
@randytpierce randytpierce self-assigned this Mar 8, 2023
@ian-noaa ian-noaa changed the title Public writable Couchbase? Couchbase access for public MATS apps Mar 9, 2023
@randytpierce
Copy link
Collaborator Author

I spoke with Shannon today about this problem. Shannon said that if we made a readonly user that did the reading and a special write only user that could ONLY write the SCORECARD collection, nothing else, then we could probably put the CB cluster and the vxDataProcessor into the DMZ. I can see how that would work.

@mollybsmith-noaa
Copy link

mollybsmith-noaa commented Mar 9, 2023 via email

@randytpierce
Copy link
Collaborator Author

randytpierce commented Mar 10, 2023 via email

@randytpierce
Copy link
Collaborator Author

The AWS cluster might even be better, actually, just expensive.

@gopa-noaa
Copy link

Just to be clear, we are saying scorecard app, vxDataProcessor and Couchbase cluster all will be in the DMZ, right ?
Please pardon my lack of knowledge of production system, may be this issue has already been addressed, how would the cluster be populated with data from ingest ?

@randytpierce
Copy link
Collaborator Author

randytpierce commented Mar 10, 2023 via email

@ian-noaa
Copy link
Collaborator

During the dev meeting yesterday there was some uncertainty around if we would need to handle replicating scorecardDocument's from the database in the DMZ to the internal database. (and vice-versa) The scorecardDocuments are thus far the only part of the system that MATS needs write access for.

We could simply let the scorecard documents differ from the dev systems to the production system. This may be ideal as it would encourage production traffic to the production instance while keeping the internal systems more open for development.

The rest of the data would be replicated from the internal database cluster into production.

Our discussion yesterday covered the other components of the application - ingest would remain internal and write to an internal couchbase, we would need VMs for MATS to run on, a large-ish VM for the scorecard data processor to run on, and could either buy more physical hardware to deploy couchbase on in the DMZ or try running couchbase on top of VMs in the DMZ.

@bonnystrong wanted to track this issue.

@randytpierce
Copy link
Collaborator Author

created task list

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scorecard scorecard work
Projects
None yet
Development

No branches or pull requests

4 participants