Fork me on GitHub
#datomic
<
2018-06-25
>
maleghast10:06:23

I have a couple of n00b questions about datomic cloud... 1). Is there any way to develop an app that uses Datomic, offline, that will be deployable without change(s) into an environment that uses Datomic Cloud, i.e. is there any way to create an offline version of Datomic Cloud with say Docker and things like DynamoLocal and FakeS3? 2). Has anyone out there got a deployment model where their apps are deployed in containers into K8s / DC-OS (or similar) and they connect to Datomic Cloud as an off-cluster resource, and if so, is it a trivial setup or is it fraught with peril..?

nilpunning17:06:31

Hello! I have two points: 1. Thank you for Datomic Cloud, it is a massive achievement. 2. I think there are serious flaws on this page: https://docs.datomic.com/cloud/releases.html The CloudFormation templates listed for Production are not in fact the Production templates. They are the the Production Compute nested templates. The parent Production template link is not listed on the release page. I was ultimately able to find the Production template here: https://aws.amazon.com/marketplace/pp/prodview-otb76awcrb7aa. I ran into this confusion when trying to upgrade a Solo deployment to a Production deployment while following these directions: https://docs.datomic.com/cloud/operation/upgrading.html#upgrading-solo-to-production. You may want to rename the Production links on the Releases page to Compute and add the correct Production template links.

marshall17:06:55

@nilpunning As indicated here: https://docs.datomic.com/cloud/operation/upgrading.html#first-upgrade the preferred method for maintaining an ongoing Datomic Cloud system is with separate compute and storage templates. The master template that launches 2 nested templates is a necessity of AWS Marketplace requiring ‘single click’ delivery

marshall17:06:10

For most ongoing systems, we would expect (and recommend) that they be run as separate stacks

nilpunning17:06:36

I see that now, thank you for pointing that out. It says that also on the Why Multiple Stacks section.

folcon18:06:50

Just wondering if there’s any info around dealing with other aws resources from within ions such as s3? I’m trying to work out how I should be handling credentials, Stu mentions the systems-manager-paramstore in the ion-event-example, but looking at it, I’m not sure I should be storing the aws access and secret keys there? Or is there some other way to do it?

stuarthalloway19:06:19

@folcon give your instance role the permissions it needs to do the things you want

folcon19:06:17

ok, so I’m doing what you described in the video, and building this in the repl, and I’m using amazonica.aws.s3, because as far as I’m aware, ions itself has no way of giving me s3. And before I manually handed the credentials in, I was just getting access denied errors.

folcon19:06:40

Is it the case that this will fail in the repl, but will work in the lambda?

folcon19:06:59

Ok, completely misunderstood, just googled instance role permissions and found some docs, no idea how this works, so time to start reading 😃

folcon19:06:14

Not sure if there’s any info about how to use this in the repl though, would a sensible idea be to use envvars in the repl?

stuarthalloway19:06:58

@folcon sure, at the REPL you can do whatever you feel safe doing on your local machine

stuarthalloway19:06:20

@folcon we prolly need more docs here 🙂

folcon19:06:26

Ok, and I expect that once I’ve added more the role permissions to the lambda, then they’ll appear as envvars as well? Or perhaps I need to poke the context?

folcon19:06:03

Thanks for your help though, appreciate it, I’ve been trying ions out since yesterday, hit a few stumbling blocks where the docs were confusing, but all in all it’s been a fairly good experience up to this point 😃. Really appreciate what you’ve achieved!

sparkofreason22:06:10

@maleghast 1. I don't believe there is any local solution yet. Hopefully this is forthcoming soon. 2. I've successfully connected to Datomic Cloud from containers running under ECS, but in the "apps" VPC created by the Cloud install. Also did the same setting up a VPC endpoint service to access Datomic Cloud from the VPC running my EKS cluster. Basically no problems. Note that you must be running the production topology to use the VPC endpoint service.

maleghast22:06:19

@dave.dixon - Thanks very much; this is very encouraging!