{"id":1586,"date":"2014-12-16T19:26:41","date_gmt":"2014-12-16T19:26:41","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=1586"},"modified":"2017-03-01T07:38:58","modified_gmt":"2017-03-01T15:38:58","slug":"create-couchbase-cluster-with-ansible","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/ko\/create-couchbase-cluster-with-ansible\/","title":{"rendered":"Ansible\ub85c Couchbase \ud074\ub7ec\uc2a4\ud130 \ub9cc\ub4e4\uae30"},"content":{"rendered":"<div>\n<div>\n<p style=\"margin-bottom: 0px; font-family: ff-kievit-web, 'MS UI Gothic', 'MS PGothic', Osaka, Batang, Georgia, 'Times New Roman', Times, sans-serif; font-size: 16px;\"><em style=\"line-height: 23px; font-size: 1em; font-family: ff-meta-serif-web-pro-1, ff-meta-serif-web-pro-2, Georgia, 'Times New Roman', Times, serif;\">[This blog was syndicated from https:\/\/blog.grallandco.com]<\/em><\/p>\n<div>\u00a0<\/div>\n<\/div>\n<\/div>\n<h2>Introduction<\/h2>\n<div>\u00a0<\/div>\n<div>When I was looking for a more effective way to create my cluster I asked some sysadmins which tools I should use to do it. The answer I got during <a href=\"https:\/\/www.netways.de\/osdc\" target=\"_blank\">OSDC<\/a> was not <a href=\"https:\/\/puppetlabs.com\/\" target=\"_blank\">Puppet<\/a>, nor <a href=\"https:\/\/www.opscode.com\/chef\/\" target=\"_blank\">Chef<\/a>, but was <a href=\"https:\/\/ansible.cc\/\" target=\"_blank\">Ansible<\/a>.<\/div>\n<div>\u00a0<\/div>\n<div>This article shows you how you can easily configure and create a Couchbase cluster deployed and many linux boxes&#8230;and the only thing you need on these boxes is an SSH Server!<\/div>\n<div>\u00a0<\/div>\n<div>Thanks to <a href=\"https:\/\/jpmens.net\/\">Jan-Piet Mens<\/a> that was one of the person that convinced me to use Ansible and answered questions I had about Ansible.<\/div>\n<div>\u00a0<\/div>\n<div>You can watch the demonstration below, and\/or look at all the details in the next paragraph.<\/div>\n<div>\u00a0<\/div>\n<div><iframe loading=\"lazy\" allowfullscreen=\"\" frameborder=\"0\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/COb6y89xcYY\" width=\"560\"><\/iframe><\/div>\n<div>\u00a0<\/div>\n<div>\u00a0<\/div>\n<div>\u00a0<\/div>\n<h2>Ansible<\/h2>\n<div>\n<div>Ansible is an open-source software that allows administrator to configure and manage many computers over SSH.<\/div>\n<div>\u00a0<\/div>\n<div>I won&#39;t go in all the details about the installation, just follow the steps documented in the Getting Started Guide. As you can see from this guide, you just need Python and few other libraries and clone Ansible project from Github. So I am expecting that you have Ansible working with your various servers on which you want to deploy Couchbase.<\/div>\n<div>\u00a0<\/div>\n<div>Also for this first scripts I am using root on my server to do all the operations. So be sure you have register the root ssh keys to your administration server, from where you are running the Ansible scripts.<\/div>\n<div>\u00a0<\/div>\n<h3>Create a Couchbase Cluster<\/h3>\n<div>\n<div>So before going into the details of the Ansible script it is interesting to explain how you create a Couchbase Cluster. So here are the 5 steps to create and configure a cluster:<\/div>\n<div>\u00a0<\/div>\n<ol>\n<li>Install Couchbase on each nodes of the cluster, as documented <a href=\"https:\/\/www.couchbase.com\/docs\/couchbase-manual-2.0\/couchbase-getting-started-install-ubuntu.html\" target=\"_blank\">here<\/a>.<\/li>\n<li>Take one of the node and &#8220;initialize&#8221; the cluster, \u00a0using <a href=\"https:\/\/www.couchbase.com\/docs\/couchbase-manual-2.0\/couchbase-cli-other-examples.html\" target=\"_blank\">cluster-init<\/a> command.<\/li>\n<li>Add the other nodes to the cluster, using <a href=\"https:\/\/www.couchbase.com\/docs\/couchbase-manual-2.0\/couchbase-cli-other-examples.html\" target=\"_blank\">server-add<\/a> command.<\/li>\n<li>Rebalance, using <a href=\"https:\/\/www.couchbase.com\/docs\/couchbase-manual-2.0\/couchbase-cli-other-examples.html\" target=\"_blank\">rebalance<\/a> command.\u00a0<\/li>\n<li>Create a Bucket, using <a href=\"https:\/\/www.couchbase.com\/docs\/couchbase-manual-2.0\/couchbase-cli-other-examples.html\" target=\"_blank\">bucket-create<\/a> command. \u00a0\u00a0<\/li>\n<\/ol>\n<div>So the goal now is to create an Ansible Playbook that executes these steps for you.<\/div>\n<\/div>\n<\/div>\n<div>\u00a0<\/div>\n<div>\n<h6>Ansible Playbook for Couchbase<\/h6>\n<div><span style=\"line-height: 1;\">The first think you need is to have the list of hosts you want to target, so I have create a <a href=\"https:\/\/github.com\/tgrall\/couchbase-ansible-playbook\/blob\/master\/hosts\" target=\"_blank\">hosts file<\/a> that contains all my server organized in 2 groups:<\/span><\/div>\n<div>\u00a0<\/div>\n<\/div>\n<div>\n<div class=\"geshifilter\">\n<div class=\"text geshifilter-text\" style=\"font-family:monospace;\">[couchbase-main]<br \/>vm1.grallandco.com<\/p>\n<p>[couchbase-nodes]<br \/>vm2.grallandco.com<br \/>vm3.grallandco.com<\/div>\n<\/div>\n<\/div>\n<div>The group [couchbase-main] group is just one of the node that will drive the installation and configuration, as you probably already know, Couchbase does not have any master&#8230; All nodes in the cluster are identical.<\/div>\n<div>\u00a0<\/div>\n<div>To ease the configuration of the cluster, I have create another file that contains all parameters that must be sent to all the various commands. This file is located in the <a href=\"https:\/\/github.com\/tgrall\/couchbase-ansible-playbook\/blob\/master\/group_vars\/all\" target=\"_blank\">group_vars\/all<\/a> see the section <a href=\"https:\/\/ansible.cc\/docs\/patterns.html#splitting-out-host-and-group-specific-data\" target=\"_blank\">Splitting Out Host and Group Specific Data<\/a> in the documentation.<\/div>\n<div>\u00a0<\/div>\n<div>\n<div class=\"geshifilter\">\n<div class=\"text geshifilter-text\" style=\"font-family:monospace;\"># Adminisrator user and password<br \/>admin_user: Administrator<br \/>admin_password: password<\/p>\n<p># ram quota for the cluster<br \/>cluster_ram_quota: 1024<\/p>\n<p># bucket and replicas<br \/>bucket_name: ansible<br \/>bucket_ram_quota: 512<br \/>num_replicas: 2<\/div>\n<\/div>\n<\/div>\n<div>\u00a0<\/div>\n<div>\u00a0<\/div>\n<div>\n<div>Use this file to configure your cluster.<\/div>\n<div>\u00a0<\/div>\n<div>Let&#39;s describe the <a href=\"https:\/\/github.com\/tgrall\/couchbase-ansible-playbook\/blob\/master\/couchbase.yml\" target=\"_blank\">playbook file<\/a> :<\/div>\n<div>\u00a0<\/div>\n<\/div>\n<div>\n<div class=\"geshifilter\">\n<div class=\"text geshifilter-text\" style=\"font-family:monospace;\">&#8211; name: Couchbase Installation<br \/>\u00a0 hosts: all<br \/>\u00a0 user: root<br \/>\u00a0 \u00a0<br \/>\u00a0 tasks:<\/p>\n<p>\u00a0 &#8211; name: download Couchbase package<br \/>\u00a0 \u00a0 get_url: url=https:\/\/packages.couchbase.com\/releases\/2.0.1\/couchbase-server-enterprise_x86_64_2.0.1.deb dest=~\/.<br \/>\u00a0<br \/>\u00a0 &#8211; name: Install dependencies<br \/>\u00a0 \u00a0 apt: pkg=libssl0.9.8 state=present<\/p>\n<p>\u00a0 &#8211; name: Install Couchbase .deb file on all machines<br \/>\u00a0 \u00a0 shell: dpkg -i ~\/couchbase-server-enterprise_x86_64_2.0.1.deb<\/div>\n<\/div>\n<\/div>\n<div>\u00a0<\/div>\n<div>\u00a0<\/div>\n<div>\n<div>As expected, the installation has to be done on <strong>all<\/strong> servers as <strong>root<\/strong> then we need to execute 3 tasks:\u00a0<\/div>\n<ol>\n<li>Download the product, the get_url command will only download the file if not already present<\/li>\n<li>Install the dependencies with the apt command, the state=present allows the system to only install this package if not already present<\/li>\n<li>Install Couchbase with a simple shell command. (here I am not checking if Couchbase is already installed)<\/li>\n<\/ol>\n<div>So we have now installed Couchbase on all the nodes. Let&#39;s now configure the first node and add the others:\u00a0<\/div>\n<div>\u00a0<\/div>\n<div>\n<div class=\"geshifilter\">\n<div class=\"text geshifilter-text\" style=\"font-family:monospace;\">&#8211; name: Initialize the cluster and add the nodes to the cluster<br \/>\u00a0 hosts: couchbase-main<br \/>\u00a0 user: root <\/p>\n<p>\u00a0 tasks:<br \/>\u00a0 &#8211; name: Configure main node<br \/>\u00a0 \u00a0 shell: \/opt\/couchbase\/bin\/couchbase-cli cluster-init -c 127.0.0.1:8091 \u00a0&#8211;cluster-init-username=${admin_user} &#8211;cluster-init-password=${admin_password} &#8211;cluster-init-port=8091 &#8211;cluster-init-ramsize=${cluster_ram_quota} <\/p>\n<p>\u00a0 &#8211; name: Create shell script for configuring main node<br \/>\u00a0 \u00a0 action: template src=couchbase-add-node.j2 dest=\/tmp\/addnodes.sh mode=750<br \/>\u00a0 <br \/>\u00a0 &#8211; name: Launch config script<br \/>\u00a0 \u00a0 action: shell \/tmp\/addnodes.sh<br \/>\u00a0 <br \/>\u00a0 &#8211; name: Rebalance the cluster<br \/>\u00a0 \u00a0 shell: \/opt\/couchbase\/bin\/couchbase-cli rebalance -c 127.0.0.1:8091 -u ${admin_user} -p ${admin_password} \u00a0 \u00a0 \u00a0<br \/>\u00a0 <br \/>\u00a0 &#8211; name: create bucket ${bucket_name} with ${num_replicas} replicas<br \/>\u00a0 \u00a0 shell: \/opt\/couchbase\/bin\/couchbase-cli bucket-create -c 127.0.0.1:8091 &#8211;bucket=${bucket_name} &#8211;bucket-type=couchbase &#8211;bucket-port=11211 &#8211;bucket-ramsize=${bucket_ram_quota} \u00a0&#8211;bucket-replica=${num_replicas} -u ${admin_user} -p ${admin_password}<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div>Now we need to execute specific taks on the &#8220;main&#8221; server:<\/div>\n<ul>\n<li>Initialization of the cluster using the Couchbase CLI, on line 06 and 07<\/li>\n<\/ul>\n<div>\u00a0<\/div>\n<div>Then the system needs to ask all other server to join the cluster. For this the system needs to get the various IP and for each IP address execute the add-server command with the IP address. As far as I know it is not possible to get the IP address from the main playbook YAML file, so I ask the system to generate a shell script to add each node and execute the script.\u00a0<\/div>\n<div>\u00a0<\/div>\n<div>This is done from the line 09 to 13.<\/div>\n<div>\u00a0<\/div>\n<div>To generate the shell script, I use <a href=\"https:\/\/ansible.cc\/docs\/modules.html#template\" target=\"_blank\">Ansible Template<\/a>, the template is available in the <a href=\"https:\/\/github.com\/tgrall\/couchbase-ansible-playbook\/blob\/master\/couchbase-add-node.j2\" target=\"_blank\">couchbase-add-node.j2<\/a> file.\u00a0<\/div>\n<div>\u00a0<\/div>\n<div>\n<div class=\"geshifilter\">\n<div class=\"text geshifilter-text\" style=\"font-family:monospace;\">{% for host in groups[&#8216;couchbase-nodes&#8217;] %}<\/p>\n<p>\u00a0\/opt\/couchbase\/bin\/couchbase-cli server-add -c 127.0.0.1:8091 -u ${admin_user} -p ${admin_password} &#8211;server-add={{ hostvars[host][&#8216;ansible_eth0&#8217;][&#8216;ipv4&#8217;][&#8216;address&#8217;] }}:8091 &#8211;server-add-username=${admin_user} &#8211;server-add-password=${admin_password} \u00a0 <\/p>\n<p>{% endfor %}<\/p><\/div>\n<\/div>\n<\/div>\n<div>\u00a0<\/div>\n<div>\n<div>As you can see this script loop on each server in the [couchbase-nodes] group and use its IP address to add the node to the cluster.\u00a0<\/div>\n<div>\u00a0<\/div>\n<div>Finally the script rebalance the cluster (line 16) and add a new bucket (line 19).<\/div>\n<div>\u00a0<\/div>\n<div>You are now ready to execute the playbook using the following command :\u00a0<\/div>\n<div>\u00a0<\/div>\n<div>\n<div class=\"geshifilter\">\n<div class=\"text geshifilter-text\" style=\"font-family:monospace;\">.\/bin\/ansible-playbook -i .\/couchbase\/hosts .\/couchbase\/couchbase.yml -vv<\/div>\n<\/div>\n<\/div>\n<div>\u00a0<\/div>\n<div>I am adding the -vv parameter to allow you to see more information about what&#39;s happening during the execution of the script.\u00a0<\/div>\n<div>\u00a0<\/div>\n<div>This will execute all the commands described in the playbook, and after few seconds you will have a new cluster ready to be used! You can for example open a browser and go to the Couchase Administration Console and check that your cluster is configured as expected.<\/div>\n<div>\u00a0<\/div>\n<div class=\"rtecenter\"><img decoding=\"async\" alt=\"Couchbase Cluster\" src=\"https:\/\/1.bp.blogspot.com\/-L-3yeJZECwY\/Uaj_PA_aVUI\/AAAAAAAAAcg\/fKBZ47Nhd4M\/s320\/Screen+Shot+2013-05-31+at+9.50.44+PM.png\" style=\"width: 320px; height: 220px;\" \/><\/div>\n<\/div>\n<div>As you can see it is really easy and fast to create a new cluster using Ansible.<\/div>\n<div>\u00a0<\/div>\n<div>I have also create a script to uninstall properly the cluster.. just launch<\/div>\n<div>\u00a0<\/div>\n<div>\u00a0<\/div>\n<div>\n<div class=\"geshifilter\">\n<div class=\"text geshifilter-text\" style=\"font-family:monospace;\">.\/bin\/ansible-playbook -i .\/couchbase\/hosts .\/couchbase\/couchbase-uninstall.yml<\/div>\n<\/div>\n<\/div>\n<div>\u00a0<\/div>\n","protected":false},"excerpt":{"rendered":"<p>[This blog was syndicated from https:\/\/blog.grallandco.com] \u00a0 Introduction \u00a0 When I was looking for a more effective way to create my cluster I asked some sysadmins which tools I should use to do it. The answer I got during OSDC [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1],"tags":[1299,1300],"ppma_author":[8968],"class_list":["post-1586","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-ansible","tag-cluster"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Create a Couchbase Cluster with Ansible - The Couchbase Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/ko\/create-couchbase-cluster-with-ansible\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Create a Couchbase Cluster with Ansible\" \/>\n<meta property=\"og:description\" content=\"[This blog was syndicated from https:\/\/blog.grallandco.com] \u00a0 Introduction \u00a0 When I was looking for a more effective way to create my cluster I asked some sysadmins which tools I should use to do it. The answer I got during OSDC [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/ko\/create-couchbase-cluster-with-ansible\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2014-12-16T19:26:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-03-01T15:38:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2022\/11\/couchbase-nosql-dbaas.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1800\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"The Couchbase Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"The Couchbase Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/\"},\"author\":{\"name\":\"The Couchbase Team\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#\\\/schema\\\/person\\\/764f4a6771ee19bc7af70b70a326fb93\"},\"headline\":\"Create a Couchbase Cluster with Ansible\",\"datePublished\":\"2014-12-16T19:26:41+00:00\",\"dateModified\":\"2017-03-01T15:38:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/\"},\"wordCount\":1092,\"commentCount\":5,\"publisher\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/1\\\/2022\\\/11\\\/couchbase-nosql-dbaas.png\",\"keywords\":[\"Ansible\",\"Cluster\"],\"articleSection\":[\"Uncategorized\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/\",\"name\":\"Create a Couchbase Cluster with Ansible - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/1\\\/2022\\\/11\\\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2014-12-16T19:26:41+00:00\",\"dateModified\":\"2017-03-01T15:38:58+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/1\\\/2022\\\/11\\\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/1\\\/2022\\\/11\\\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/create-couchbase-cluster-with-ansible\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create a Couchbase Cluster with Ansible\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/admin-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#\\\/schema\\\/person\\\/764f4a6771ee19bc7af70b70a326fb93\",\"name\":\"The Couchbase Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b4c18c758421903398e84d6c9560f319f39c665798d7d23e6a6f9dff8a8f984e?s=96&d=mm&r=g7befc37d02226b59499817eafdec60c3\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b4c18c758421903398e84d6c9560f319f39c665798d7d23e6a6f9dff8a8f984e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b4c18c758421903398e84d6c9560f319f39c665798d7d23e6a6f9dff8a8f984e?s=96&d=mm&r=g\",\"caption\":\"The Couchbase Team\"},\"description\":\"Jennifer Garcia is a Senior Web Manager at Couchbase Inc. As the website manager, Jennifer has overall responsibility for the website properties including design, implementation, content, and performance.\",\"sameAs\":[\"https:\\\/\\\/www.couchbase.com\"],\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/ko\\\/author\\\/jennifer-garcia\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Create a Couchbase Cluster with Ansible - The Couchbase Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/ko\/create-couchbase-cluster-with-ansible\/","og_locale":"ko_KR","og_type":"article","og_title":"Create a Couchbase Cluster with Ansible","og_description":"[This blog was syndicated from https:\/\/blog.grallandco.com] \u00a0 Introduction \u00a0 When I was looking for a more effective way to create my cluster I asked some sysadmins which tools I should use to do it. The answer I got during OSDC [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/ko\/create-couchbase-cluster-with-ansible\/","og_site_name":"The Couchbase Blog","article_published_time":"2014-12-16T19:26:41+00:00","article_modified_time":"2017-03-01T15:38:58+00:00","og_image":[{"width":1800,"height":630,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2022\/11\/couchbase-nosql-dbaas.png","type":"image\/png"}],"author":"The Couchbase Team","twitter_card":"summary_large_image","twitter_misc":{"Written by":"The Couchbase Team","Est. reading time":"5\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/"},"author":{"name":"The Couchbase Team","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/764f4a6771ee19bc7af70b70a326fb93"},"headline":"Create a Couchbase Cluster with Ansible","datePublished":"2014-12-16T19:26:41+00:00","dateModified":"2017-03-01T15:38:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/"},"wordCount":1092,"commentCount":5,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","keywords":["Ansible","Cluster"],"articleSection":["Uncategorized"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/","url":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/","name":"Create a Couchbase Cluster with Ansible - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2014-12-16T19:26:41+00:00","dateModified":"2017-03-01T15:38:58+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/create-couchbase-cluster-with-ansible\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Create a Couchbase Cluster with Ansible"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","description":"NoSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4, Couchbase","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/764f4a6771ee19bc7af70b70a326fb93","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ud300","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/secure.gravatar.com\/avatar\/b4c18c758421903398e84d6c9560f319f39c665798d7d23e6a6f9dff8a8f984e?s=96&d=mm&r=g7befc37d02226b59499817eafdec60c3","url":"https:\/\/secure.gravatar.com\/avatar\/b4c18c758421903398e84d6c9560f319f39c665798d7d23e6a6f9dff8a8f984e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b4c18c758421903398e84d6c9560f319f39c665798d7d23e6a6f9dff8a8f984e?s=96&d=mm&r=g","caption":"The Couchbase Team"},"description":"\uc758 \uc120\uc784 \uc6f9 \uad00\ub9ac\uc790\uc785\ub2c8\ub2e4. \uc6f9 \uc0ac\uc774\ud2b8 \uad00\ub9ac\uc790\ub85c\uc11c \ub514\uc790\uc778, \uad6c\ud604, \ucf58\ud150\uce20 \ubc0f \uc131\ub2a5\uc744 \ud3ec\ud568\ud55c \uc6f9 \uc0ac\uc774\ud2b8 \uc790\uc0b0\uc5d0 \ub300\ud55c \uc804\ubc18\uc801\uc778 \ucc45\uc784\uc744 \ub9e1\uace0 \uc788\uc2b5\ub2c8\ub2e4.","sameAs":["https:\/\/www.couchbase.com"],"url":"https:\/\/www.couchbase.com\/blog\/ko\/author\/jennifer-garcia\/"}]}},"acf":[],"authors":[{"term_id":8968,"user_id":2,"is_guest":0,"slug":"jennifer-garcia","display_name":"The Couchbase Team","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/b4c18c758421903398e84d6c9560f319f39c665798d7d23e6a6f9dff8a8f984e?s=96&d=mm&r=g","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/1586","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/comments?post=1586"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/1586\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media?parent=1586"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/categories?post=1586"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/tags?post=1586"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/ppma_author?post=1586"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}