Posts

Python Development Environment : pyenv & VS Code

Image
While working on Python projects, we need to support projects with multiple versions of Python. Managing multiple versions in one machine is adifficult task. But if you use pyenv it becomes easy to manage. What is pyenv? pyenv is a tool to manage multiple Python versions. You may not need to install System Python if you use pyenv. Installing pyenv [Windows] Follow instructions as mentioned in this link  . If you are using WINDOWS operating system the I would prefer Chocolatey package manager. Chocolatey Installation Use powershell with admin rights > choco install pyenv-win To test if the installation is successful  > pyenv To see available python installation > pyenv install -l If you do not see you python version then, > pyenv update Installing pyenv [WSL2 - LINUX/Ubuntu] Install Home Brew package manager. follow the the instructions HomeBrew  and HomeBrew Installations > /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew...

WSL 2 on Windows - LINUX based development environment and Docker

Image
Windows operating system provides "Windows Subsystem for Linux" which can be utilized to develop using Linux operating system and have Linux based tools. Windows operating system is providing a great interoperability so that it is very easy to operate between Linux distribution and base operating system. I still remember the old days where we had to do so many things to have Linux OS with the base operating system. Popular choices were to have dedicated partitions to have different Operating systems or have Virtual Machine to host any OS of your choice. For both the cases, the development experience was not that great. Modern development is based on Containerization technologies and for Windows operating system, Docker Desktop is a popular choice to create docker environment in Windows operating system. Docker Desktop was using Hyper-v based virtualization technology and Linux OS to provide required environment. Later it started supporting WSL to provide containerization capa...

Elasticsearch - Secure communication Logstash & File-beat - Part 3

Image
For logging pipeline, Filebeat will establish  a secure connection to Logstash. This article explains how to setup SSL mutual authentication using self signed certificate.  Prerequisite You should have docker and docker-compose installed in you machine. You may try Docker-Desktop in case you are using WINDOWS or MAC. You need OpenSSL installed and configured in your machine. Option1: You can install Git Bash in your machine and configure path in System environment variable.  Environment Variables -> path ->  "C:\Program Files\Git\usr\bin" Option2:  You can use Cmder is a software package.  Add a custom domain in your host machine which points to localhost. "host" File location - C:\Windows\System32\drivers\etc #My custom domain 127.0.0.1 dev.experiment.com #End of section Creating Certificates We will be using custom domain and self-signed certificates. Create directory. mkdir .\tls\certs mkdir .\tls\private openssl req -subj "/CN=dev.exp...

Elasticsearch Ecosystem - Part1

Image
Elasticsearch is distributed, search and analysis engine.  There are many use cases which are supported by Elasticsearch- Log Analysis, Monitoring of Infrastructures, APM, Security analysis, Business analysis and applications.  Data gets ingested into Elasticsearch from various sources. Mainly logs and metrices are ingested into Elasticsearch. We can design ingestion pipeline to process and transform data before it is placed inside Elasticsearch. To enable this, Elasticsearch eco system has various tools which we will discuss. We have 4 main areas in which tools can be categorized but these are not a hard categories and has overlapping features - 1. Data exporter/shipper - configured at data source 2. Data collector - listening for data from various log sources 3. Data storage - storing/indexing data 4. Data visualization - visualization of data Data shipper:- Elastic-beats and Fluent-bit can be used for log shipper. Both are light weight product and be installed as agent an...

Open Distro for Elasticsearch - Installation - Part 2

Image
Elasticsearch ecosystem has been in the popular choice for data and analytics purposes. In recent development, Elasticsearch is also available as license based  deployments. Apache 2.0 Licensed Elasticsearch which is free of cost and provides very basic features compared to paid/licensed Elastic stack.   Open Distro for Elasticsearch is an alternative which is open source(apache 2.0 licensed) and maintained by Amazon. Apart from providing Elasticsearch and Kibana, this distribution also contains security, event monitoring & alerting, performance analysis, SQL query features, SQL JDBC. Open Distro for Elasticsearch and Kibana are available as RPM and Docker containers. Open Distro for Elasticsearch features -  Component Purpose Elasticsearch Data store and search engine Kibana Search frontend and visualizations Security Authentication and access control for your cluster Alerting Receive notifications when your data meets certain conditions SQL Use SQL ...

Internet Protocol Suite - Part 2

Image
In the previous article Internet Protocol Suite– part1 , I discussed about various conceptual layers of internet protocol suite. In this article, I will discuss how internet has evolved overtime. It’s amazing to see how the contribution from different research put together created Internet which made a great impact to the society. It is worth knowing on all the contributors and the concepts which is still valid for modern architecture. Image taken from -  https://pixabay.com/ In 18 th century, the study of electromagnetism had given opportunity to build long distance communication systems. Two significant research focus were Electric Telegraphy and Wireless Telegraphy. I will keep the focus on Electric Telegraphy and Telephony to explain the history of internet. An effective long-distance communication was started with Electric Telegraph. The core concept was transmitting electric signals over a wire. It all started with Battery(cell) invention in 1800 by an Italian physicist ...