images/avatar.jpg

Nick Neisen

Setting up a proxy with NGINX

What is a proxy?

In its simplest form, a proxy is a server that listens for requests and redirects them to other servers. This allows multiple servers to run on the same system but still receive their requests, such as the case with many large hosting servers today. Requests are redirected depending on how they were made to the machine such as the URL that was used.

Proxies can also provide other benefits such as distributing traffic among multiple instances of the same web server, formatting the requests such as adding additional headers, filtering requests, or adding an additional security layer.

System monitoring with the TICK stack

Time series database

A time series database is a type of database that is optimized for storing data based on time stamped data. This method of storing data is useful in situations where values need to be monitored for change over time. While any database could be used to store this information, time series databases are time stamp aware which leading to improved organization and query speeds.

Time series databases have come up more in recent times due to the increase in the number of internet connected devices. Sensors can now be found throughout households, cities, and businesses. The measurements from these devices is usually precise with a frequent sample rate. A time series database is also able to aggregate this data so that large amounts of data can be removed by still keeping a summary of the samples.

Creating a local DNS with CoreDNS

What is a Domain Name System?

A Domain Name System (DNS) acts like the the phone book of the internet. When we enter a URL in our browser, it sends the URL to a DNS server to look up the actual IP address. Many times a DNS server will not know the IP address of the URL and it will have to forward it on to additional DNS servers. The next server to ask is determined by reading the URL from right to left. Each section of the URL is referred to as a zone and the remainder of the URL is forwarded on to the next zone.

Building Yocto for a Beagle Bone Black

Install the needed dependencies to build Yocto: apt install build-essential chrpath diffstat gawk libncurses5-dev python3-distutils texinfo

Create a folder to hold the different Yocto layers mkdir yocto

Clone the dunfell version of Yocto: git clone -b dunfell git://git.yoctoproject.org/poky.git poky-dunfell

Clone the meta layers within the dunfell folder: cd poky-dunfell git clone -b dunfell git://git.openembedded.org/meta-openembedded git clone -b dunfell https://github.com/meta-qt5/meta-qt5.git git clone -b dunfell git://git.yoctoproject.org/meta-security.git

Clone the meta layer for the custom build recipes: git clone -b dunfell https://github.com/jumpnow/meta-jumpnow.git

Creating an ESP8266 Based Wireless Thermometer

I’ve been taking a look at InluxData’s TICK stack and figuring out some ESP8266 chips that I recently purchased. I always like to come up with practical projects to do when I’m learning about some new tech. When my dad came to me asking me to keep an eye on the temperature of his house while he was out of town, I knew exactly what I needed to build. It got even better when he told me his plan.

Create an LXC container on Proxmox

Proxmox uses LXC containers rather than the more commonly heard of Docker containers. LXC containers can be thought of as very lightweight virtual machines. LXC containers can be customized to run an application but typically their images are for linux operating systems.

Adding a template

There are two methods for adding an LXC container template to Proxmox. The first is very convenient but requires Proxmox to be connected to the internet. The second is not as convenient but still easy enough and can be done if you are not connecting your server to the public internet.