{"id":15312,"date":"2020-11-29T21:53:00","date_gmt":"2020-11-29T20:53:00","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/"},"modified":"2020-11-29T21:53:00","modified_gmt":"2020-11-29T20:53:00","slug":"cross-cloud-pmm-which-tcp-ports-to-open","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/","title":{"rendered":"Cross-cloud PMM: which TCP ports to open"},"content":{"rendered":"<h2>By Franck Pachot<\/h2>\n<p>.<br \/>\nI recently installed Percona Monitoring &amp; Management on AWS (free tier) and here is how to monitor an instance on another cloud (OCI), in order to show which TCP port must be opened.<\/p>\n<h3>PMM server<\/h3>\n<p>I installed PMM from the AWS Marketplace, following those instructions: <a href=\"https:\/\/www.percona.com\/doc\/percona-monitoring-and-management\/deploy\/server\/ami.html\" rel=\"noopener noreferrer\" target=\"_blank\">https:\/\/www.percona.com\/doc\/percona-monitoring-and-management\/deploy\/server\/ami.html<\/a>. I&#8217;ll not reproduce the instructions, just some screenshots I took during the install:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/En1z7bjWEAIj7u4.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/En1z7bjWEAIj7u4.jpg\" alt=\"\" width=\"1199\" height=\"562\" class=\"aligncenter size-full wp-image-45496\" \/><\/a><br \/>\nI have opened the HTTPS port in order to access the console, and also configure the clients which will also connect through HTTPS (but I&#8217;m not using a signed certificate).<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-221643.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-221643.jpg\" alt=\"\" width=\"2154\" height=\"962\" class=\"aligncenter size-full wp-image-45501\" \/><\/a><br \/>\nOnce installed, two targets are visible: the PMM server host (Linux) and database (PostgreSQL):<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-222137-scaled-1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-222137-scaled-1.jpg\" alt=\"\" width=\"2560\" height=\"1045\" class=\"aligncenter size-full wp-image-45503\" \/><\/a><br \/>\nNote that I didn&#8217;t secure HTTPS here and I&#8217;ll have to accept insecure SSL.<\/p>\n<h3>PMM client<\/h3>\n<p>I&#8217;ll monitor an Autonomous Linux instance that I have on Oracle Cloud (Free Tier). Autonomous Linux is based on OEL, which is based on RHEL (see <a href=\"https:\/\/www.dbi-services.com\/blog\/al7\/\" rel=\"noopener noreferrer\" target=\"_blank\">https:\/\/www.dbi-services.com\/blog\/al7\/<\/a>) and is called &#8220;autonomous&#8221; because it updates the kernel without the need to reboot. I install the PMM Client RPM:<\/p>\n<pre><code>\n[opc@al ~]$ sudo yum -y install https:\/\/repo.percona.com\/yum\/percona-release-latest.noarch.rpm\n\n\nLoaded plugins: langpacks\npercona-release-latest.noarch.rpm                                                                        |  19 kB  00:00:00\nExamining \/var\/tmp\/yum-root-YgvokG\/percona-release-latest.noarch.rpm: percona-release-1.0-25.noarch\nMarking \/var\/tmp\/yum-root-YgvokG\/percona-release-latest.noarch.rpm to be installed\nResolving Dependencies\n--&gt; Running transaction check\n---&gt; Package percona-release.noarch 0:1.0-25 will be installed\n--&gt; Finished Dependency Resolution\nal7\/x86_64                                                                                               | 2.8 kB  00:00:00\nal7\/x86_64\/primary_db                                                                                    |  21 MB  00:00:00\nepel-apache-maven\/7Server\/x86_64                                                                         | 3.3 kB  00:00:00\nol7_UEKR5\/x86_64                                                                                         | 2.5 kB  00:00:00\nol7_latest\/x86_64                                                                                        | 2.7 kB  00:00:00\nol7_x86_64_userspace_ksplice                                                                             | 2.8 kB  00:00:00\n\nDependencies Resolved\n\nDependencies Resolved\n\n================================================================================================================================\n Package                        Arch                  Version               Repository                                     Size\n================================================================================================================================\nInstalling:\n percona-release                noarch                1.0-25                \/percona-release-latest.noarch                 31 k\n\nTransaction Summary\n================================================================================================================================\nInstall  1 Package\n\nTotal size: 31 k\nInstalled size: 31 k\nDownloading packages:\nRunning transaction check\nRunning transaction test\nTransaction test succeeded\n\nRunning transaction\n  Installing : percona-release-1.0-25.noarch                                                                                1\/1\n* Enabling the Percona Original repository\n All done!\n* Enabling the Percona Release repository\n All done!\nThe percona-release package now contains a percona-release script that can enable additional repositories for our newer products.\n\nFor example, to enable the Percona Server 8.0 repository use:\n\n  percona-release setup ps80\n\nNote: To avoid conflicts with older product versions, the percona-release setup command may disable our original repository for some products.\n\nFor more information, please visit:\n  https:\/\/www.percona.com\/doc\/percona-repo-config\/percona-release.html\n\n  Verifying  : percona-release-1.0-25.noarch                                                                                1\/1\n\nInstalled:\n  percona-release.noarch 0:1.0-25\n\n\n<\/code><\/pre>\n<p>This packages helps to enable additional repositories. Here, I need the PMM 2 Client:<\/p>\n<pre><code>\n[opc@al ~]$ sudo percona-release enable pmm2-client\n\n\n* Enabling the PMM2 Client repository\n All done!\n\n<\/code><\/pre>\n<p>Once enabled, it is easy to install it with YUM:<\/p>\n<pre><code>\n[opc@al ~]$ sudo yum install -y pmm2-client\n\n\nLoaded plugins: langpacks\npercona-release-noarch                                                                                   | 2.9 kB  00:00:00\npercona-release-x86_64                                                                                   | 2.9 kB  00:00:00\npmm2-client-release-x86_64                                                                               | 2.9 kB  00:00:00\nprel-release-noarch                                                                                      | 2.9 kB  00:00:00\n(1\/4): percona-release-noarch\/7Server\/primary_db                                                         |  24 kB  00:00:00\n(2\/4): pmm2-client-release-x86_64\/7Server\/primary_db                                                     | 3.5 kB  00:00:00\n(3\/4): prel-release-noarch\/7Server\/primary_db                                                            | 2.5 kB  00:00:00\n(4\/4): percona-release-x86_64\/7Server\/primary_db                                                         | 1.2 MB  00:00:00\nResolving Dependencies\n--&gt; Running transaction check\n---&gt; Package pmm2-client.x86_64 0:2.11.1-6.el7 will be installed\n--&gt; Finished Dependency Resolution\n\nDependencies Resolved\n\n================================================================================================================================\n Package                     Arch                   Version                        Repository                              Size\n================================================================================================================================\nInstalling:\n pmm2-client                 x86_64                 2.11.1-6.el7                   percona-release-x86_64                  42 M\n\nTransaction Summary\n================================================================================================================================\nInstall  1 Package\n\nTotal download size: 42 M\nInstalled size: 42 M\nDownloading packages:\nwarning: \/var\/cache\/yum\/x86_64\/7Server\/percona-release-x86_64\/packages\/pmm2-client-2.11.1-6.el7.x86_64.rpm: Header V4 RSA\/SHA256\n Signature, key ID 8507efa5: NOKEY\nPublic key for pmm2-client-2.11.1-6.el7.x86_64.rpm is not installed\npmm2-client-2.11.1-6.el7.x86_64.rpm                                                                      |  42 MB  00:00:07\nRetrieving key from file:\/\/\/etc\/pki\/rpm-gpg\/PERCONA-PACKAGING-KEY\nImporting GPG key 0x8507EFA5:\n Userid     : \"Percona MySQL Development Team (Packaging key) \"\n Fingerprint: 4d1b b29d 63d9 8e42 2b21 13b1 9334 a25f 8507 efa5\n Package    : percona-release-1.0-25.noarch (@\/percona-release-latest.noarch)\n From       : \/etc\/pki\/rpm-gpg\/PERCONA-PACKAGING-KEY\nRunning transaction check\nRunning transaction test\nTransaction test succeeded\nRunning transaction\n  Installing : pmm2-client-2.11.1-6.el7.x86_64                                                                              1\/1\n  Verifying  : pmm2-client-2.11.1-6.el7.x86_64                                                                              1\/1\n\nInstalled:\n  pmm2-client.x86_64 0:2.11.1-6.el7\n\nComplete!\n\n<\/code><\/pre>\n<p>That&#8217;s all for software installation. I just need to configure the agent to connect to the PMM Server:<\/p>\n<pre><code>\n[opc@al ~]$ sudo pmm-admin config --server-url https:\/\/admin:secretpassword@18.194.119.174 --server-insecure-tls $(curl ident.me) generic OPC-$(hostname)\n\n\nChecking local pmm-agent status...\npmm-agent is running.\nRegistering pmm-agent on PMM Server...\nRegistered.\nConfiguration file \/usr\/local\/percona\/pmm2\/config\/pmm-agent.yaml updated.\nReloading pmm-agent configuration...\nConfiguration reloaded.\nChecking local pmm-agent status...\npmm-agent is running.\n<\/code><\/pre>\n<p>As you can see, I use the &#8220;ident-me&#8221; web service to identify my IP address, but you probably know your public IP.<\/p>\n<p>This configuration goes to a file, which you should protect because it contains the password in clear text:<\/p>\n<pre><code>\n[opc@al ~]$ ls -l \/usr\/local\/percona\/pmm2\/config\/pmm-agent.yaml\n-rw-r-----. 1 pmm-agent pmm-agent 805 Nov 28 20:22 \/usr\/local\/percona\/pmm2\/config\/pmm-agent.yaml\n<\/code><\/pre>\n<pre><code>\n# Updated by `pmm-agent setup`.\n---\nid: \/agent_id\/853027e6-563e-42b8-a417-f144541358ff\nlisten-port: 7777\nserver:\n  address: 18.194.119.174:443\n  username: admin\n  password: secretpassword\n  insecure-tls: true\npaths:\n  exporters_base: \/usr\/local\/percona\/pmm2\/exporters\n  node_exporter: \/usr\/local\/percona\/pmm2\/exporters\/node_exporter\n  mysqld_exporter: \/usr\/local\/percona\/pmm2\/exporters\/mysqld_exporter\n  mongodb_exporter: \/usr\/local\/percona\/pmm2\/exporters\/mongodb_exporter\n  postgres_exporter: \/usr\/local\/percona\/pmm2\/exporters\/postgres_exporter\n  proxysql_exporter: \/usr\/local\/percona\/pmm2\/exporters\/proxysql_exporter\n  rds_exporter: \/usr\/local\/percona\/pmm2\/exporters\/rds_exporter\n  tempdir: \/tmp\n  pt_summary: \/usr\/local\/percona\/pmm2\/tools\/pt-summary\nports:\n  min: 42000\n  max: 51999\ndebug: false\ntrace: false\n<\/code><\/pre>\n<p>What is interesting here is the port that is used for the server to connect to pull metrics from the client: 42000<\/p>\n<p>I&#8217;ll need to open this port. I can see the error from the PMM server: https:\/\/18.194.119.174\/prometheus\/targets<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-212959-scaled-1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-212959-scaled-1.jpg\" alt=\"\" width=\"2560\" height=\"1252\" class=\"aligncenter size-full wp-image-45488\" \/><\/a><\/p>\n<p>I open this port on the host:<\/p>\n<pre><code>\n[opc@al ~]$ sudo iptables -I INPUT 5 -i ens3 -p tcp --dport 42000 -m state --state NEW,ESTABLISHED -j ACCEPT\n<\/code><\/pre>\n<p>and on the ingress rules as well:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-213737-scaled-1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-213737-scaled-1.jpg\" alt=\"\" width=\"2560\" height=\"1394\" class=\"aligncenter size-full wp-image-45491\" \/><\/a><\/p>\n<h3>Testing<\/h3>\n<p>I&#8217;m running two processes here to test if I get the right metrics<\/p>\n<pre><code>\n[opc@al ~]$ while true ; do sudo dd bs=100M count=1                if=$(df -Th | sort -rhk3 | awk '\/^[\/]dev\/{print $1;exit}') of=\/dev\/null ; done &amp;\n[opc@al ~]$ while true ; do sudo dd bs=100M count=10G iflag=direct if=$(df -Th | sort -rhk3 | awk '\/^[\/]dev\/{print $1;exit}') of=\/dev\/null ; done &amp;\n<\/code><\/pre>\n<p>The latter will do mostly I\/O as I read with O_DIRECT and the former mainly system CPU as it reads from filesystem cache<\/p>\n<p>Here is the Grafana dashboard from PMM:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-215637-scaled-1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-215637-scaled-1.jpg\" alt=\"\" width=\"2560\" height=\"1499\" class=\"aligncenter size-full wp-image-45493\" \/><\/a><br \/>\nI see my two processes, and 80% of CPU stolen by the hypervisor as I&#8217;m running on the Free Tier here which provides 1\/8th of OCPU.<\/p>\n<p>If you have MySQL or PostgreSQL databases there, they can easily be monitored (&#8220;pmm-admin add MySQL&#8221; or &#8220;pmm-admin add MySQL&#8221; you can see all that in Elisa Usai demo: <a href=\"https:\/\/youtu.be\/VgOR_GCUpVw?t=1558\" rel=\"noopener noreferrer\" target=\"_blank\">https:\/\/youtu.be\/VgOR_GCUpVw?t=1558<\/a>).<\/p>\n<h3>Last test, let&#8217;s see what happens if the monitored host reboots:<\/h3>\n<pre><code>\n[opc@al ~]$ date\nSat Nov 28 22:54:36 CET 2020\n[opc@al ~]$ uptrack-uname -a\nLinux al 4.14.35-2025.402.2.1.el7uek.x86_64 #2 SMP Fri Oct 23 22:27:16 PDT 2020 x86_64 x86_64 x86_64 GNU\/Linux\n[opc@al ~]$ uname -a\nLinux al 4.14.35-1902.301.1.el7uek.x86_64 #2 SMP Tue Mar 31 16:50:32 PDT 2020 x86_64 x86_64 x86_64 GNU\/Linux\n[opc@al ~]$ sudo systemctl reboot\nConnection to 130.61.159.88 closed by remote host.\nConnection to 130.61.159.88 closed.\n<\/code><\/pre>\n<p>Yes&#8230; I do not reboot it frequently because it is Autonomous Linux and the Effective kernel is up to date (latest patches from October) even if the last restart was in March. But this deserves a test.<\/p>\n<p>The first interesting thing is that PMM seems to keep the last read metrics for a while:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-231426-scaled-1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-231426-scaled-1.jpg\" alt=\"\" width=\"2560\" height=\"924\" class=\"aligncenter size-full wp-image-45508\" \/><\/a><br \/>\nThe host was shut down at 22:55 and it shows the last metrics for 5 minutes before stopping.<\/p>\n<p>I had to wait for a while because my Availability Domain was out of capacity for the free tier:<\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"500\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\">Sometimes, even an Autonomous Linux must be rebooted. And if you are unlucky, there are no available servers in the Availability Domain and it remains stopped\ud83e\udd37\u200d\u2642\ufe0f<br \/>(this is Free Tier) <a href=\"https:\/\/t.co\/sd3KIeoHkd\">pic.twitter.com\/sd3KIeoHkd<\/a><\/p>\n<p>&mdash; Franck Pachot (@FranckPachot) <a href=\"https:\/\/twitter.com\/FranckPachot\/status\/1332817607167250433?ref_src=twsrc%5Etfw\">November 28, 2020<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<pre><code>\n[opc@al ~]$ systemctl status pmm-agent.service\n\u25cf pmm-agent.service - pmm-agent\n   Loaded: loaded (\/usr\/lib\/systemd\/system\/pmm-agent.service; enabled; vendor preset: disabled)\n   Active: active (running) since Sat 2020-11-28 23:40:10 UTC; 1min 15s ago\n Main PID: 46446 (pmm-agent)\n   CGroup: \/system.slice\/pmm-agent.service\n           \u251c\u250046446 \/usr\/sbin\/pmm-agent --config-file=\/usr\/local\/percona\/pmm2\/config\/pmm-agent.yaml\n           \u2514\u250046453 \/usr\/local\/percona\/pmm2\/exporters\/node_exporter --collector.bonding --collector.buddyinfo --collector.cpu ...\n<\/code><\/pre>\n<p>No problem, the installation of PMM client has defined the agent to restart on reboot.<\/p>\n<p>In summary, PMM pulls the metric from the exporter, so you need to open inbound ports on the host where the PMM client agent runs. And HTTPS on the PMM server. Then everything is straightforward.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>By Franck Pachot . I recently installed Percona Monitoring &amp; Management on AWS (free tier) and here is how to monitor an instance on another cloud (OCI), in order to show which TCP port must be opened. PMM server I installed PMM from the AWS Marketplace, following those instructions: https:\/\/www.percona.com\/doc\/percona-monitoring-and-management\/deploy\/server\/ami.html. I&#8217;ll not reproduce the instructions, [&hellip;]<\/p>\n","protected":false},"author":89,"featured_media":15316,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1865,229],"tags":[133,1375,146],"type_dbi":[],"class_list":["post-15312","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aws","category-database-administration-monitoring","tag-aws","tag-oci","tag-pmm"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Cross-cloud PMM: which TCP ports to open - 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\/cross-cloud-pmm-which-tcp-ports-to-open\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cross-cloud PMM: which TCP ports to open\" \/>\n<meta property=\"og:description\" content=\"By Franck Pachot . I recently installed Percona Monitoring &amp; Management on AWS (free tier) and here is how to monitor an instance on another cloud (OCI), in order to show which TCP port must be opened. PMM server I installed PMM from the AWS Marketplace, following those instructions: https:\/\/www.percona.com\/doc\/percona-monitoring-and-management\/deploy\/server\/ami.html. I&#8217;ll not reproduce the instructions, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2020-11-29T20:53:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-212959-scaled-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2048\" \/>\n\t<meta property=\"og:image:height\" content=\"1002\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Cloud 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=\"Cloud Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 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\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/\"},\"author\":{\"name\":\"Cloud Team\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/92adc1c969d57f2b2f51e970b15b2f70\"},\"headline\":\"Cross-cloud PMM: which TCP ports to open\",\"datePublished\":\"2020-11-29T20:53:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/\"},\"wordCount\":596,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/Screenshot-2020-11-28-212959-scaled-1.jpg\",\"keywords\":[\"AWS\",\"OCI\",\"PMM\"],\"articleSection\":[\"AWS\",\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/\",\"name\":\"Cross-cloud PMM: which TCP ports to open - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/Screenshot-2020-11-28-212959-scaled-1.jpg\",\"datePublished\":\"2020-11-29T20:53:00+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/92adc1c969d57f2b2f51e970b15b2f70\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/Screenshot-2020-11-28-212959-scaled-1.jpg\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/Screenshot-2020-11-28-212959-scaled-1.jpg\",\"width\":2048,\"height\":1002},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/cross-cloud-pmm-which-tcp-ports-to-open\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cross-cloud PMM: which TCP ports to open\"}]},{\"@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\\\/92adc1c969d57f2b2f51e970b15b2f70\",\"name\":\"Cloud Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1fd4abaa3d2f79eb3c430f8ababb33014273b4168e2652ca915d59c6ef5e8cec?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1fd4abaa3d2f79eb3c430f8ababb33014273b4168e2652ca915d59c6ef5e8cec?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1fd4abaa3d2f79eb3c430f8ababb33014273b4168e2652ca915d59c6ef5e8cec?s=96&d=mm&r=g\",\"caption\":\"Cloud Team\"},\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/cloud\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Cross-cloud PMM: which TCP ports to open - 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\/cross-cloud-pmm-which-tcp-ports-to-open\/","og_locale":"en_US","og_type":"article","og_title":"Cross-cloud PMM: which TCP ports to open","og_description":"By Franck Pachot . I recently installed Percona Monitoring &amp; Management on AWS (free tier) and here is how to monitor an instance on another cloud (OCI), in order to show which TCP port must be opened. PMM server I installed PMM from the AWS Marketplace, following those instructions: https:\/\/www.percona.com\/doc\/percona-monitoring-and-management\/deploy\/server\/ami.html. I&#8217;ll not reproduce the instructions, [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/","og_site_name":"dbi Blog","article_published_time":"2020-11-29T20:53:00+00:00","og_image":[{"width":2048,"height":1002,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-212959-scaled-1.jpg","type":"image\/jpeg"}],"author":"Cloud Team","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Cloud Team","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/"},"author":{"name":"Cloud Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/92adc1c969d57f2b2f51e970b15b2f70"},"headline":"Cross-cloud PMM: which TCP ports to open","datePublished":"2020-11-29T20:53:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/"},"wordCount":596,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-212959-scaled-1.jpg","keywords":["AWS","OCI","PMM"],"articleSection":["AWS","Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/","url":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/","name":"Cross-cloud PMM: which TCP ports to open - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-212959-scaled-1.jpg","datePublished":"2020-11-29T20:53:00+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/92adc1c969d57f2b2f51e970b15b2f70"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-212959-scaled-1.jpg","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/Screenshot-2020-11-28-212959-scaled-1.jpg","width":2048,"height":1002},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/cross-cloud-pmm-which-tcp-ports-to-open\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Cross-cloud PMM: which TCP ports to open"}]},{"@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\/92adc1c969d57f2b2f51e970b15b2f70","name":"Cloud Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/1fd4abaa3d2f79eb3c430f8ababb33014273b4168e2652ca915d59c6ef5e8cec?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1fd4abaa3d2f79eb3c430f8ababb33014273b4168e2652ca915d59c6ef5e8cec?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1fd4abaa3d2f79eb3c430f8ababb33014273b4168e2652ca915d59c6ef5e8cec?s=96&d=mm&r=g","caption":"Cloud Team"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/cloud\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/15312","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\/89"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=15312"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/15312\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/15316"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=15312"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=15312"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=15312"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=15312"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}