{"id":13268,"date":"2020-01-17T17:03:28","date_gmt":"2020-01-17T16:03:28","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/"},"modified":"2020-01-17T17:03:28","modified_gmt":"2020-01-17T16:03:28","slug":"deploying-your-own-postgresql-image-on-nutanix-era","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/","title":{"rendered":"Deploying your own PostgreSQL image on Nutanix Era"},"content":{"rendered":"<p>Some days ago we had a very good training on <a href=\"https:\/\/www.nutanix.com\/en\">Nutanix<\/a>. Nutanix is a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Hyper-converged_infrastructure\" target=\"_blank\" rel=\"noopener noreferrer\">Hyper-converged infrastructure<\/a> and that means that all is software driven and the system can be deployed on many <a href=\"https:\/\/www.nutanix.com\/products\/hardware-platforms\" target=\"_blank\" rel=\"noopener noreferrer\">hardware configurations<\/a>. I will not go into the details of the system itself but rather look at one component\/module which is called <a href=\"https:\/\/www.nutanix.com\/products\/era\" target=\"_blank\" rel=\"noopener noreferrer\">Era<\/a>. Era promises to simplify database deployments by providing a clean and simple user interface (and an API) that provides deployment procedures for PostgreSQL, MS SQL, MySQL, MariaDB and Oracle. There are predefined templates you can use but in this post I&#8217;ll look at how you can use Era to deploy your own PostgreSQL image.<\/p>\n<p><!--more--><\/p>\n<p>Before you can register a <a href=\"https:\/\/portal.nutanix.com\/#\/page\/docs\/details?targetId=Nutanix-Era-User-Guide-v12:Nutanix-Era-User-Guide-v12\" target=\"_blank\" rel=\"noopener noreferrer\">software profile<\/a> with Era there needs to be a VM up and running which already has PostgreSQL installed. For that I&#8217;ll import the latest <a href=\"http:\/\/mirror.eu.oneandone.net\/linux\/distributions\/centos\/7.7.1908\/isos\/x86_64\/CentOS-7-x86_64-DVD-1908.iso\" target=\"_blank\" rel=\"noopener noreferrer\">CentOS 7 ISO<\/a> with <a href=\"https:\/\/www.nutanix.com\/products\/prism\" target=\"_blank\" rel=\"noopener noreferrer\">Prism<\/a> (CentOS 8 is not yet supported).<\/p>\n<p>Importing images is done in the &#8220;Images Configuration&#8221; section under &#8220;Settings&#8221; of Prism:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png\" alt=\"\" width=\"722\" height=\"508\" class=\"aligncenter size-full wp-image-36606\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_053_1-1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_053_1-1.jpg\" alt=\"\" width=\"1500\" height=\"689\" class=\"aligncenter size-full wp-image-36612\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_054-3.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_054-3.png\" alt=\"\" width=\"684\" height=\"546\" class=\"aligncenter size-full wp-image-36608\" \/><\/a><\/p>\n<p>Once you start the upload a new task is generated which can be monitored in the tasks section:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_055_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_055_1.jpg\" alt=\"\" width=\"1500\" height=\"304\" class=\"aligncenter size-full wp-image-36614\" \/><\/a><\/p>\n<p>Now that the image is ready we need to deploy a new virtual machine which will use the image as installation source:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_056_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_056_1.jpg\" alt=\"\" width=\"1500\" height=\"290\" class=\"aligncenter size-full wp-image-36616\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_057.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_057.png\" alt=\"\" width=\"503\" height=\"608\" class=\"aligncenter size-full wp-image-36618\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_058-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_058-1.png\" alt=\"\" width=\"504\" height=\"606\" class=\"aligncenter size-full wp-image-36619\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_059-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_059-1.png\" alt=\"\" width=\"499\" height=\"528\" class=\"aligncenter size-full wp-image-36620\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_060-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_060-1.png\" alt=\"\" width=\"501\" height=\"606\" class=\"aligncenter size-full wp-image-36621\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_061.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_061.png\" alt=\"\" width=\"500\" height=\"557\" class=\"aligncenter size-full wp-image-36622\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_062-2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_062-2.png\" alt=\"\" width=\"498\" height=\"608\" class=\"aligncenter size-full wp-image-36623\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_063.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_063.png\" alt=\"\" width=\"496\" height=\"505\" class=\"aligncenter size-full wp-image-36625\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_064.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_064.png\" alt=\"\" width=\"501\" height=\"608\" class=\"aligncenter size-full wp-image-36626\" \/><\/a><\/p>\n<p>As the virtual machine is now defined we need to power it on and then launch the console:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_065_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_065_1.jpg\" alt=\"\" width=\"1500\" height=\"487\" class=\"aligncenter size-full wp-image-36627\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_066_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_066_1.jpg\" alt=\"\" width=\"1500\" height=\"502\" class=\"aligncenter size-full wp-image-36628\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_067_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_067_1.jpg\" alt=\"\" width=\"1300\" height=\"804\" class=\"aligncenter size-full wp-image-36629\" \/><\/a><\/p>\n<p>Follow your preferred way of doing the CentOS installation and once it is done you need to power off the virtual machine for removing the ISO. Otherwise you will always land in the installation procedure when the virtual machine is started:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_068_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_068_1.jpg\" alt=\"\" width=\"1500\" height=\"580\" class=\"aligncenter size-full wp-image-36631\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_069_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_069_1.jpg\" alt=\"\" width=\"1500\" height=\"503\" class=\"aligncenter size-full wp-image-36632\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_070-2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_070-2.png\" alt=\"\" width=\"501\" height=\"608\" class=\"aligncenter size-full wp-image-36633\" \/><\/a><\/p>\n<p>After you powered of the virtual machine again you should be able to connect with ssh:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_071_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_071_1.jpg\" alt=\"\" width=\"1500\" height=\"688\" class=\"aligncenter size-full wp-image-36635\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_072-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_072-1.png\" alt=\"\" width=\"682\" height=\"134\" class=\"aligncenter size-full wp-image-36636\" \/><\/a><\/p>\n<p>The next step is to install PostgreSQL as you prefer to do it. <a href=\"https:\/\/www.dbi-services.com\/blog\/how-to-compile-postgresql-11-with-support-for-jit-compilation-on-rhelcentos-7\/\" target=\"_blank\" rel=\"noopener noreferrer\">Here is an example for doing it from source code.<\/a> We will not create a PostgreSQL instance, the binaries are enough. In my case everything was installed here:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\n postgres@centos7postgres12:\/home\/postgres\/ [pg121] echo $PGHOME\n\/u01\/app\/postgres\/product\/12\/db_1\/\npostgres@centos7postgres12:\/home\/postgres\/ [pg121] ls $PGHOME\nbin  include  lib  share\n<\/pre>\n<p>Now that we have out PostgreSQL server we need to register the server in Era. Before doing that you should download and execute the pre-check script on the new database server:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_073.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_073.jpg\" alt=\"\" width=\"438\" height=\"312\" class=\"aligncenter size-full wp-image-36638\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_074-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_074-1.png\" alt=\"\" width=\"503\" height=\"494\" class=\"aligncenter size-full wp-image-36639\" \/><\/a><\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\npostgres@centos7postgres12:\/home\/postgres\/ [pg121] sudo .\/era_linux_prechecks.sh\n\n----------------------------------------------------------------------------------\n   Error: Database type not specified\n   Syntax: $ .\/era_linux_prechecks.sh -t|--database_type  [-c|--cluster_ip ] [-p|--cluster_port] [-d|--detailed]\n   Database type can be: oracle_database, postgres_database, mariadb_database, mysql_database\n----------------------------------------------------------------------------------\n\npostgres@centos7postgres12:\/home\/postgres\/ [pg121] sudo .\/era_linux_prechecks.sh -t postgres_database\nlibselinux-python-2.5-14.1.el7.x86_64\n\n\n--------------------------------------------------------------------\n|              Era Pre-requirements Validation Report              |\n--------------------------------------------------------------------\n\n     General Checks:\n     ---------------\n         1] Username           : root\n         2] Package manager    : yum\n         2] Database type      : postgres_database\n\n     Era Configuration Dependencies:\n     -------------------------------\n         1] User has sudo access                         : YES\n         2] User has sudo with NOPASS access             : YES\n         3] Crontab configured for user                  : YES\n         4] Secure paths configured in \/etc\/sudoers file : YES\n\n     Era Software Dependencies:\n     --------------------------\n          1] GCC                  : N\/A\n          2] readline             : YES\n          3] libselinux-python    : YES\n          4] crontab              : YES\n          5] lvcreate             : YES\n          6] lvscan               : YES\n          7] lvdisplay            : YES\n          8] vgcreate             : YES\n          9] vgscan               : YES\n         10] vgdisplay            : YES\n         11] pvcreate             : YES\n         12] pvscan               : YES\n         13] pvdisplay            : YES\n         14] zip                  : NO\n         15] unzip                : YES\n         16] rsync                : NO\n\n     Summary:\n     --------\n         This machine does not satisfy all of the dependencies required by Era.\n         It can not be onboarded to Era unless all of these are satified.\n\n     **WARNING: Cluster API was not provided. Couldn't go ahead with the Prism API connectivity check.\n     Please ensure Prism APIs are callable from the host.\n====================================================================\n1postgres@centos7postgres12:\/home\/postgres\/ [pg121]\n<\/pre>\n<p>In my case only &#8220;zip&#8221; and &#8220;rsync&#8221; are missing which of course is easy to fix:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\npostgres@centos7postgres12:\/home\/postgres\/ [pg121] sudo yum install -y zip rsync\n...\npostgres@centos7postgres12:\/home\/postgres\/ [pg121] sudo .\/era_linux_prechecks.sh -t postgres_database\nlibselinux-python-2.5-14.1.el7.x86_64\n\n\n--------------------------------------------------------------------\n|              Era Pre-requirements Validation Report              |\n--------------------------------------------------------------------\n\n     General Checks:\n     ---------------\n         1] Username           : root\n         2] Package manager    : yum\n         2] Database type      : postgres_database\n\n     Era Configuration Dependencies:\n     -------------------------------\n         1] User has sudo access                         : YES\n         2] User has sudo with NOPASS access             : YES\n         3] Crontab configured for user                  : YES\n         4] Secure paths configured in \/etc\/sudoers file : YES\n\n     Era Software Dependencies:\n     --------------------------\n          1] GCC                  : N\/A\n          2] readline             : YES\n          3] libselinux-python    : YES\n          4] crontab              : YES\n          5] lvcreate             : YES\n          6] lvscan               : YES\n          7] lvdisplay            : YES\n          8] vgcreate             : YES\n          9] vgscan               : YES\n         10] vgdisplay            : YES\n         11] pvcreate             : YES\n         12] pvscan               : YES\n         13] pvdisplay            : YES\n         14] zip                  : YES\n         15] unzip                : YES\n         16] rsync                : YES\n\n     Summary:\n     --------\n         This machine satisfies dependencies required by Era, it can be onboarded.\n<\/pre>\n<p>Looks good and the database server can now be registered:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_075_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_075_1.jpg\" alt=\"\" width=\"1500\" height=\"523\" class=\"aligncenter size-full wp-image-36640\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_076-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_076-1.png\" alt=\"\" width=\"784\" height=\"292\" class=\"aligncenter size-full wp-image-36641\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_077.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_077.jpg\" alt=\"\" width=\"697\" height=\"694\" class=\"aligncenter size-full wp-image-36642\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_078-2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_078-2.png\" alt=\"\" width=\"701\" height=\"407\" class=\"aligncenter size-full wp-image-36643\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_079-2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_079-2.png\" alt=\"\" width=\"698\" height=\"403\" class=\"aligncenter size-full wp-image-36644\" \/><\/a><\/p>\n<p>Era as well has a task list which can be monitored:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_080_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_080_1.jpg\" alt=\"\" width=\"1500\" height=\"237\" class=\"aligncenter size-full wp-image-36645\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_081_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_081_1.jpg\" alt=\"\" width=\"1500\" height=\"597\" class=\"aligncenter size-full wp-image-36646\" \/><\/a><\/p>\n<p>&#8230; and then it fails because PostgreSQL 12.1 is not supported. That is fine but I would have expected the pre-check script to tell me that. Same procedure again, this time with PostgreSQL 11.6 and that succeeds:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_082_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_082_1.jpg\" alt=\"\" width=\"1500\" height=\"225\" class=\"aligncenter size-full wp-image-36648\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_083_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_083_1.jpg\" alt=\"\" width=\"1500\" height=\"242\" class=\"aligncenter size-full wp-image-36649\" \/><\/a><\/p>\n<p>This database server is now the source for a new &#8220;Software profile&#8221;:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_084_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_084_1.jpg\" alt=\"\" width=\"1000\" height=\"447\" class=\"aligncenter size-full wp-image-36652\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_085.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_085.jpg\" alt=\"\" width=\"696\" height=\"694\" class=\"aligncenter size-full wp-image-36653\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_086-2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_086-2.png\" alt=\"\" width=\"702\" height=\"539\" class=\"aligncenter size-full wp-image-36654\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_087_2.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_087_2.jpg\" alt=\"\" width=\"1500\" height=\"276\" class=\"aligncenter size-full wp-image-36655\" \/><\/a><br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_088_1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_088_1.jpg\" alt=\"\" width=\"1500\" height=\"434\" class=\"aligncenter size-full wp-image-36656\" \/><\/a><\/p>\n<p>And that&#8217;s it: Our new PostgreSQL software profile is ready to use. In the next post we&#8217;ll try to deploy a new virtual machine from that profile.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Some days ago we had a very good training on Nutanix. Nutanix is a Hyper-converged infrastructure and that means that all is software driven and the system can be deployed on many hardware configurations. I will not go into the details of the system itself but rather look at one component\/module which is called Era. [&hellip;]<\/p>\n","protected":false},"author":29,"featured_media":13269,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229],"tags":[135,1796,1797,77],"type_dbi":[],"class_list":["post-13268","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-database-administration-monitoring","tag-cloud","tag-hyper-converged","tag-nutanix","tag-postgresql"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Deploying your own PostgreSQL image on Nutanix Era - dbi 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.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Deploying your own PostgreSQL image on Nutanix Era\" \/>\n<meta property=\"og:description\" content=\"Some days ago we had a very good training on Nutanix. Nutanix is a Hyper-converged infrastructure and that means that all is software driven and the system can be deployed on many hardware configurations. I will not go into the details of the system itself but rather look at one component\/module which is called Era. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2020-01-17T16:03:28+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png\" \/>\n\t<meta property=\"og:image:width\" content=\"722\" \/>\n\t<meta property=\"og:image:height\" content=\"508\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Daniel Westermann\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@westermanndanie\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daniel Westermann\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/\"},\"author\":{\"name\":\"Daniel Westermann\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66\"},\"headline\":\"Deploying your own PostgreSQL image on Nutanix Era\",\"datePublished\":\"2020-01-17T16:03:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/\"},\"wordCount\":470,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png\",\"keywords\":[\"Cloud\",\"hyper converged\",\"Nutanix\",\"PostgreSQL\"],\"articleSection\":[\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/\",\"name\":\"Deploying your own PostgreSQL image on Nutanix Era - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png\",\"datePublished\":\"2020-01-17T16:03:28+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#primaryimage\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png\",\"contentUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png\",\"width\":722,\"height\":508},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Deploying your own PostgreSQL image on Nutanix Era\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66\",\"name\":\"Daniel Westermann\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g\",\"caption\":\"Daniel Westermann\"},\"description\":\"Daniel Westermann is Principal Consultant and Technology Leader Open Infrastructure at dbi services. He has more than 15 years of experience in management, engineering and optimization of databases and infrastructures, especially on Oracle and PostgreSQL. Since the beginning of his career, he has specialized in Oracle Technologies and is Oracle Certified Professional 12c and Oracle Certified Expert RAC\/GridInfra. Over time, Daniel has become increasingly interested in open source technologies, becoming \u201cTechnology Leader Open Infrastructure\u201d and PostgreSQL expert. \u00a0Based on community or EnterpriseDB tools, he develops and installs complex high available solutions with PostgreSQL. He is also a certified PostgreSQL Plus 9.0 Professional and a Postgres Advanced Server 9.4 Professional. He is a regular speaker at PostgreSQL conferences in Switzerland and Europe. Today Daniel is also supporting our customers on AWS services such as AWS RDS, database migrations into the cloud, EC2 and automated infrastructure management with AWS SSM (System Manager). He is a certified AWS Solutions Architect Professional. Prior to dbi services, Daniel was Management System Engineer at LC SYSTEMS-Engineering AG in Basel. Before that, he worked as Oracle Developper &amp;\u00a0Project Manager at Delta Energy Solutions AG in Basel (today Powel AG). Daniel holds a diploma in Business Informatics (DHBW, Germany). His branch-related experience mainly covers the pharma industry, the financial sector, energy, lottery and telecommunications.\",\"sameAs\":[\"https:\/\/x.com\/westermanndanie\"],\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/daniel-westermann\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Deploying your own PostgreSQL image on Nutanix Era - dbi 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.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/","og_locale":"en_US","og_type":"article","og_title":"Deploying your own PostgreSQL image on Nutanix Era","og_description":"Some days ago we had a very good training on Nutanix. Nutanix is a Hyper-converged infrastructure and that means that all is software driven and the system can be deployed on many hardware configurations. I will not go into the details of the system itself but rather look at one component\/module which is called Era. [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/","og_site_name":"dbi Blog","article_published_time":"2020-01-17T16:03:28+00:00","og_image":[{"width":722,"height":508,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png","type":"image\/png"}],"author":"Daniel Westermann","twitter_card":"summary_large_image","twitter_creator":"@westermanndanie","twitter_misc":{"Written by":"Daniel Westermann","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/"},"author":{"name":"Daniel Westermann","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66"},"headline":"Deploying your own PostgreSQL image on Nutanix Era","datePublished":"2020-01-17T16:03:28+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/"},"wordCount":470,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png","keywords":["Cloud","hyper converged","Nutanix","PostgreSQL"],"articleSection":["Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/","url":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/","name":"Deploying your own PostgreSQL image on Nutanix Era - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png","datePublished":"2020-01-17T16:03:28+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Selection_052-2.png","width":722,"height":508},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/deploying-your-own-postgresql-image-on-nutanix-era\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Deploying your own PostgreSQL image on Nutanix Era"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66","name":"Daniel Westermann","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g","caption":"Daniel Westermann"},"description":"Daniel Westermann is Principal Consultant and Technology Leader Open Infrastructure at dbi services. He has more than 15 years of experience in management, engineering and optimization of databases and infrastructures, especially on Oracle and PostgreSQL. Since the beginning of his career, he has specialized in Oracle Technologies and is Oracle Certified Professional 12c and Oracle Certified Expert RAC\/GridInfra. Over time, Daniel has become increasingly interested in open source technologies, becoming \u201cTechnology Leader Open Infrastructure\u201d and PostgreSQL expert. \u00a0Based on community or EnterpriseDB tools, he develops and installs complex high available solutions with PostgreSQL. He is also a certified PostgreSQL Plus 9.0 Professional and a Postgres Advanced Server 9.4 Professional. He is a regular speaker at PostgreSQL conferences in Switzerland and Europe. Today Daniel is also supporting our customers on AWS services such as AWS RDS, database migrations into the cloud, EC2 and automated infrastructure management with AWS SSM (System Manager). He is a certified AWS Solutions Architect Professional. Prior to dbi services, Daniel was Management System Engineer at LC SYSTEMS-Engineering AG in Basel. Before that, he worked as Oracle Developper &amp;\u00a0Project Manager at Delta Energy Solutions AG in Basel (today Powel AG). Daniel holds a diploma in Business Informatics (DHBW, Germany). His branch-related experience mainly covers the pharma industry, the financial sector, energy, lottery and telecommunications.","sameAs":["https:\/\/x.com\/westermanndanie"],"url":"https:\/\/www.dbi-services.com\/blog\/author\/daniel-westermann\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/13268","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/29"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=13268"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/13268\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/13269"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=13268"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=13268"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=13268"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=13268"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}