<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Suryabhan Singh Vaghela</title>
    <description>The latest articles on Forem by Suryabhan Singh Vaghela (@suryabhansv).</description>
    <link>https://forem.com/suryabhansv</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F172373%2Fbee68e53-e11c-41be-a6af-d029d2c9e786.jpg</url>
      <title>Forem: Suryabhan Singh Vaghela</title>
      <link>https://forem.com/suryabhansv</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/suryabhansv"/>
    <language>en</language>
    <item>
      <title>Configure Blackbox Exporter with Basic Authentication in Microsoft Azure WebApp</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Mon, 22 Aug 2022 08:07:21 +0000</pubDate>
      <link>https://forem.com/suryabhansv/configure-blackbox-exporter-with-basic-authentication-in-microsoft-azure-webapp-237</link>
      <guid>https://forem.com/suryabhansv/configure-blackbox-exporter-with-basic-authentication-in-microsoft-azure-webapp-237</guid>
      <description>&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Configuration of Blackbox Exporter Basic Authentication in Microsoft Azure WebApp.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pre-Requisite :&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/suryabhansv/deploying-blackbox-exporter-image-to-azure-container-registry-using-azure-cli-5dii"&gt;Deploying Blackbox Exporter Image to Azure Container Registry Using Azure CLI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/suryabhansv/setup-blackbox-exporter-in-microsft-azure-webapp-using-azure-cli-4lec"&gt;Setup Blackbox Exporter in Microsft Azure (WebApp) using Azure CLI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Steps&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://prometheus.io/docs/guides/basic-auth/#creating-web-yml" rel="noopener noreferrer"&gt;Create a web.yml file (documentation)&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://bcrypt-generator.com/" rel="noopener noreferrer"&gt;You can also use bcrypt generators on the web&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6igdbp3vny3cxpdxz19x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6igdbp3vny3cxpdxz19x.png" alt="Configuration of Blackbox Exporter Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xvfbnzvnlqxn4m7mbcq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xvfbnzvnlqxn4m7mbcq.png" alt="Configuration of Blackbox Exporter Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1lu2g6d02ylpghozgxim.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1lu2g6d02ylpghozgxim.png" alt="Configuration of Blackbox Exporter Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;web.yml (Upload this file in **suryasblackboxexporter** Storage Account Share)&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;basic_auth_users:
  suryauser: $2a$12$6g5f3MZriVtoOZ7GrCEwzuTBxnPQwHurpktXTXUu1neg/XZeHzipy
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft0p2g94ajci8ar7lfa1x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft0p2g94ajci8ar7lfa1x.png" alt="Configuration of Blackbox Exporter Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Set an Startup Commmand for Blackbox Exporter WebApp which includes web.yml&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;az webapp config set --name $WebAppName --resource-group $ResourceGroupName --startup-file `
"--config.file=/config/blackbox.yml --web.config.file=/config/web.yml"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe2eo71m9bo8lsknfl65m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe2eo71m9bo8lsknfl65m.png" alt="Configuration of Blackbox Exporter Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy3i7lefhdc3nh7fqrd24.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy3i7lefhdc3nh7fqrd24.png" alt="Configuration of Blackbox Exporter Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>azure</category>
      <category>monitoring</category>
      <category>tutorial</category>
      <category>blackboxexporter</category>
    </item>
    <item>
      <title>Configure Alert Manager with Basic Authentication in Microsoft Azure WebApp</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Fri, 19 Aug 2022 11:40:18 +0000</pubDate>
      <link>https://forem.com/suryabhansv/configure-alert-manager-with-basic-authentication-in-microsoft-azure-webapp-258o</link>
      <guid>https://forem.com/suryabhansv/configure-alert-manager-with-basic-authentication-in-microsoft-azure-webapp-258o</guid>
      <description>&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Configuration of Alert Manager Basic Authentication in Microsoft Azure WebApp.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pre-Requisite :&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/suryabhansv/deploying-alertmanager-image-to-azure-container-registry-using-azure-cli-1mlb"&gt;Deploying AlertManager Image to Azure Container Registry Using Azure CLI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/suryabhansv/setup-alertmanager-in-microsft-azure-webapp-using-azure-cli-2pdj"&gt;Setup Alertmanager in Microsft Azure (WebApp) using Azure CLI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Steps&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://prometheus.io/docs/guides/basic-auth/#creating-web-yml" rel="noopener noreferrer"&gt;Create a web.yml file (documentation)&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://bcrypt-generator.com/" rel="noopener noreferrer"&gt;You can also use bcrypt generators on the web&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6igdbp3vny3cxpdxz19x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6igdbp3vny3cxpdxz19x.png" alt="Configuration of Alert Manager Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xvfbnzvnlqxn4m7mbcq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xvfbnzvnlqxn4m7mbcq.png" alt="Configuration of Alert Manager Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1lu2g6d02ylpghozgxim.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1lu2g6d02ylpghozgxim.png" alt="Configuration of Alert Manager Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;web.yml (Upload this file in **suryasalertmanager ** Storage Account Share)&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;basic_auth_users:
  suryauser: $2a$12$6g5f3MZriVtoOZ7GrCEwzuTBxnPQwHurpktXTXUu1neg/XZeHzipy
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F21neo0p7tnyzaitwvxjg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F21neo0p7tnyzaitwvxjg.png" alt="Configuration of Alert Manager Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Set an Startup Commmand for Alert Manager WebApp which includes web.yml&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;az webapp config set --name $WebAppName --resource-group $ResourceGroupName --startup-file `
"--config.file=/etc/alertmanager/config.yml --web.config.file=/etc/alertmanager/web.yml --storage.path=/alertmanager --cluster.advertise-address=0.0.0.0:9093"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2012tymko9lb4adiyn1b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2012tymko9lb4adiyn1b.png" alt="Configuration of Alert Manager Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1mb1csom30puwhzc2ptd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1mb1csom30puwhzc2ptd.png" alt="Configuration of Alert Manager Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>azure</category>
      <category>monitoring</category>
      <category>tutorial</category>
      <category>alertmanager</category>
    </item>
    <item>
      <title>Configure Prometheus with Basic Authentication in Microsoft Azure WebApp</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Wed, 17 Aug 2022 08:48:06 +0000</pubDate>
      <link>https://forem.com/suryabhansv/configure-prometheus-with-basic-authentication-in-microsoft-azure-webapp-anp</link>
      <guid>https://forem.com/suryabhansv/configure-prometheus-with-basic-authentication-in-microsoft-azure-webapp-anp</guid>
      <description>&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Configuration of Prometheus Basic Authentication in Microsoft Azure WebApp.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pre-Requisite :&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/suryabhansv/deploying-prometheus-image-to-azure-container-registry-using-azure-cli-4b30"&gt;Deploying Prometheus Image to Azure Container Registry Using Azure CLI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/suryabhansv/setup-prometheus-in-microsoft-azure-webapp-using-azure-cli-253m"&gt;Setup Prometheus in Microsoft Azure (WebApp) using Azure CLI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Steps&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://prometheus.io/docs/guides/basic-auth/#creating-web-yml" rel="noopener noreferrer"&gt;Create a web.yml file (documentation)&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://bcrypt-generator.com/" rel="noopener noreferrer"&gt;You can also use bcrypt generators on the web&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6igdbp3vny3cxpdxz19x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6igdbp3vny3cxpdxz19x.png" alt="Configuration of Prometheus Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xvfbnzvnlqxn4m7mbcq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xvfbnzvnlqxn4m7mbcq.png" alt="Configuration of Prometheus Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1lu2g6d02ylpghozgxim.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1lu2g6d02ylpghozgxim.png" alt="Configuration of Prometheus Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;web.yml (Upload this file in **suryasprometheus** Storage Account Share)&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;basic_auth_users:
  suryauser: $2a$12$6g5f3MZriVtoOZ7GrCEwzuTBxnPQwHurpktXTXUu1neg/XZeHzipy
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzkokz6nfoi3ggs6ipqm6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzkokz6nfoi3ggs6ipqm6.png" alt="Configuration of Prometheus Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Set an Startup Commmand for Prometheus WebApp which includes web.yml&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;az webapp config set --name $WebAppName --resource-group $ResourceGroupName --startup-file `
"--config.file=/etc/prometheus/prometheus.yml --web.config.file=/etc/prometheus/web.yml --web.enable-lifecycle --storage.tsdb.retention.time=7d"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F08cn8bxbdj3xnzyn68cx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F08cn8bxbdj3xnzyn68cx.png" alt="Configuration of Prometheus Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;prometheus.yml (Upload this file in **suryasprometheus** Storage Account Share)&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# my global config
global:
  scrape_interval: 30s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 30s # Evaluate rules every 15 seconds. The default is every 1 minute.
  scrape_timeout: 30s #is set to the global default (10s).


# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.
  - job_name: "Prometheus"
    static_configs:
      - targets: ["suryawaprometheus.azurewebsites.net"]
    basic_auth:
        username: suryauser
        password: suryapassword
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5vxxhheanye3fhp56buw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5vxxhheanye3fhp56buw.png" alt="Configuration of Prometheus Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l4o1qm7ia9yq4pmr3s3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l4o1qm7ia9yq4pmr3s3.png" alt="Configuration of Prometheus Basic Authentication in Microsoft Azure WebApp"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>azure</category>
      <category>prometheus</category>
      <category>monitoring</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Setup Blackbox Exporter in Microsft Azure (WebApp) using Azure CLI</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Wed, 10 Aug 2022 09:54:17 +0000</pubDate>
      <link>https://forem.com/suryabhansv/setup-blackbox-exporter-in-microsft-azure-webapp-using-azure-cli-4lec</link>
      <guid>https://forem.com/suryabhansv/setup-blackbox-exporter-in-microsft-azure-webapp-using-azure-cli-4lec</guid>
      <description>&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create Blackbox Exporter WebApp in Microsoft Azure using Azure CLI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pre-Requisite :&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/suryabhansv/deploying-blackbox-exporter-image-to-azure-container-registry-using-azure-cli-5dii"&gt;Deploying Blackbox Exporter Image to Azure Container Registry Using Azure CLI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Resource will Create :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;App Service plan&lt;/li&gt;
&lt;li&gt;Storage account&lt;/li&gt;
&lt;li&gt;App Service&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Script&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ResourceGroupName      = "suryarg"
$LocationName           = "eastus2"
$ACRName                = "suryacr"
$ACRUrl                 = "$ACRName.azurecr.io"

$AppServicePlan         = "suryaasp"
$AppServicePlanSku      = "S1"
$StorageAccountName     = "suryastorageaccountsa"
$StorageAccountSku      = "Standard_ZRS"
$StorageAccountShare    = "suryasblackboxexporter"
$WebAppName             = "suryawablackboxexporter"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Create App Service Plan
az appservice plan create --resource-group $ResourceGroupName --name $AppServicePlan --is-linux --sku $AppServicePlanSku    

#Create a Storage Account
az storage account create --resource-group $ResourceGroupName --name $StorageAccountName --kind StorageV2 --sku $StorageAccountSku

#Create an Storage Account File Share
az storage share-rm create --resource-group $ResourceGroupName --storage-account $StorageAccountName --name $StorageAccountShare --access-tier "TransactionOptimized" --quota 64

#Create an Webapp for blackboxexporter
az webapp create --resource-group $ResourceGroupName --name $WebAppName --plan $AppServicePlan -i "$ACRUrl/blackbox-exporter:SuryaLatest"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Create Storage Mount for blackboxexporter WebApp
$storageaccountkey  =   $(az storage account keys list --resource-group $ResourceGroupName --account-name $StorageAccountName --query [0].value -o tsv)

az webapp config storage-account add --resource-group $ResourceGroupName --name $WebAppName --custom-id "config" --storage-type "AzureFiles" --share-name $StorageAccountShare --account-name $StorageAccountName --access-key $storageaccountkey  --mount-path "/config/"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Set an Environment Variable for blackboxexporter WebApp
az webapp config appsettings set --resource-group $ResourceGroupName --name $WebAppName --settings WEBSITES_PORT=9115

#Set an Startup Commmand for blackboxexporter WebApp
az webapp config set --name $WebAppName --resource-group $ResourceGroupName --startup-file `
"--config.file=/config/blackbox.yml"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;blackbox.yml (Upload this file in &lt;strong&gt;suryasblackboxexporter&lt;/strong&gt; Storage Account Share)
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;modules:
  http_2xx:
    prober: http
  http_post_2xx:
    prober: http
    http:
      method: POST
  tcp_connect:
    prober: tcp
  pop3s_banner:
    prober: tcp
    tcp:
      query_response:
      - expect: "^+OK"
      tls: true
      tls_config:
        insecure_skip_verify: false
  grpc:
    prober: grpc
    grpc:
      tls: true
      preferred_ip_protocol: "ip4"
  grpc_plain:
    prober: grpc
    grpc:
      tls: false
      service: "service1"
  ssh_banner:
    prober: tcp
    tcp:
      query_response:
      - expect: "^SSH-2.0-"
      - send: "SSH-2.0-blackbox-ssh-check"
  irc_banner:
    prober: tcp
    tcp:
      query_response:
      - send: "NICK prober"
      - send: "USER prober prober prober :prober"
      - expect: "PING :([^ ]+)"
        send: "PONG ${1}"
      - expect: "^:[^ ]+ 001"
  icmp:
    prober: icmp
  icmp_ttl5:
    prober: icmp
    timeout: 5s
    icmp:
      ttl: 5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--15T8XyvP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/prx8ne5wl2z5lgmf678u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--15T8XyvP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/prx8ne5wl2z5lgmf678u.png" alt="blackboxexporter" width="880" height="199"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://raw.githubusercontent.com/prometheus/blackboxexporter/main/doc/examples/simple.yml"&gt;Example file config.yml (Documentation)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Output :&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ApKBKLoy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6bg2dsrdaguru2za5w8z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ApKBKLoy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6bg2dsrdaguru2za5w8z.png" alt="blackboxexporter" width="880" height="330"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--LHHcslHo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s810l1yn7wsgi0bibgv2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--LHHcslHo--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s810l1yn7wsgi0bibgv2.png" alt="blackboxexporter" width="880" height="412"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KLJLCrD2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ux4e38rtmkmmw1zqxd3j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KLJLCrD2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ux4e38rtmkmmw1zqxd3j.png" alt="blackboxexporter" width="880" height="240"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xDvqxi1Z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8mvbye00g7zbfngfydrl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xDvqxi1Z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8mvbye00g7zbfngfydrl.png" alt="blackboxexporter" width="880" height="450"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--o_8OLBOD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c7dgrj2cojzav50w7jd6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--o_8OLBOD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c7dgrj2cojzav50w7jd6.png" alt="blackboxexporter" width="880" height="573"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>azure</category>
      <category>monitoring</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Setup Alertmanager in Microsft Azure (WebApp) using Azure CLI</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Mon, 25 Jul 2022 12:41:45 +0000</pubDate>
      <link>https://forem.com/suryabhansv/setup-alertmanager-in-microsft-azure-webapp-using-azure-cli-2pdj</link>
      <guid>https://forem.com/suryabhansv/setup-alertmanager-in-microsft-azure-webapp-using-azure-cli-2pdj</guid>
      <description>&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create Alertmanager WebApp in Microsoft Azure using Azure CLI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pre-Requisite :&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/suryabhansv/deploying-alertmanager-image-to-azure-container-registry-using-azure-cli-1mlb"&gt;Deploying Alertmanager Image to Azure Container Registry Using Azure CLI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Resource will Create :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;App Service plan&lt;/li&gt;
&lt;li&gt;Storage account&lt;/li&gt;
&lt;li&gt;App Service&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Script&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ResourceGroupName      = "suryarg"
$LocationName           = "eastus2"
$ACRName                = "suryacr"
$ACRUrl                 = "$ACRName.azurecr.io"

$AppServicePlan         = "suryaasp"
$AppServicePlanSku      = "S1"
$StorageAccountName     = "suryastorageaccountsa"
$StorageAccountSku      = "Standard_ZRS"
$StorageAccountShare    = "suryasalertmanager"
$WebAppName             = "suryawaalertmanager"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Create App Service Plan
az appservice plan create --resource-group $ResourceGroupName --name $AppServicePlan --is-linux --sku $AppServicePlanSku    

#Create a Storage Account
az storage account create --resource-group $ResourceGroupName --name $StorageAccountName --kind StorageV2 --sku $StorageAccountSku

#Create an Storage Account File Share
az storage share-rm create --resource-group $ResourceGroupName --storage-account $StorageAccountName --name $StorageAccountShare --access-tier "TransactionOptimized" --quota 64

#Create an Webapp for alertmanager
az webapp create --resource-group $ResourceGroupName --name $WebAppName --plan $AppServicePlan -i "$ACRUrl/alertmanager:SuryaLatest"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Create Storage Mount for alertmanager WebApp
$storageaccountkey  =   $(az storage account keys list --resource-group $ResourceGroupName --account-name $StorageAccountName --query [0].value -o tsv)

az webapp config storage-account add --resource-group $ResourceGroupName --name $WebAppName --custom-id "config" --storage-type "AzureFiles" --share-name $StorageAccountShare --account-name $StorageAccountName --access-key $storageaccountkey  --mount-path "/etc/alertmanager/"
az webapp config storage-account add --resource-group $ResourceGroupName --name $WebAppName --custom-id "data" --storage-type "AzureFiles" --share-name $StorageAccountShare --account-name $StorageAccountName --access-key $storageaccountkey  --mount-path "/data"
az webapp config storage-account add --resource-group $ResourceGroupName --name $WebAppName --custom-id "alertmanager" --storage-type "AzureFiles" --share-name $StorageAccountShare --account-name $StorageAccountName --access-key $storageaccountkey  --mount-path "/config"

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Set an Environment Variable for alertmanager WebApp
az webapp config appsettings set --resource-group $ResourceGroupName --name $WebAppName --settings WEBSITES_PORT=9093

#Set an Startup Commmand for alertmanager WebApp
az webapp config set --name $WebAppName --resource-group $ResourceGroupName --startup-file `
"--config.file=/etc/alertmanager/config.yml --storage.path=/alertmanager --cluster.advertise-address=0.0.0.0:9093"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;config.yml (Upload this file in &lt;strong&gt;suryasalertmanager&lt;/strong&gt; Storage Account Share)
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;global:
  # The smarthost and SMTP sender used for mail notifications.
  resolve_timeout: 5m
  smtp_smarthost: 'localhost:25'
  smtp_from: 'alertmanager@example.org'
  smtp_auth_username: 'alertmanager'
  smtp_auth_password: 'password'
  smtp_require_tls: true


route:
  receiver: default
  group_by:
  - DiskUsage
  - WindowsMemoryUsage
  routes:
  - receiver: email-high
    match_re:
      alertname: '(DiskSpaceUsageAbove90%|critical_node_cpu_usage)'
      severity: '(critical)'
    continue: true

  - receiver: email-low
    match_re:
      alertname: '(DiskSpaceUsageAbove60%)'
      severity: '(warning)'
    continue: true
  group_wait: 30s
  group_interval: 5m
  repeat_interval: 12h


inhibit_rules:
- source_match:
    severity: critical
  target_match:
    severity: warning
  equal:
  - DiskUsage
  - WindowsMemoryUsage

receivers:
- name: email-high
  email_configs:
  - send_resolved: true
    to: 'suryaalertmanager@high.com'


- name: email-low
  email_configs:
  - send_resolved: true
    to: 'suryaalertmanager@low.com'
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7fumk1zlkct86s4mmtgr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7fumk1zlkct86s4mmtgr.png" alt="alertmanager"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmwa9bktb6pxukukwtn2n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmwa9bktb6pxukukwtn2n.png" alt="alertmanager"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://raw.githubusercontent.com/prometheus/alertmanager/main/doc/examples/simple.yml" rel="noopener noreferrer"&gt;Example file config.yml (Documentation)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Output :&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsh9n7rjhek90qnle44kp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsh9n7rjhek90qnle44kp.png" alt="alertmanager"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvxqqe354jsedslxx4o79.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvxqqe354jsedslxx4o79.png" alt="alertmanager"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F829gebjnc0z3f00jfxs0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F829gebjnc0z3f00jfxs0.png" alt="alertmanager"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4z3uz7k1vwkid7t7t7q7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4z3uz7k1vwkid7t7t7q7.png" alt="alertmanager"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>azure</category>
      <category>monitoring</category>
      <category>tutorial</category>
      <category>codenewbie</category>
    </item>
    <item>
      <title>Setup Prometheus in Microsoft Azure (WebApp) using Azure CLI</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Sat, 23 Jul 2022 09:39:00 +0000</pubDate>
      <link>https://forem.com/suryabhansv/setup-prometheus-in-microsoft-azure-webapp-using-azure-cli-253m</link>
      <guid>https://forem.com/suryabhansv/setup-prometheus-in-microsoft-azure-webapp-using-azure-cli-253m</guid>
      <description>&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create Prometheus WebApp in Microsoft Azure using Azure CLI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pre-Requisite :&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/suryabhansv/deploying-prometheus-image-to-azure-container-registry-using-azure-cli-4b30"&gt;Deploying Prometheus Image to Azure Container Registry Using Azure CLI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Resource will Create :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;App Service plan&lt;/li&gt;
&lt;li&gt;Storage account&lt;/li&gt;
&lt;li&gt;App Service&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Script&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

$ResourceGroupName      = "suryarg"
$LocationName           = "eastus2"
$ACRName                = "suryacr"
$ACRUrl                 = "$ACRName.azurecr.io"

$AppServicePlan         = "suryaasp"
$AppServicePlanSku      = "S1"
$StorageAccountName     = "suryastorageaccountsa"
$StorageAccountSku      = "Standard_ZRS"
$StorageAccountShare    = "suryasprometheus"
$WebAppName             = "suryawaprometheus"


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

#Create App Service Plan
az appservice plan create --resource-group $ResourceGroupName --name $AppServicePlan --is-linux --sku $AppServicePlanSku    

#Create a Storage Account
az storage account create --resource-group $ResourceGroupName --name $StorageAccountName --kind StorageV2 --sku $StorageAccountSku

#Create an Storage Account File Share
az storage share-rm create --resource-group $ResourceGroupName --storage-account $StorageAccountName --name $StorageAccountShare --access-tier "TransactionOptimized" --quota 64

#Create an Webapp for Prometheus
az webapp create --resource-group $ResourceGroupName --name $WebAppName --plan $AppServicePlan -i "$ACRUrl/prometheus:SuryaLatest"


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

#Create Storage Mount for Prometheus WebApp
$storageaccountkey  =   $(az storage account keys list --resource-group $ResourceGroupName --account-name $StorageAccountName --query [0].value -o tsv)

az webapp config storage-account add --resource-group $ResourceGroupName --name $WebAppName --custom-id "prometheus" --storage-type "AzureFiles" --share-name $StorageAccountShare --account-name $StorageAccountName --access-key $storageaccountkey  --mount-path "/etc/prometheus"
az webapp config storage-account add --resource-group $ResourceGroupName --name $WebAppName --custom-id "prometheus_data" --storage-type "AzureFiles" --share-name $StorageAccountShare --account-name $StorageAccountName --access-key $storageaccountkey  --mount-path "/prometheus"


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

#Set an Environment Variable for Prometheus WebApp
az webapp config appsettings set --resource-group $ResourceGroupName --name $WebAppName --settings WEBSITES_PORT=9090

#Set an Startup Commmand for Prometheus WebApp
az webapp config set --name $WebAppName --resource-group $ResourceGroupName --startup-file {% raw %}`
"--config.file=/etc/prometheus/prometheus.yml --web.enable-lifecycle --storage.tsdb.retention.time=7d"
```


* prometheus.yml (Upload this file in **suryasprometheus** Storage Account Share)

```
# my global config
global:
  scrape_interval: 30s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 30s # Evaluate rules every 15 seconds. The default is every 1 minute.
  scrape_timeout: 30s #is set to the global default (10s).


# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.
  - job_name: "Prometheus"
    static_configs:
      - targets: ["suryawaprometheus.azurewebsites.net"]
```
![Prometheus.yml](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7cfym9ubbzkd5jhq3ddf.png)
![Prometheus.yml](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fd9k16rxaj83mcobx1yn.png)
![Prometheus.yml](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m6hhcqxco3kg3w9p24e7.png)


&amp;gt; * [Example file prometheus.yml (Documentation)](https://github.com/prometheus/prometheus/blob/release-2.37/config/testdata/conf.good.yml)


**Output :**


![Prometheus](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zrajylthrpjypngversf.png)
![Prometheus](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0ueh6ia1ke8f8wui79r9.png)
![Prometheus](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q8xgql6h4waak8atd1nu.png)
![Prometheus](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/abnllfmsxcbwc0l4y9lp.png)
![Prometheus](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8fdjj66l1tsfovg95wj0.png)
![Prometheus](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/033ig1ll3bgxwlkw8rpb.png)

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>prometheus</category>
      <category>azure</category>
      <category>monitoring</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Setup Grafana in Microsoft Azure (WebApp) using Azure CLI</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Thu, 14 Jul 2022 11:43:29 +0000</pubDate>
      <link>https://forem.com/suryabhansv/setup-grafana-in-microsoft-azure-webapp-using-azure-cli-493p</link>
      <guid>https://forem.com/suryabhansv/setup-grafana-in-microsoft-azure-webapp-using-azure-cli-493p</guid>
      <description>&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create Grafana WebApp in Microsoft Azure using Azure CLI&lt;/li&gt;
&lt;li&gt;Database is &lt;code&gt;mysql&lt;/code&gt; &lt;code&gt;Azure Database for MySQL single server&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pre-Requisite :&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/suryabhansv/deploying-grafana-image-to-azure-container-registry-using-azure-cli-mc4"&gt;Deploying Grafana Image to Azure Container Registry Using Azure CLI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Resource will Create :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;App Service plan&lt;/li&gt;
&lt;li&gt;Storage account&lt;/li&gt;
&lt;li&gt;App Service&lt;/li&gt;
&lt;li&gt;Azure Database for MySQL single server&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Script&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ResourceGroupName      = "suryarg"
$LocationName           = "eastus2"
$ACRName                = "suryacr"
$ACRUrl                 = "$ACRName.azurecr.io"

$AppServicePlan         = "suryaasp"
$AppServicePlanSku      = "S1"
$StorageAccountName     = "suryastorageaccountsa"
$StorageAccountSku      = "Standard_ZRS"
$StorageAccountShare    = "suryasgrafana"
$WebAppName             = "suryawagrafana"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$MYSQLServer            = "suryamysql"
$MYSQLDB                = "grafana"

#(Basic, Gen 5 hardware, 1 vCores).
$MYSQLServerSku         = "B_Gen5_1"
$MYSQLUsername          = "suryauser"
$MYSQLPassword          = "surya@pass@2022"
$IP                     = (Invoke-WebRequest -uri "https://api.ipify.org/").Content
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Create App Service Plan
az appservice plan create --resource-group $ResourceGroupName --name $AppServicePlan --is-linux --sku $AppServicePlanSku    

#Create a Storage Account
az storage account create --resource-group $ResourceGroupName --name $StorageAccountName --kind StorageV2 --sku $StorageAccountSku

#Create an Storage Account File Share
az storage share-rm create --resource-group $ResourceGroupName --storage-account $StorageAccountName --name $StorageAccountShare --access-tier "TransactionOptimized" --quota 64

#Create an Webapp for Grafana
az webapp create --resource-group $ResourceGroupName --name $WebAppName --plan $AppServicePlan -i "$ACRUrl/grafana:SuryaLatest"

#Create MYSQL Server for Grafana Database
az mysql server create --resource-group $ResourceGroupName --name $MYSQLServer --location $LocationName --admin-user $MYSQLUsername --admin-password $MYSQLPassword --sku-name $MYSQLServerSku --storage-size 5120

#Create MYSQL Database
az mysql db create --resource-group $ResourceGroupName --server-name $MYSQLServer --name $MYSQLDB
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Create Storage Mount for Grafana WebApp
$storageaccountkey  =   $(az storage account keys list --resource-group $ResourceGroupName --account-name $StorageAccountName --query [0].value -o tsv)

az webapp config storage-account add --resource-group $ResourceGroupName --name $WebAppName --custom-id "grafana" --storage-type "AzureFiles" --share-name $StorageAccountShare --account-name $StorageAccountName --access-key $storageaccountkey  --mount-path "/var/lib/grafana"
az webapp config storage-account add --resource-group $ResourceGroupName --name $WebAppName --custom-id "config" --storage-type "AzureFiles" --share-name $StorageAccountShare --account-name $StorageAccountName --access-key $storageaccountkey  --mount-path "/etc/grafana"
az webapp config storage-account add --resource-group $ResourceGroupName --name $WebAppName --custom-id "log" --storage-type "AzureFiles" --share-name $StorageAccountShare --account-name $StorageAccountName --access-key $storageaccountkey  --mount-path "/var/log/grafana"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Set an Environment Variable for Grafana WebApp
$envg0 = "mysql"
az webapp config appsettings set --resource-group $ResourceGroupName --name $WebAppName --settings GF_DATABASE_TYPE=$envg0

$envg1 = "mysql://$($MYSQLUsername)@$($MYSQLServer):$($MYSQLPassword)@$($MYSQLServer).mysql.database.azure.com:3306/$($MYSQLDB)"
az webapp config appsettings set --resource-group $ResourceGroupName --name $WebAppName --settings GF_DATABASE_URL=$envg1

$envg2="/etc/grafana/custom.ini"
az webapp config appsettings set --resource-group $ResourceGroupName --name $WebAppName --settings GF_PATHS_CONFIG=$envg2

$envg3="console file"
az webapp config appsettings set --resource-group $ResourceGroupName --name $WebAppName --settings GF_LOG_MODE=$envg3

$envg4="/var/log/grafana"
az webapp config appsettings set --resource-group $ResourceGroupName --name $WebAppName --settings GF_PATHS_LOGS=$envg4


az webapp config appsettings set --resource-group $ResourceGroupName --name $WebAppName --settings WEBSITES_PORT=3000
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#Allow WebApp IP Address in MySQL Server
$WebAppAllIP = (az webapp show --resource-group $ResourceGroupName --name $WebAppName --query possibleOutboundIpAddresses --output tsv).split(",")
foreach($singleIP in $WebAppAllIP)
{
    az mysql server firewall-rule create --resource-group $ResourceGroupName --server $MYSQLServer --name $WebAppAllIP.IndexOf($singleIP) --start-ip-address $singleIP --end-ip-address $singleIP
}

#Allow Current IP Address in MySQL Server
az mysql server firewall-rule create --resource-group $ResourceGroupName --server $MYSQLServer --name AllowMyIP --start-ip-address $IP --end-ip-address $IP
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Output :&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyqh2lujcw0uwjghkj88u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyqh2lujcw0uwjghkj88u.png" alt="Grafana1"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkwejk9suwi2c1wynvy0w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkwejk9suwi2c1wynvy0w.png" alt="Grafana2"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe4s9vohixyex2dzvgdez.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe4s9vohixyex2dzvgdez.png" alt="Grafana3"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft1fs2ufzkmvkl2r7a9u8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft1fs2ufzkmvkl2r7a9u8.png" alt="Grafana4"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fib9f1716iz6ll9ka0oig.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fib9f1716iz6ll9ka0oig.png" alt="Grafana5"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fru6xxhtmu42aeqjizuk3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fru6xxhtmu42aeqjizuk3.png" alt="Grafana6"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvxj5v77265akvnvuwmfg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvxj5v77265akvnvuwmfg.png" alt="Grafana7"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;_____________________________________&lt;strong&gt;&lt;em&gt;X&lt;/em&gt;&lt;/strong&gt;______________________________________&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F28m4w6s1ks7qnjk5twty.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F28m4w6s1ks7qnjk5twty.gif" alt="done"&gt;&lt;/a&gt; &lt;/p&gt;

</description>
      <category>azure</category>
      <category>grafana</category>
      <category>monitoring</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Deploying Blackbox Exporter Image to Azure Container Registry Using Azure CLI</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Tue, 12 Jul 2022 12:18:03 +0000</pubDate>
      <link>https://forem.com/suryabhansv/deploying-blackbox-exporter-image-to-azure-container-registry-using-azure-cli-5dii</link>
      <guid>https://forem.com/suryabhansv/deploying-blackbox-exporter-image-to-azure-container-registry-using-azure-cli-5dii</guid>
      <description>&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create BlackBox Exporter Image to Azure Container Registry using Azure CLI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt; &lt;/p&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;Private Container Image rather than Public Docker Hub Image.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Script&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ResourceGroupName  = "suryarg"
$LocationName       = "eastus2"
$ACRName            = "suryacr"
$ACRUrl             = "$ACRName.azurecr.io"

#Create a resource group
az group create --name $ResourceGroupName --location $LocationName

#Create a container registry
az acr create --resource-group $ResourceGroupName --name $ACRName --sku Basic --admin-enabled true


#Log in to Azure Container Registry
az acr login --name $ACRName


#First Pull latest BlackBox Exporter Image from DockerHub
docker pull prom/blackbox-exporter:latest

#Then Push into Azure Container Registry
docker tag prom/blackbox-exporter:latest $ACRUrl/blackbox-exporter:SuryaLatest
docker push $ACRUrl/blackbox-exporter:SuryaLatest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FFukuiz---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2jben8escnhop9h7eu7l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FFukuiz---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2jben8escnhop9h7eu7l.png" alt="Image" width="880" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XD3_9-Wh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/arhuja0u5s18uhebncrp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XD3_9-Wh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/arhuja0u5s18uhebncrp.png" alt="Image" width="880" height="391"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>azure</category>
      <category>docker</category>
      <category>tutorial</category>
      <category>blackbox</category>
    </item>
    <item>
      <title>Deploying AlertManager Image to Azure Container Registry Using Azure CLI</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Tue, 12 Jul 2022 07:53:11 +0000</pubDate>
      <link>https://forem.com/suryabhansv/deploying-alertmanager-image-to-azure-container-registry-using-azure-cli-1mlb</link>
      <guid>https://forem.com/suryabhansv/deploying-alertmanager-image-to-azure-container-registry-using-azure-cli-1mlb</guid>
      <description>&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create AlertManager Image to Azure Container Registry using Azure CLI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt; &lt;/p&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;Private Container Image rather than Public Docker Hub Image.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Script&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ResourceGroupName  = "suryarg"
$LocationName       = "eastus2"
$ACRName            = "suryacr"
$ACRUrl             = "$ACRName.azurecr.io"

#Create a resource group
az group create --name $ResourceGroupName --location $LocationName

#Create a container registry
az acr create --resource-group $ResourceGroupName --name $ACRName --sku Basic --admin-enabled true


#Log in to Azure Container Registry
az acr login --name $ACRName


#First Pull latest AlertManager Image from DockerHub
docker pull prom/alertmanager:latest

#Then Push into Azure Container Registry
docker tag prom/alertmanager:latest $ACRUrl/alertmanager:SuryaLatest
docker push $ACRUrl/alertmanager:SuryaLatest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--aJAf1pAe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wx4da6o32t2sg0jhssc3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aJAf1pAe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wx4da6o32t2sg0jhssc3.png" alt="Image" width="880" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--oKGKCXnb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kmef7nvig9y8kugxhtk7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--oKGKCXnb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kmef7nvig9y8kugxhtk7.png" alt="Image" width="880" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>azure</category>
      <category>docker</category>
      <category>tutorial</category>
      <category>alertmanager</category>
    </item>
    <item>
      <title>Deploying Prometheus Image to Azure Container Registry Using Azure CLI</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Mon, 11 Jul 2022 07:35:25 +0000</pubDate>
      <link>https://forem.com/suryabhansv/deploying-prometheus-image-to-azure-container-registry-using-azure-cli-4b30</link>
      <guid>https://forem.com/suryabhansv/deploying-prometheus-image-to-azure-container-registry-using-azure-cli-4b30</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Less Talk , More Code&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create Prometheus Image to Azure Container Registry using Azure CLI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt; &lt;/p&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;Private Container Image rather than Public Docker Hub Image.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Script&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ResourceGroupName  = "suryarg"
$LocationName       = "eastus2"
$ACRName            = "suryacr"
$ACRUrl             = "$ACRName.azurecr.io"

#Create a resource group
az group create --name $ResourceGroupName --location $LocationName

#Create a container registry
az acr create --resource-group $ResourceGroupName --name $ACRName --sku Basic --admin-enabled true


#Log in to Azure Container Registry
az acr login --name $ACRName


#First Pull latest Prometheus Image from DockerHub
docker pull prom/prometheus:latest

#Then Push into Azure Container Registry
docker tag prom/prometheus:latest $ACRUrl/prometheus:SuryaLatest
docker push $ACRUrl/prometheus:SuryaLatest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--53reUPtY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mc1ze7vz1beos3iu574r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--53reUPtY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mc1ze7vz1beos3iu574r.png" alt="1" width="880" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Y-gXCAky--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/di561ri7cpjbndjzzyi3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Y-gXCAky--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/di561ri7cpjbndjzzyi3.png" alt="2" width="880" height="378"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>azure</category>
      <category>prometheus</category>
      <category>tutorial</category>
      <category>docker</category>
    </item>
    <item>
      <title>Deploying Grafana Image to Azure Container Registry Using Azure CLI</title>
      <dc:creator>Suryabhan Singh Vaghela</dc:creator>
      <pubDate>Sat, 09 Jul 2022 13:50:58 +0000</pubDate>
      <link>https://forem.com/suryabhansv/deploying-grafana-image-to-azure-container-registry-using-azure-cli-mc4</link>
      <guid>https://forem.com/suryabhansv/deploying-grafana-image-to-azure-container-registry-using-azure-cli-mc4</guid>
      <description>&lt;p&gt;&lt;strong&gt;Goal :&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create Grafana Image to Azure Container Registry using Azure CLI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt; &lt;/p&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;Private Container Image rather than Public Docker Hub Image.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Script&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ResourceGroupName  = "suryarg"
$LocationName       = "eastus2"
$ACRName            = "suryacr"
$ACRUrl             = "$ACRName.azurecr.io"

#Create a resource group
az group create --name $ResourceGroupName --location $LocationName

#Create a container registry
az acr create --resource-group $ResourceGroupName --name $ACRName --sku Basic --admin-enabled true


#Log in to Azure Container Registry
az acr login --name $ACRName


#First Pull latest Grafana Image from DockerHub
docker pull grafana/grafana:latest

#Then Push into Azure Container Registry
docker tag grafana/grafana:latest $ACRUrl/grafana:SuryaLatest
docker push $ACRUrl/grafana:SuryaLatest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Result&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fln6e3hg0o2n58ii99ldu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fln6e3hg0o2n58ii99ldu.png" alt="1"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fabk92wvv1gs7v5sspq4f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fabk92wvv1gs7v5sspq4f.png" alt="2"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>azure</category>
      <category>grafana</category>
      <category>docker</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
