| (window.webpackJsonp=window.webpackJsonp||[]).push([[9],{"./src/documents/Hook/HookCouchbase.md":function(e,t,a){"use strict";a.r(t),a.d(t,"default",(function(){return m}));var n=a("../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js"),l=(a("../node_modules/react/index.js"),a("../node_modules/@mdx-js/react/dist/esm.js")),r=(a("./theme/styles/styled-colors.js"),["components"]),d={};function m(e){var t=e.components,a=Object(n.a)(e,r);return Object(l.mdx)("wrapper",Object.assign({},d,a,{components:t,mdxType:"MDXLayout"}),Object(l.mdx)("h1",{id:"apache-atlas-couchbase-bridge"},"Apache Atlas Couchbase bridge"),Object(l.mdx)("p",null,"This bridge connects to a Couchbase cluster using DCP protocol\nand performs real-time analysis and metadata extraction from stored on the cluster documents.\nThe extracted metadata is then sent to Atlas via its REST API"),Object(l.mdx)("h2",{id:"configuration"},"Configuration"),Object(l.mdx)("p",null,"The bridge uses environment variables for configuration."),Object(l.mdx)("h3",{id:"atlas-rest-api"},"Atlas REST API"),Object(l.mdx)("table",null,Object(l.mdx)("thead",{parentName:"table"},Object(l.mdx)("tr",{parentName:"thead"},Object(l.mdx)("th",{parentName:"tr",align:null},"Environment variable"),Object(l.mdx)("th",{parentName:"tr",align:null},"Description"),Object(l.mdx)("th",{parentName:"tr",align:null},"Default Value"))),Object(l.mdx)("tbody",{parentName:"table"},Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"ATLAS_URL"),Object(l.mdx)("td",{parentName:"tr",align:null},"Atlas REST API url"),Object(l.mdx)("td",{parentName:"tr",align:null},'"http://localhost:21000"')),Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"ATLAS_USERNAME"),Object(l.mdx)("td",{parentName:"tr",align:null},"Atlas REST API username"),Object(l.mdx)("td",{parentName:"tr",align:null},'"admin"')),Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"ATLAS_PASSWORD"),Object(l.mdx)("td",{parentName:"tr",align:null},"Atlas REST API password"),Object(l.mdx)("td",{parentName:"tr",align:null},'"admin"')))),Object(l.mdx)("h3",{id:"couchbase-dcp-connection"},"Couchbase DCP connection"),Object(l.mdx)("table",null,Object(l.mdx)("thead",{parentName:"table"},Object(l.mdx)("tr",{parentName:"thead"},Object(l.mdx)("th",{parentName:"tr",align:null},"Environment variable"),Object(l.mdx)("th",{parentName:"tr",align:null},"Description"),Object(l.mdx)("th",{parentName:"tr",align:null},"Default Value"))),Object(l.mdx)("tbody",{parentName:"table"},Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"CB_CLUSTER"),Object(l.mdx)("td",{parentName:"tr",align:null},"Couchbase Cluster connection string"),Object(l.mdx)("td",{parentName:"tr",align:null},'"couchbase://localhost"')),Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"CB_USERNAME"),Object(l.mdx)("td",{parentName:"tr",align:null},"Couchbase Cluster username"),Object(l.mdx)("td",{parentName:"tr",align:null},'"Administrator"')),Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"CB_PASSWORD"),Object(l.mdx)("td",{parentName:"tr",align:null},"Couchbase Cluster password"),Object(l.mdx)("td",{parentName:"tr",align:null},'"password"')),Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"CB_ENABLE_TLS"),Object(l.mdx)("td",{parentName:"tr",align:null},"Use TLS"),Object(l.mdx)("td",{parentName:"tr",align:null},"false")),Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"CB_BUCKET"),Object(l.mdx)("td",{parentName:"tr",align:null},"Couchbase bucket to monitor"),Object(l.mdx)("td",{parentName:"tr",align:null},'"default"')),Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"CB_COLLECTIONS"),Object(l.mdx)("td",{parentName:"tr",align:null},"Comma-separated list of collections to monitor with each collection listed as {scope}.{collection}"),Object(l.mdx)("td",{parentName:"tr",align:null})),Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"DCP_PORT"),Object(l.mdx)("td",{parentName:"tr",align:null},"DCP port to use"),Object(l.mdx)("td",{parentName:"tr",align:null},"11210")),Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"DCP_FIELD_THRESHOLD"),Object(l.mdx)("td",{parentName:"tr",align:null},"A threshold that indicates in what percentage of analyzed messages per collection a field must appear before it is sent to Atlas"),Object(l.mdx)("td",{parentName:"tr",align:null},"0")),Object(l.mdx)("tr",{parentName:"tbody"},Object(l.mdx)("td",{parentName:"tr",align:null},"DCP_SAMPLE_RATIO"),Object(l.mdx)("td",{parentName:"tr",align:null},"Percentage of DCP messages to be analyzed in form of a short between 0 and 1."),Object(l.mdx)("td",{parentName:"tr",align:null},"1")))),Object(l.mdx)("h2",{id:"running-the-bridge"},"Running the bridge"),Object(l.mdx)("p",null,"In the following commands, replace ",Object(l.mdx)("inlineCode",{parentName:"p"},"<VARNAME>")," and ",Object(l.mdx)("inlineCode",{parentName:"p"},"<version>")," with appropriate values."),Object(l.mdx)("ul",null,Object(l.mdx)("li",{parentName:"ul"},"Set environment variables using ",Object(l.mdx)("inlineCode",{parentName:"li"},"export <VARNAME>=...")," or prefix them before the next command."),Object(l.mdx)("li",{parentName:"ul"},"Run ",Object(l.mdx)("inlineCode",{parentName:"li"},"java -cp couchbase-bridge-<version>.jar com.couchbase.atlas.connector.CouchbaseHook"),"."),Object(l.mdx)("li",{parentName:"ul"},"Verify that appropriate ",Object(l.mdx)("inlineCode",{parentName:"li"},"couchbase_cluster"),", ",Object(l.mdx)("inlineCode",{parentName:"li"},"couchbase_bucket")," objects were created on your Atlas cluster."),Object(l.mdx)("li",{parentName:"ul"},"After having some documents updated on the Couchbase cluster, verify that appropriate ",Object(l.mdx)("inlineCode",{parentName:"li"},"couchbase_scope"),", ",Object(l.mdx)("inlineCode",{parentName:"li"},"couchbase_collection"),", and ",Object(l.mdx)("inlineCode",{parentName:"li"},"couchbase_field")," objects were created on your Atlas cluster.")))}m&&m===Object(m)&&Object.isExtensible(m)&&Object.defineProperty(m,"__filemeta",{enumerable:!0,configurable:!0,value:{name:"MDXContent",filename:"src/documents/Hook/HookCouchbase.md"}}),m.isMDXComponent=!0},"./theme/styles/styled-colors.js":function(e,t,a){"use strict";var n=a("../node_modules/react-syntax-highlighter/dist/esm/styles/hljs/dark.js");n.a.hljs.color="#37bb9b",t.a=n.a}}]); |