<?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>DEV Community: Matthew Evan Eichler</title>
    <description>The latest articles on DEV Community by Matthew Evan Eichler (@bijkler).</description>
    <link>https://dev.to/bijkler</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%2F2558136%2F188f230e-d673-4e07-bed4-d4c88e5d4d60.jpg</url>
      <title>DEV Community: Matthew Evan Eichler</title>
      <link>https://dev.to/bijkler</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/bijkler"/>
    <language>en</language>
    <item>
      <title>swiss tables in go</title>
      <dc:creator>Matthew Evan Eichler</dc:creator>
      <pubDate>Wed, 26 Feb 2025 10:04:55 +0000</pubDate>
      <link>https://dev.to/bijkler/swiss-tables-in-go-5d7e</link>
      <guid>https://dev.to/bijkler/swiss-tables-in-go-5d7e</guid>
      <description></description>
      <category>database</category>
      <category>programming</category>
    </item>
    <item>
      <title>AWS CDK Typescript: Adding Extra Nodes to Study Kubernetes Availability</title>
      <dc:creator>Matthew Evan Eichler</dc:creator>
      <pubDate>Wed, 05 Feb 2025 11:06:56 +0000</pubDate>
      <link>https://dev.to/bijkler/aws-cdk-typescript-adding-extra-nodes-to-study-kubernetes-availability-5hj5</link>
      <guid>https://dev.to/bijkler/aws-cdk-typescript-adding-extra-nodes-to-study-kubernetes-availability-5hj5</guid>
      <description>&lt;p&gt;This installment of the AWS CDK Typescript code for setting up an environment for studying Kubernetes Fundamentals (&lt;a href="https://trainingportal.linuxfoundation.org/courses/kubernetes-fundamentals-lfs258" rel="noopener noreferrer"&gt;course LFS258 from the Linux/Cloud Native Foundation&lt;/a&gt;) shows how to easily add three extra EC2 instances for playing with higher availability options for your learning Kubenetes cluster.&lt;/p&gt;

&lt;p&gt;I used &lt;code&gt;extra1&lt;/code&gt; for the HA Proxy then &lt;code&gt;extra2&lt;/code&gt; and &lt;code&gt;extra3&lt;/code&gt; to join Control Plane Nodes with the cluster.  You can, of course, play with these extra instances as you will:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;kubectl get nodes
NAME     STATUS   ROLES           AGE     VERSION
&lt;span class="nb"&gt;cp       &lt;/span&gt;Ready    control-plane   21d     v1.31.1
extra2   Ready    control-plane   4d20h   v1.30.9
extra3   Ready    control-plane   4d20h   v1.30.9
k8swk1   Ready    control-plane   21d     v1.31.1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  &lt;a href="https://github.com/aventinesolutions/lfx-study-aws-cdk-kubernetes/pull/4" rel="noopener noreferrer"&gt;Pull Request #4&lt;/a&gt;
&lt;/h2&gt;

</description>
      <category>awscdk</category>
      <category>typescript</category>
      <category>kubernetesfundamentals</category>
      <category>lfs258</category>
    </item>
    <item>
      <title>I'm GitOps Certified</title>
      <dc:creator>Matthew Evan Eichler</dc:creator>
      <pubDate>Tue, 04 Feb 2025 19:38:28 +0000</pubDate>
      <link>https://dev.to/bijkler/im-gitops-certified-e0d</link>
      <guid>https://dev.to/bijkler/im-gitops-certified-e0d</guid>
      <description>&lt;p&gt;🧠 I'm &lt;a href="https://www.credly.com/badges/d00bc127-6d0d-4527-b185-0d99c8e9b085/public_url" rel="noopener noreferrer"&gt;GitOps with Argo Certified (Fundamentals) from Codefresh&lt;/a&gt;, check out the training and certification. 🎉🥳&lt;/p&gt;

</description>
      <category>certification</category>
      <category>gitops</category>
      <category>argocd</category>
      <category>codefresh</category>
    </item>
    <item>
      <title>AWS CDK Typescript: Adding Custom Initialisation to EC2 Instances</title>
      <dc:creator>Matthew Evan Eichler</dc:creator>
      <pubDate>Wed, 22 Jan 2025 11:06:39 +0000</pubDate>
      <link>https://dev.to/bijkler/aws-cdk-typescript-adding-custom-initialisation-to-ec2-instances-5hf9</link>
      <guid>https://dev.to/bijkler/aws-cdk-typescript-adding-custom-initialisation-to-ec2-instances-5hf9</guid>
      <description>&lt;p&gt;In my last post, I introduced an AWS CDK Typescript example repository which can build and destroy two EC2 instances if you are taking the &lt;a href="https://training.linuxfoundation.org/training/kubernetes-fundamentals/" rel="noopener noreferrer"&gt;Linux Foundation LFS258 Kubernetes Fundamentals&lt;/a&gt; self-paced course.  You can work on the course and tear down the Stacks at the end of the day to avoid any extra Cloud Costs.&lt;/p&gt;

&lt;p&gt;But doing this over and over again can be tedious setting up the Ubuntu packages everytime you start the next day over.  This is where the User Data for AWS EC2 virtuals machines comes in.  You can introduce a script that gets executed each time a new EC2 instance is created, sparing you some extra time.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/aventinesolutions/lfx-study-aws-cdk-kubernetes/pull/3/files" rel="noopener noreferrer"&gt;aventinesolutions/lfx-study-aws-cdk-kubernetes Pull Request #3&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this case,&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;We first want to prepare our Ubuntu boxes with some changes to system configuration and ensure a couple of modules are loaded.&lt;/li&gt;
&lt;li&gt;We also use &lt;code&gt;apt&lt;/code&gt; to fully update all packages&lt;/li&gt;
&lt;li&gt;Then we set up the package signing keys in a GnuPG keyring. &lt;/li&gt;
&lt;li&gt;Next, we install the Docker, Kubernetes and Helm packages required before we can start building our cluster according to the course.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;After the Cloud Formation Stack has completed, how do I know my initialisation script worked correctly?  I found the output in &lt;code&gt;/var/log/cloud-init-output.log&lt;/code&gt; ...&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;...
Preparing to unpack .../helm_3.16.3-1_amd64.deb ...
Unpacking helm (3.16.3-1) ...
Setting up helm (3.16.3-1) ...
Processing triggers for man-db (2.10.2-1) ...
... etc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can use this as a pattern when you need also need a few set-up customisations for the EC2 image you use.  However, if you have many   changes from your chosen base image, then it would probably scale-up better to create your own custom Amazon Machine Image [AMI] from an EC2 instance that you have thoroughly tested (refer to this &lt;a href="https://dev.to/matrey/build-your-own-ubuntu-ami-4k9h"&gt;post "Build Your Own Ubuntu AMI"&lt;/a&gt; from &lt;a class="mentioned-user" href="https://dev.to/matrey"&gt;@matrey&lt;/a&gt; Mathieu Rey)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html" rel="noopener noreferrer"&gt;Run Commands When You Launch an EC2 Instance with User Data Input&lt;/a&gt; on AWS Docs&lt;/p&gt;

</description>
      <category>awscdk</category>
      <category>typescript</category>
      <category>userdata</category>
    </item>
    <item>
      <title>AWS CDK Typescript Simple Project for Cloud Formation of Resources Required for Kubernetes Study</title>
      <dc:creator>Matthew Evan Eichler</dc:creator>
      <pubDate>Mon, 30 Dec 2024 12:27:34 +0000</pubDate>
      <link>https://dev.to/bijkler/aws-cdk-typescript-simple-project-for-cloud-formation-of-resources-required-for-kubernetes-study-192n</link>
      <guid>https://dev.to/bijkler/aws-cdk-typescript-simple-project-for-cloud-formation-of-resources-required-for-kubernetes-study-192n</guid>
      <description>&lt;p&gt;This repository demonstrates using the AWS Cloud Development Kit (CDK) to build infrastructure for self-paced Kubernetes courses and Linux Foundation certifications. It showcases cross-stack dependencies, where the VPC and security groups are defined in a separate stack from the compute resources. This approach avoids the potential for unintended destruction often associated with nested stacks, especially in complex CloudFormation deployments. The Kubernetes node scaling is easily configurable to accommodate advanced courses (e.g., three worker and three control plane nodes). Developed using JetBrains IntelliJ Ultimate. Feedback welcome!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/aventinesolutions/lfx-study-aws-cdk-kubernetes" rel="noopener noreferrer"&gt;aventinesolutions/lfx-study-aws-cdk-kubernetes&lt;/a&gt;&lt;/p&gt;

</description>
      <category>awscdk</category>
      <category>kubernetes</category>
      <category>cloudformation</category>
      <category>learning</category>
    </item>
    <item>
      <title>Rust is Still Promising as a Replacement for C++</title>
      <dc:creator>Matthew Evan Eichler</dc:creator>
      <pubDate>Fri, 20 Dec 2024 16:30:33 +0000</pubDate>
      <link>https://dev.to/bijkler/rust-is-still-promising-as-a-replacement-for-c-3aec</link>
      <guid>https://dev.to/bijkler/rust-is-still-promising-as-a-replacement-for-c-3aec</guid>
      <description>&lt;p&gt;&lt;a href="https://www.jetbrains.com/lp/devecosystem-2024" rel="noopener noreferrer"&gt;Jet Brains Developers' Survey for 2024&lt;/a&gt; ... Rust is still promising as a memory safe replacement for C++ with the highest popularily, along with Go Lang, among Developers who "plan to adopt a new language." Both languages have robust concurrency in mind.&lt;/p&gt;

</description>
      <category>developerssurvey2024</category>
      <category>jetbrains</category>
    </item>
    <item>
      <title>Multiple Stacks in AWS CDK (Typescript)</title>
      <dc:creator>Matthew Evan Eichler</dc:creator>
      <pubDate>Wed, 11 Dec 2024 14:49:50 +0000</pubDate>
      <link>https://dev.to/bijkler/multiple-stacks-in-aws-cdk-typescript-bic</link>
      <guid>https://dev.to/bijkler/multiple-stacks-in-aws-cdk-typescript-bic</guid>
      <description>&lt;p&gt;It is possible to build multiple, separate Cloud Formation Stacks in a single AWS CDK project.  Perhaps that is better when scaling up ... I mean, does this avoid accidental destruction when using Nested Stacks? &lt;a href="https://docs.aws.amazon.com/cdk/v2/guide/stack_how_to_create_multiple_stacks.html" rel="noopener noreferrer"&gt;How to Create Multiple Stacks&lt;/a&gt;&lt;/p&gt;

</description>
      <category>awscdk</category>
      <category>devops</category>
      <category>agilearchitecture</category>
    </item>
  </channel>
</rss>
