<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/atom.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Posts tagged: infrastructure</title>
  <id>https://pype.dev/tags/infrastructure/atom.xml</id>
  <updated>2025-06-16T20:56:57Z</updated>
  <subtitle>All posts with the tag &#34;infrastructure&#34;</subtitle>
  <link href="https://pype.dev/tags/infrastructure/" rel="alternate" type="text/html"></link>
  <link href="https://pype.dev/tags/infrastructure/atom.xml" rel="self" type="application/atom+xml"></link>
  <author>
    <name>Nic Payne</name>
  </author>
  <generator uri="https://github.com/WaylonWalker/markata-go">markata-go</generator>
  <entry>
    <title>💭 Cross Account AWS Security Group ID Reference</title>
    <id>https://pype.dev/thoughts-700/</id>
    <updated>2025-06-16T20:56:57Z</updated>
    <published>2025-06-16T20:56:57Z</published>
    <link href="https://pype.dev/thoughts-700/" rel="alternate" type="text/html"></link>
    <summary type="text">I needed to update some ingress rules across several AWS accounts and ran into an issue when I had to reference a securi</summary>
    <content type="html">&lt;a href=&#34;https://stackoverflow.com/questions/12465978/can-aws-security-groups-on-one-aws-account-reference-security-groups-in-another&#34;&gt;&#xA;    &lt;img&#xA;        src=&#34;https://shots.wayl.one/shot/?url=https://stackoverflow.com/questions/12465978/can-aws-security-groups-on-one-aws-account-reference-security-groups-in-another&amp;height=450&amp;width=800&amp;scaled_width=800&amp;scaled_height=450&amp;selectors=&#34;&#xA;        alt=&#34;shot of post - Cross Account AWS Security Group ID Reference&#34;&#xA;        height=450&#xA;        width=800&#xA;    &gt;&#xA;&lt;/a&gt;&#xA;&lt;p&gt;Here&amp;rsquo;s my thought on &lt;a href=&#34;https://stackoverflow.com/questions/12465978/can-aws-security-groups-on-one-aws-account-reference-security-groups-in-another&#34;&gt;Cross Account AWS Security Group ID Reference&lt;/a&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;I needed to update some ingress rules across several AWS accounts and ran into an issue when I had to reference a security group id in another account - turns out &lt;accountid&gt;/&lt;securitygroupid&gt; is the money maker&lt;/p&gt;&#xA;&lt;p&gt;EDIT: this requires VPC Peering&amp;hellip;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This is one of [[ my-thoughts ]]. I picked this up from &lt;a href=&#34;https://waylonwalker.com&#34;&gt;Waylon Walker&lt;/a&gt;(&lt;a href=&#34;https://thoughts.waylonwalker.com&#34;&gt;https://thoughts.waylonwalker.com&lt;/a&gt;). It&amp;rsquo;s a short note that I make about someone else&amp;rsquo;s content online.  Learn more about the process &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;My thoughts are found at my thoughts feed&#34; data-date=&#34;2025-06-09&#34; data-preview=&#34;My thoughts are found at my thoughts feed&#34;&gt;Thoughts&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Nic Payne</name>
      <uri>https://pype.dev</uri>
    </author>
  </entry>
  <entry>
    <title>💭 Failed to load state: unsupported checkable object kind var - …</title>
    <id>https://pype.dev/thoughts-699/</id>
    <updated>2025-06-16T20:27:07Z</updated>
    <published>2025-06-16T20:27:07Z</published>
    <link href="https://pype.dev/thoughts-699/" rel="alternate" type="text/html"></link>
    <summary type="text">I have spacelift stacks managed with open tofu and stacks managed with terraform... Due to this very issue I think, I ra</summary>
    <content type="html">&lt;a href=&#34;https://discuss.hashicorp.com/t/failed-to-load-state-unsupported-checkable-object-kind-var/61844/2&#34;&gt;&#xA;    &lt;img&#xA;        src=&#34;https://shots.wayl.one/shot/?url=https://discuss.hashicorp.com/t/failed-to-load-state-unsupported-checkable-object-kind-var/61844/2&amp;height=450&amp;width=800&amp;scaled_width=800&amp;scaled_height=450&amp;selectors=&#34;&#xA;        alt=&#34;shot of post - Failed to load state: unsupported checkable object kind var - #2 by apparentlymart - Terraform - HashiCorp Discuss&#34;&#xA;        height=450&#xA;        width=800&#xA;    &gt;&#xA;&lt;/a&gt;&#xA;&lt;p&gt;Here&amp;rsquo;s my thought on &lt;a href=&#34;https://discuss.hashicorp.com/t/failed-to-load-state-unsupported-checkable-object-kind-var/61844/2&#34;&gt;Failed to load state: unsupported checkable object kind var - #2 by apparentlymart - Terraform - HashiCorp Discuss&lt;/a&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;I have spacelift stacks managed with open tofu and stacks managed with terraform&amp;hellip; Due to this very issue I think, I ran into a problem where a terraform-managed spacelift stack couldn&amp;rsquo;t use the &lt;code&gt;terraform_remote_state&lt;/code&gt; data resource to load the state of the open-tofu managed stacks because of state file differences&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;div class=&#34;admonition note&#34;&gt;&#xA;&lt;p class=&#34;admonition-title&#34;&gt;Note&lt;/p&gt;&#xA;&lt;p&gt;This is one of [[ my-thoughts ]]. I picked this up from &lt;a href=&#34;https://waylonwalker.com&#34;&gt;Waylon Walker&lt;/a&gt;(&lt;a href=&#34;https://thoughts.waylonwalker.com&#34;&gt;https://thoughts.waylonwalker.com&lt;/a&gt;). It&amp;rsquo;s a short note that I make about someone else&amp;rsquo;s content online.  Learn more about the process &lt;a href=&#34;/thoughts/&#34; class=&#34;wikilink&#34; data-title=&#34;Thoughts&#34; data-description=&#34;My thoughts are found at my thoughts feed&#34; data-date=&#34;2025-06-09&#34; data-preview=&#34;My thoughts are found at my thoughts feed&#34;&gt;Thoughts&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</content>
    <author>
      <name>Nic Payne</name>
      <uri>https://pype.dev</uri>
    </author>
  </entry>
  <entry>
    <title>Aurora U-Blue ZRAM Config</title>
    <id>https://pype.dev/aurora-u-blue-zram-config/</id>
    <updated>2025-05-27T13:51:27Z</updated>
    <published>2025-05-27T13:51:27Z</published>
    <link href="https://pype.dev/aurora-u-blue-zram-config/" rel="alternate" type="text/html"></link>
    <summary type="text">I keep running out of space with my swap getting maxxed out... I don&#39;t know why but U-Blue uses Zram already and apparently I can easily override the defaults:</summary>
    <content type="html">&lt;p&gt;I keep running out of space with my swap getting maxxed out&amp;hellip; I don&amp;rsquo;t know why but U-Blue uses Zram already and apparently I can easily override the defaults:&lt;/p&gt;&#xA;&lt;p&gt;in &lt;code&gt;usr/lib/systemd/zram-generator.conf&lt;/code&gt;&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code class=&#34;language-conf&#34;&gt;&#xA;# This config file enables a /dev/zram0 device with the default settings:&#xA;# — size — same as available RAM or 8GB, whichever is less&#xA;# — compression — most likely lzo-rle&#xA;#&#xA;# To disable, uninstall zram-generator-defaults or create empty&#xA;# /etc/systemd/zram-generator.conf file.&#xA;[zram0]&#xA;zram-size = min(ram, 8192)&#xA;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;And so I just made my own file in &lt;code&gt;/etc/systemd/zram-generator.conf&lt;/code&gt;:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code class=&#34;language-conf&#34;&gt;&#xA;[zram0]&#xA;zram-size = min(ram, 16384)&#xA;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;</content>
    <author>
      <name>Nic Payne</name>
      <uri>https://pype.dev</uri>
    </author>
  </entry>
  <entry>
    <title>Grafana + Gotify for push notifications</title>
    <id>https://pype.dev/grafana-gotify-for-push-notifications/</id>
    <updated>2025-04-07T10:12:51Z</updated>
    <published>2025-04-07T10:12:51Z</published>
    <link href="https://pype.dev/grafana-gotify-for-push-notifications/" rel="alternate" type="text/html"></link>
    <summary type="text">It&#39;s easy to configure push notifications through Gotify from Grafana by setting up a generic Alerting Contact Point...</summary>
    <content type="html">&lt;p&gt;It&amp;rsquo;s easy to configure push notifications through Gotify from Grafana by setting up a generic &lt;code&gt;Webhook&lt;/code&gt; Alerting Contact Point&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;The parameters are:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;HTTP Method: POST&lt;/li&gt;&#xA;&lt;li&gt;URL: http://&lt;gotify url&gt;/message&lt;/li&gt;&#xA;&lt;li&gt;Authentication is done with an app token generated from Gotify, and you put it in &lt;code&gt;Authorization Header: Credentials&lt;/code&gt; in the Grafana configuration&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://dropper.wayl.one/api/file/610b4efb-b4c4-4930-ac63-499d501ba3c3.png&#34;&gt;See image&lt;/a&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Nic Payne</name>
      <uri>https://pype.dev</uri>
    </author>
  </entry>
  <entry>
    <title>Recovering from zpool corruption when you’re short a drive</title>
    <id>https://pype.dev/recovering-from-zpool-corruption-when-you-re-short-a-drive/</id>
    <updated>2025-02-03T21:08:56Z</updated>
    <published>2025-02-03T21:08:56Z</published>
    <link href="https://pype.dev/recovering-from-zpool-corruption-when-you-re-short-a-drive/" rel="alternate" type="text/html"></link>
    <summary type="text">can only mount tank RO - so can&#39;t rename - also can&#39;t detach which is what I&#39;d want</summary>
    <content type="html">&lt;ol&gt;&#xA;&lt;li&gt;can only mount tank RO&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;so can&amp;rsquo;t rename&lt;/li&gt;&#xA;&lt;li&gt;also can&amp;rsquo;t detach which is what I&amp;rsquo;d want&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;ol start=&#34;2&#34;&gt;&#xA;&lt;li&gt;Could import pool witn -N to not mount any datasets&lt;/li&gt;&#xA;&lt;li&gt;detach and attach&lt;/li&gt;&#xA;&lt;li&gt;resilver&amp;hellip;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;</content>
    <author>
      <name>Nic Payne</name>
      <uri>https://pype.dev</uri>
    </author>
  </entry>
  <entry>
    <title>Deployments are not StatefulSets</title>
    <id>https://pype.dev/deployments-are-not-statefulsets/</id>
    <updated>2025-01-15T18:07:57Z</updated>
    <published>2025-01-15T18:07:57Z</published>
    <link href="https://pype.dev/deployments-are-not-statefulsets/" rel="alternate" type="text/html"></link>
    <summary type="text">I was debugging some ArgoCD stuff earlier today and I love using k9s to explore my k8s resources.</summary>
    <content type="html">&lt;p&gt;I was debugging some ArgoCD stuff earlier today and I love using k9s to explore&#xA;my k8s resources.&lt;/p&gt;&#xA;&lt;p&gt;The TLDR is that I put some bad env vars in the &lt;code&gt;global&lt;/code&gt; values for my ArgoCD&#xA;pods, this caused the webUI to hang. An easy way to push things through is to&#xA;open k9s, view the Deployments, and edit the env vars there so the pods can be&#xA;in the right state to restart and pickup the changes (you&amp;rsquo;ve obviously fixed&#xA;the values file already right?)&lt;/p&gt;&#xA;&lt;p&gt;Well the Notification Controller was the pod hanging, and I couldn&amp;rsquo;t find it in&#xA;the Deployments view! This blew my mind&amp;hellip; until I realized that it was a&#xA;Stateful Set.&lt;/p&gt;&#xA;&lt;p&gt;So, this is not a comparison of the 2 - this is just a note to say that all I&#xA;had to do was find the StatefulSets in k9s and do the same workflow for editing&#xA;what I needed to edit to get the pods into workable state while working on the&#xA;values file&amp;hellip;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Nic Payne</name>
      <uri>https://pype.dev</uri>
    </author>
  </entry>
  <entry>
    <title>statically.io to help me out</title>
    <id>https://pype.dev/statically-io-to-help-me-out/</id>
    <updated>2024-12-14T13:35:31Z</updated>
    <published>2024-12-14T13:35:31Z</published>
    <link href="https://pype.dev/statically-io-to-help-me-out/" rel="alternate" type="text/html"></link>
    <summary type="text">statically.io offers a CDN that I&#39;m going to try to lean into for images in my blog. My hope is that the builds get and stay fast, and that page loads are...</summary>
    <content type="html">&lt;p&gt;&lt;a href=&#34;https://statically.io&#34;&gt;statically.io&lt;/a&gt; offers a CDN that I&amp;rsquo;m going to try to lean into for images in my blog. My hope is that the builds get and stay fast, and that page loads are fast too.&lt;/p&gt;&#xA;&lt;p&gt;Example:&lt;/p&gt;&#xA;&lt;pre class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;img&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;src&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;https://cdn.statically.io/gh/pypeaday/images.pype.dev/main/blog-media/skimpy-zsh.png&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;alt&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;Skimpy ZSH&amp;#34;&lt;/span&gt; &lt;span class=&#34;na&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;A fancy data summary in the shell&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;img src=&#34;https://cdn.statically.io/gh/pypeaday/images.pype.dev/main/blog-media/skimpy-zsh.png&#34; alt=&#34;Skimpy ZSH&#34; title=&#34;A fancy data summary in the shell&#34; /&gt;&#xA;</content>
    <author>
      <name>Nic Payne</name>
      <uri>https://pype.dev</uri>
    </author>
  </entry>
  <entry>
    <title>OPNSense Bootstrap Recovery</title>
    <id>https://pype.dev/opnsense-bootstrap-recovery/</id>
    <updated>2024-11-07T08:40:19Z</updated>
    <published>2024-11-07T08:40:19Z</published>
    <link href="https://pype.dev/opnsense-bootstrap-recovery/" rel="alternate" type="text/html"></link>
    <summary type="text">enabling DHCP WAN port ()- running the bootstrap script -</summary>
    <content type="html">&lt;p&gt;enabling DHCP WAN port (&lt;code&gt;dhclient &amp;lt;iface&amp;gt;&lt;/code&gt;)- running the bootstrap script - &lt;code&gt;sh /usr/local/sbin/opnsense-bootstrap&lt;/code&gt;&lt;/p&gt;&#xA;</content>
    <author>
      <name>Nic Payne</name>
      <uri>https://pype.dev</uri>
    </author>
  </entry>
</feed>