Categories
Resources Web Security

Networking resources

Listed are some resources about Networking concepts. I have many computers and devices and a large area to cover so I have multiple routers in play. Messing with so many devices and getting more into Arduino means I need to deepen my understanding of Networking concepts. This page lists resources I have found to be helpfull, maybe it will help others too.

Cool stuff

ngrok.com this is a cool web tool for testing mobile apps by directing traffic to your device.

http://serveo.net this cool web tool is about the same as above except it lets you expose your local webser to use it as your own web host.

Articles and links

One of my Routers is a NetGear N750 this is the link to the manual.  You can use google to find the manual for your router. Any old wireless router can be turned into a Wireless Access Point, which is what you need when running more than one router on the same network.

One thing to understand is DHCP ( dynamic host configuration protocol ) this is how your devices get an IP address from your router.

How to Set Static IP Address and Configure Network in Linux – excellent article about how to create static IP addresses on your Linux servers. This can be done on a local machine for fun or testing too.

How to Setup Local DNS Using /etc/hosts File in Linux – excellent article explains setting up IP addresses on you local machine for testing your web development work.

10 Useful “IP” Commands to Configure Network Interfaces

Videos


Network Types: LAN, WAN, PAN, CAN, MAN, SAN, WLAN

Well I learned what a PAN was from this video. A PAN is what I am wanting to create between my phone and my wifi enable arduino projects or maybe even a WLAN.


How a DNS Server (Domain Name System) work?

This is an excellent short video that explains DNS in detail. Name Servers or NS servers are usually hosted on servers from the company you purchase your domain name from. You tell these servers where to redirect traffic. When you purchase hosting you get an IP address from the company you buy it from whether it is a bare metal server or a cloud instance. You go into the Record system of your Domain Registrar ( the company you bought the name from ) and redirect traffic for your NS server to your host IP by making a few records.


SSL, TLS, HTTP, HTTPS Explained

This video quickly covers HTTP, HTTPS, SSL and TLS. This is good to know for people that own websites. This site uses SSL provided by LetsEncrypt since it is just a simple blog. If you need help with this contact me. I can install SSL for you.


What is a MAC address?


Why do we need both IP and MAC address?


IP Address Basics and Subnet Mask: PLC Networking Basics: Subnetting


Secret of subnet mask


This video covers what a subnet mask is and why they are used.


Subnetting is Simple

This video goes into much more depth than the shorter video above.


How does a computer communicate locally and remotely?

This is the followup video to the “Secret of Subnet mask” video above and continues on with the discussion.


How does DHCP work?

I like this video because it is 5 minutes long and gets directly to the point.


DHCP Explained – Dynamic Host Configuration Protocol

I like this video because it goes a little more in depth than the above video. This video is about 10 minutes long and explains more of the history of DHCP. It also goes into much more depth than the above video. If you are like me you may like to know a little about the history of DHCP.

Categories
Uncategorized

Gitlab resources

Videos

What is Gitlab?


This video is an introduction and quick overview of what gitlab is and why you might want to use it.


GitLab CE Tutorial #2 – A Tour Of GitLab


Introduction to GitLab Workflow


Every single feature in Gitlab Plan

This video quickly covers the features GitLab planning offers. This is a 24 minute video about just the Plan feature of GitLab


Continuous Integration with GitLab CI

This video begins by discussing what Continuous integration is. The video then moves on to Continuous Delivery at ~6:45 At ~9:45 the video starts to talk about CI/CD with GitLab


Categories
Electrical Engineering Resources

Arduino resources

The arduino language reference.

Videos

You can learn Arduino in 15 minutes.


Display Arduino output (e.g. sensor data) on your computer monitor with this simple function: Part 1


Display Arduino output (e.g. sensor data) on your computer monitor with this simple function: Part 2


Tutorial 09: How to read voltages with analogRead(): Arduino Course for Absolute Beginners (ReM)


How to Program Arduino in VSCode (Using Platform.io)


Configuring Visual Studio Code for Arduino Development


Why I’m switching over from the awesome Arduino IDE to Atmel Studio


Atmel Studio 7 – Programming the Arduino Uno via the bootloader without programmer.

Categories
Software Development

How many microservices per kubernetes pod?

How many microservices should I have per Kubernetes Pod? This is the question I had when I first encountered Kubernetes when trying to decide how to deploy my Microservice architecture based application.

When reading through Kubernetes documentation or watching videos about kubernetes, you are told a pod holds one or more containers. So your first question if you are doing microservices probably is. How many microservices do I put per pod if each microservice goes into a container? I mean it sort of seems like you could put all of your microservices in containers then put those in a pod.  You could do this, but it is not the correct way.

I kept digging and digging until I found a definitive answer. This video helped. It does a great job of explaining what a Pod is in Kubernetes and how it relates to microservices.

So as you can see each microservice goes into a container and each container becomes a pod. Therefore the answer is you should place one microservice per pod. However, as noted if your microservice container relies on something else then you also place that inside the pod, but do not place more than one microservice in a pod. If you are wondering more about when you would use more than one container in a pod this article gives examples.

Another question you may have is how many pods can you have per node? That is totally up to who you are using as your host, if you are using cloud services then many will list the limit. Here is a link I found about Amazon cloud instance limits.

Links

Here is a link to the documentation shown in the video about PODS.

Here is a link the the Kubernetes API documentation shown in the video.

Here is a link to more Kubernetes resources.

Categories
Resources Software Development

Kubernetes resources

Kubernetes resource list

Kubernetes and Microservices go hand in hand. Basically you don’t want to do one without the other. Kubernetes is a container orchestration software. When you build a system based on the Microservice architecture you need a way to package and run those microservices on the cloud.

The traditional way of preparing a machine by running scripts which download software and prepare a server environment to run your applications are over. It is far easier to roll your Microservices up into a container with all of it’s requirements and then deploy the container.

However, once you get all of your microservices into containers you need a way for them to find each other and work together as a team to form a larger application. This is where Kubernetes comes in. With Kubernetes you use YAML files to describe your system and how you would like your system to be maintained. Once you describe your system Kubernetes works hard to keep it in the way you describe it.

Kubernetes monitors your Microservice containers. When one crashes Kubernetes fires up another. When traffic is too much for a single Microservice node Kubernetes fires up another identical node and load balances the requests, when traffic reduces Kubernetes reduces the identical node count. Kubernetes is a dream come true for Microservice based applications.

Kubernetes is highly complex and takes a lot of time to master. That is why I suggest using Openshift. Openshift interacts with the Kubernetes api for you which makes everything much easier. You should still have a basic understanding of Kubernetes since Openshift is built on top of Kubernetes. OpenShift is one of the final links in the modern DevOps pipleline. Here is a link to more resources and information about OpenShift.

Articles

Here is a link to the main Kubernetes website.

Here is a link to a glossary of  Kubernetes terms

What is Kubernetes a beginners guide.

Here is a link to a page explaining Kubernetes Terminology. There are so many new terms this article makes it easy to find the meaning of Pods, Nodes, Clusters etc.

Here is the documentation overview link.

Here is a link to the kubernetes tutorials page.

Here is a link to the list of kubernetes api programming language clients for interacting with the Kubernetes API directly in your applications code.

Here is a link to the Kubetcl  online free book about kubernetes.

Kubernetes clusters and node size suggestions. This article will help you decide how large your node instances should be and how many nodes you should include in your cluster.

Kubernetes cluster autoscaler link on github.

List of Amazon cloud instance kubernetes POD limit per instance.

Kubernetes bootcamp website. This cool website walks you through the basics of Kubernetes.

Kubernetes YAML File simply explained for Beginners This is exactly what it sounds like

Videos

Kubernetes Architecture Simplified | K8s Explained in 10 Minutes


Organizing Kubernetes with Namespaces (Kubernetes Best Practices)


Kubernetes: One Cluster or Many?


Microservices, Kubernetes, and Application Modernization Done Right


Deploying Microservices in Kubernetes – Webinar by Certified Kubernetes Administrator Janakiram MSV

This video contains useful information about Kubernetes, Microservices and Launching a Microservice based application with Kubernetes. The beginning of this video starts out explaining how the traditional Monolithic architecture worked. It then moves onto how Microservice architectures work and continues by providing a comparison of the two. At ~22:45 the video starts to talk about deploying with Kubernetes

Kubernetes Architecture Made Easy | Coupon: UDEMYJAN20 | Udemy: Kubernetes Made Easy | K8s Tutorial


Kubernetes in 5 minutes

This video quickly gives an overview of kubernetes. It could go higher up on the list, but this is where it is.

Categories
Resources Software Development

Useful and interesting programming tools

Usernap this interesting tool connects to your github or gitlab account and visually displays bug tracking information to where ever you want it. This gives you the ability to allow guest views. I may use this to show my progress on development of the Social Platform.

Categories
Resources Software Development

Redhat developer resources

My list of resources and information about Redhat software etc.

RedHat OpenShift developer resources. This page has many links to free books, videos, articles etc.

Building containerized applications Lots of useful information and resources here. This covers some of the tools RedHat offers for development with containers such as Buildah, Podman and Skopeo. It has a link for a free Ebook about using PodMan. It also has many links to tutorials.

Ebook Introduction to Enterprise Kubernetes. This covers what RedHat OpenShift does for kubernetes deployments.

RedHat OpenShift for Developers This article quickly explains what OpenShift offers developers it has some great links to more resources.

RedHat OpenShift 4 CodeReady Containers . This page talks about running OpenShift clusters on your local desktop/laptop

Local OpenShift Development Environment on Windows. This shows how to install, run and use OpenShift CodeReady containers on your local machine. This is useful for learning how OpenShift works and testing your projects. This only works on computers with Windows 10

OpenShift CodeReady Container documentation. This is the documentation to CodeReady Containers mentioned above.

 

 

 

Categories
Resources

OpenShift information and resources

OpenShift information and resources page

OpenShift is a useful developer toolset.

Articles

Building Scala and SBT Applications on OpenShift
Disaster Recovery Strategies for Applications Running on OpenShift

OpenShift vs Kubernetes  This article covers the differences between OpenShift and Regular old Kubernetes.

What is OpenShift?

Once you decide you want to use Kubernetes you need some way to host your apps. Meet OpenShift

 


OpenShift Technical Overview


Building and running micro services on OpenShift: Part I

This video has some useful technical information about how OpenShift works.


Building and running micro services on OpenShift: Part II

This video has some useful technical information about how OpenShift works with Kubernetes to orchestrate your application and help it scale up and down in response to traffic.


Building and running Microservices on OpenShift: Part III

This video further covers some of the basic features of OpenShift from a developers standpoint.


Demo – Deploying from GitLab to OpenShift Container Cluster


OpenShift for Beginners – CI/CD & DevOps – Builds and Build Triggers


Create Your Own Build Pipelines with OpenShift 3.3, Part I


OpenShift 4 CI/CD Pipelines