www

My personal website(s)
Log | Files | Refs

infrastructure.html (10432B)


      1 <!DOCTYPE html>
      2 <html lang="en">
      3 <head>
      4 <!-- Sep 03, 2024 -->
      5 <meta charset="utf-8" />
      6 <meta name="viewport" content="width=device-width, initial-scale=1" />
      7 <title>Infrastructure</title>
      8 <meta name="author" content="Vincent Demeester" />
      9 <meta name="generator" content="Org Mode" />
     10 <link rel='icon' type='image/x-icon' href='/images/favicon.ico'/>
     11 <meta name='viewport' content='width=device-width, initial-scale=1'>
     12 <link rel='stylesheet' href='/css/new.css' type='text/css'/>
     13 <link rel='stylesheet' href='/css/syntax.css' type='text/css'/>
     14 <link href='/index.xml' rel='alternate' type='application/rss+xml' title='Vincent Demeester' />
     15 </head>
     16 <body>
     17 <main id="content" class="content">
     18 <header>
     19 <h1 class="title">Infrastructure</h1>
     20 </header><p>
     21 This should cover links and idea around my infrastructure (and infrastructure in
     22 general). Their implementation should be <i>mostly</i> be covered on the <a href="config_configurations.html">configurations</a> part,
     23 as it all lives in my <a href="https://git.sr.ht/~vdemeester/home">monorepo</a>.
     24 </p>
     25 
     26 <p>
     27 I treat my local machine as <b>pet</b> but anything that is remote should
     28 be considered as cattle. This mainly means <b>it&rsquo;s a matter of
     29 minutes/hours to setup back those machines</b> (limiting factor here
     30 would be network and compute time). Everything should be reproductible
     31 as much as possible <b>and</b> tested if possible. It is also true for my <b>pet</b> machines
     32 though, they should be quick to re-setup if need be (from backups, …).
     33 </p>
     34 
     35 <nav id="table-of-contents" role="doc-toc">
     36 <h2>Table of Contents</h2>
     37 <div id="text-table-of-contents" role="doc-toc">
     38 <ul>
     39 <li><a href="#Needs%20and%20requirements">Needs and requirements</a></li>
     40 <li><a href="#Systems">Systems</a></li>
     41 <li><a href="#Triage">Triage</a></li>
     42 </ul>
     43 </div>
     44 </nav>
     45 <section id="outline-container-Needs%20and%20requirements" class="outline-2">
     46 <h2 id="Needs%20and%20requirements">Needs and requirements</h2>
     47 <div class="outline-text-2" id="text-Needs%20and%20requirements">
     48 <p>
     49 What are my needs and what are my requirements… Writing (and thinking) about them should
     50 help me decide what to do in terms of <i>Personal infrastructure</i>. Also, take into account
     51 my current &ldquo;hardware&rdquo; before taking decision (as &ldquo;this would be perfect, but does the
     52 current hardware do the job&rdquo;).
     53 </p>
     54 
     55 <p>
     56 One thing to note though, in <i>Personal infrastructure</i> I also have some elements that are
     57 related to work. I am a developer, and I work mainly on <a href="openshift.html">OpenShift</a> and <a href="kubernetes.html">Kubernetes</a>, and thus
     58 I need ways to create temporary cluster on my network.
     59 </p>
     60 
     61 <p>
     62 Let&rsquo;s split the <span class="underline">needs</span> into several parts:
     63 </p>
     64 
     65 <dl class="org-dl">
     66 <dt>Work</dt><dd><ul class="org-ul">
     67 <li>OpenShift cluster(s) for development and testing purpose
     68 <ul class="org-ul">
     69 <li><a href="openshift_on_vm_bare_metal.html">OpenShift on VM Bare metal</a></li>
     70 <li><a href="crc.html">OpenShift locally (CRC)</a></li>
     71 </ul></li>
     72 <li>Kubernetes cluster(s) for development and testing purpose
     73 <ul class="org-ul">
     74 <li><a href="kind.html">kind</a> for developement (one-node, locally or multiple node, remotely)</li>
     75 <li><a href="microk8s.html">microk8s</a> for <i>remote</i> development (multiple node)</li>
     76 <li><a href="kubernetes_on_nixos.html">kubernetes on nixos</a> for a &ldquo;long-term&rdquo; cluster running</li>
     77 </ul></li>
     78 </ul></dd>
     79 <dt>Personnal</dt><dd><ul class="org-ul">
     80 <li>Basics:
     81 <ul class="org-ul">
     82 <li>Backup and network data access (NAS)</li>
     83 <li>Secure Remote access to data and machines wherever they are (VPN)</li>
     84 <li>Sync between systems (some folders like documents, …)</li>
     85 </ul></li>
     86 <li>Extras:
     87 <ul class="org-ul">
     88 <li>Automation system à-là-ifttt
     89 <ul class="org-ul">
     90 <li>Async download system</li>
     91 <li>Notifications/Report system (todo deadlines, work report mail, …)</li>
     92 <li>Health tracking system (fitbit, … sync)</li>
     93 </ul></li>
     94 <li>Media library system
     95 <ul class="org-ul">
     96 <li>Music sync system (<code>music</code> &lt;-&gt; spotify if possible – i.e playlists, downloads)</li>
     97 <li>Same for Movies, TV Shows, …</li>
     98 </ul></li>
     99 <li>Private/public source repository (if not using <a href="github.html">github</a>, <a href="gitlab.html">gitlab</a>, <a href="git_sr_ht.html">git.sr.ht</a>, …)</li>
    100 <li>Cache system (for build, system updates, …)</li>
    101 <li>Sharing system (publish securely to a group of ppl)</li>
    102 <li>Messaging bouncer (irc, …) — get history, keep connected</li>
    103 </ul></li>
    104 <li>Bonus:
    105 <ul class="org-ul">
    106 <li>Personal libraries depot (ex <code>lib.tools</code>)</li>
    107 <li>Continous integration</li>
    108 </ul></li>
    109 </ul></dd>
    110 </dl>
    111 
    112 <p>
    113 The Basics <b>need</b> to be taken care of in priority, and <span class="underline">always working</span>. As in kanban, if
    114 those are not working, it&rsquo;s <b>top priority</b> to fix them.
    115 </p>
    116 
    117 <p>
    118 The Extras are nice to have but not required, so decide what to do for them depending on
    119 the time you have. This also means, if those are down for a reason, it&rsquo;s possible to not
    120 get them back up. And the <i>Bonus</i> are really if you&rsquo;re bored or have time to kill
    121 (i.e. never).
    122 </p>
    123 
    124 <p>
    125 Also, something for my future self : don&rsquo;t tie personal infrastructure together. What I
    126 mean by that is : use the right things (tools, hardware, …) that do the job, even if it&rsquo;s
    127 not the one you work on at work.
    128 </p>
    129 </div>
    130 </section>
    131 <section id="outline-container-Systems" class="outline-2">
    132 <h2 id="Systems">Systems</h2>
    133 <div class="outline-text-2" id="text-Systems">
    134 <p>
    135 I am going to list the different system I&rsquo;ve got, being <i>bare-metal</i> (aka laptop,
    136 workstation, nuc, …), in the <span class="underline">cloud</span> or VMs. Those are the <span class="underline">pet</span> systems, aka the ones
    137 that are significant. I won&rsquo;t list all the <span class="underline">cattle</span> VMs I&rsquo;ve got.
    138 </p>
    139 
    140 <div id="text-table-of-contents-1" role="doc-toc">
    141 <ul>
    142 <li><a href="#naruhodo">naruhodo</a></li>
    143 <li><a href="#wakasu">wakasu</a></li>
    144 <li><a href="#okinawa">okinawa</a></li>
    145 <li><a href="#sakhalin">sakhalin</a></li>
    146 <li><a href="#honshu">honshu</a></li>
    147 <li><a href="#kerkouane">kerkouane&#xa0;&#xa0;&#xa0;<span class="tag"><span class="remote">remote</span></span></a></li>
    148 <li><a href="#Systems--honshu">honshu</a></li>
    149 <li><a href="#hokkaido">hokkaido</a></li>
    150 <li><a href="#sapporo">sapporo</a></li>
    151 </ul>
    152 </div>
    153 </div>
    154 <div id="outline-container-naruhodo" class="outline-3">
    155 <h3 id="naruhodo">naruhodo</h3>
    156 <div class="outline-text-3" id="text-naruhodo">
    157 <p>
    158 Thinkpad t480s
    159 </p>
    160 </div>
    161 </div>
    162 <div id="outline-container-wakasu" class="outline-3">
    163 <h3 id="wakasu">wakasu</h3>
    164 <div class="outline-text-3" id="text-wakasu">
    165 <p>
    166 Thinkpad P50
    167 </p>
    168 </div>
    169 </div>
    170 <div id="outline-container-okinawa" class="outline-3">
    171 <h3 id="okinawa">okinawa</h3>
    172 </div>
    173 
    174 <div id="outline-container-sakhalin" class="outline-3">
    175 <h3 id="sakhalin">sakhalin</h3>
    176 </div>
    177 
    178 <div id="outline-container-honshu" class="outline-3">
    179 <h3 id="honshu">honshu</h3>
    180 </div>
    181 
    182 <div id="outline-container-kerkouane" class="outline-3">
    183 <h3 id="kerkouane">kerkouane&#xa0;&#xa0;&#xa0;<span class="tag"><span class="remote">remote</span></span></h3>
    184 </div>
    185 
    186 <div id="outline-container-Systems--honshu" class="outline-3">
    187 <h3 id="Systems--honshu">honshu</h3>
    188 <div class="outline-text-3" id="text-Systems--honshu">
    189 <p>
    190 macbook pro 13
    191 </p>
    192 </div>
    193 </div>
    194 <div id="outline-container-hokkaido" class="outline-3">
    195 <h3 id="hokkaido">hokkaido</h3>
    196 <div class="outline-text-3" id="text-hokkaido">
    197 <p>
    198 Dell
    199 </p>
    200 </div>
    201 </div>
    202 <div id="outline-container-sapporo" class="outline-3">
    203 <h3 id="sapporo">sapporo</h3>
    204 </div>
    205 </section>
    206 <section id="outline-container-Triage" class="outline-2">
    207 <h2 id="Triage">Triage</h2>
    208 <div class="outline-text-2" id="text-Triage">
    209 </div>
    210 <div id="outline-container-Softwares%20and%20tools" class="outline-3">
    211 <h3 id="Softwares%20and%20tools">Softwares and tools</h3>
    212 <div class="outline-text-3" id="text-Softwares%20and%20tools">
    213 <ul class="org-ul">
    214 <li><a href="email.html">email</a>s</li>
    215 <li><a href="ipfs.html">ipfs</a></li>
    216 <li><a href="https://www.paritybit.ca/blog/setting-up-a-status-page">Setting Up a Status Page - paritybit.ca</a></li>
    217 </ul>
    218 </div>
    219 </div>
    220 <div id="outline-container-Links" class="outline-3">
    221 <h3 id="Links">Links</h3>
    222 <div class="outline-text-3" id="text-Links">
    223 </div>
    224 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fjkcfg.github.io%2F%23%2F%5D%5Bjk%5D%5D" class="outline-4">
    225 <h4 id="%5B%5Bhttps%3A%2F%2Fjkcfg.github.io%2F%23%2F%5D%5Bjk%5D%5D"><span class="todo TODO">TODO</span> <a href="https://jkcfg.github.io/#/">jk</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="configuration">configuration</span>&#xa0;<span class="infra">infra</span></span></h4>
    226 <div class="outline-text-4" id="text-%5B%5Bhttps%3A%2F%2Fjkcfg.github.io%2F%23%2F%5D%5Bjk%5D%5D">
    227 <p>
    228 <span class="timestamp-wrapper"><span class="timestamp">[2020-01-03 Fri 17:02]</span></span>
    229 </p>
    230 </div>
    231 </div>
    232 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fferd.ca%2Fa-pipeline-made-of-airbags.html%5D%5BA%20Pipeline%20Made%20of%20Airbags%5D%5D" class="outline-4">
    233 <h4 id="%5B%5Bhttps%3A%2F%2Fferd.ca%2Fa-pipeline-made-of-airbags.html%5D%5BA%20Pipeline%20Made%20of%20Airbags%5D%5D"><span class="todo TODO">TODO</span> <a href="https://ferd.ca/a-pipeline-made-of-airbags.html">A Pipeline Made of Airbags</a></h4>
    234 <div class="outline-text-4" id="text-%5B%5Bhttps%3A%2F%2Fferd.ca%2Fa-pipeline-made-of-airbags.html%5D%5BA%20Pipeline%20Made%20of%20Airbags%5D%5D">
    235 <p>
    236 <span class="timestamp-wrapper"><span class="timestamp">[2020-09-25 Fri 11:46]</span></span>
    237 </p>
    238 </div>
    239 </div>
    240 </div>
    241 </section>
    242 </main>
    243 <footer id="postamble" class="status">
    244 <footer>
    245      <small><a href="/" rel="history">Index</a> • <a href="/sitemap.html">Sitemap</a> • <a href="https://dl.sbr.pm/">Files</a></small><br/>
    246      <small class='questions'>Questions, comments ? Please use my <a href="https://lists.sr.ht/~vdemeester/public-inbox">public inbox</a> by sending a plain-text email to <a href="mailto:~vdemeester/public-inbox@lists.sr.ht">~vdemeester/public-inbox@lists.sr.ht</a>.</small><br/>
    247      <small class='copyright'>
    248       Content and design by Vincent Demeester
    249       (<a rel='licence' href='http://creativecommons.org/licenses/by-nc-sa/3.0/'>Some rights reserved</a>)
    250     </small><br />
    251 </footer>
    252 </footer>
    253 </body>
    254 </html>