install

kind - local Kubernetes cluster using Docker container nodes

My environment Pop!_OS $ uname -a Linux system76 5.11.0-7620-generic #21~1624379747~20.10~3abeff8-Ubuntu SMP Wed Jun 23 02:23:59 UTC x86_64 x86_64 x86_64 GNU/Linux Set up pre-requirements for kind Install latest Go cd /usr/local/src sudo curl -L -O https://golang.org/dl/go1.16.5.linux-amd64.tar.gz tar -C /usr/local -xzf go1.16.5.linux-amd64.tar.gz export PATH=$PATH:/usr/local/go/bin /etc/profile PATH=/usr/local/go/bin:$PATH Rootless Docker Refer to my post. Install kubectl https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#install-using-native-package-management sudo apt install -y apt-transport-https ca-certificates curl sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.

Rootless Docker

My environment Pop!_OS $ uname -a Linux system76 5.11.0-7620-generic #21~1624379747~20.10~3abeff8-Ubuntu SMP Wed Jun 23 02:23:59 UTC x86_64 x86_64 x86_64 GNU/Linux Configure rootless Docker https://docs.docker.com/engine/security/rootless/ $ dockerd-rootless-setuptool.sh install [ERROR] Missing system requirements. Run the following commands to [ERROR] install the requirements and run this tool again. ########## BEGIN ########## sudo sh -eux <<EOF # Install newuidmap & newgidmap binaries apt-get install -y uidmap EOF ########## END ########## OK… Run the command above and try again.

NVM

What’s nvm Node.js Version Manager. Like pyenv in Python. One difference from Pyenv is, you can’t label a name to the environment. package.json manage the libraries. Install Follow the official document. https://github.com/nvm-sh/nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash ..... (simple results) Check. $ nvm --version 0.39.0 $ node Command 'node' not found, but can be installed with: sudo apt install nodejs Install Node.js and switch versions # Current available Node.js on the local machine nvm ls # List all available versions nvm ls-remote # Use latest version nvm install node # "node" is an alias for the latest version nvm use node # Use speccific version nvm install 14.

Windows Terminal

Terminal for WSL I want a cool terminal for WSL, and “Windows Terminal” is easy to install and seems good. How to install From Microsoft Store. Change default terminal from PowerShell to WSL https://medium.com/@callback.insanity/windows-terminal-changing-the-default-shell-c4f5987c31 Open settings. It is a json file. Find defaultProfile. In my case, it is "defaultProfile": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}" In list, find your Linux config line. Here is my sample. "guid": "{2c4de342-38b7-51cf-b940-2309a097f518}", "hidden": false, "name": "Ubuntu", "source": "Windows.Terminal.Wsl" Change the default Profile value as your Linux guid.

Install Go (Golang) from source

Environment I wrote this article while installing go on WSL. Install Go lang $ curl https://dl.google.com/go/go1.15.5.linux-amd64.tar.gz -o golang.tar.gz $ sudo tar -C /usr/local -xzf golang.tar.gz $ vim ~/.bashrc ## Add /usr/local/go/bin/ to path ## export PATH=/usr/local/go/bin:$PATH $ source ~/.bashrc ## Check $ go version go version go1.15.5 linux/amd64 Upgrade the version Just delete the current version like rm -rf /usr/local/go, and replace it with new version. Tips: Installing Hugo on this setup (on WSL) GCC and G++ are required (sudo apt install gcc g++).

My simple Vim environment

Environment I wrote the article while installing on WSL. But this instruction works in any Linux environment basically. Color scheme - jellybeans If you don’t install git, please install it first. sudo apt install -y git git config --global user.email {{ my_email_address }} git config --global user.name {{ my_handle_name }} Download a color scheme jellybeans and put it to correct path. mkdir ~/.vim cd ~/.vim mkdir colors git clone https://github.com/nanotech/jellybeans.vim mv jellybeans.

Enabling TensorFlow using GPU

We can install TensorFlow via pip easily, but we should care a little bit more if you want to enable GPU. Requirements https://www.tensorflow.org/install/gpu#software_requirements #Here is how I installed my NVIDIA GPU environment. Install Pre requirements sudo apt-get install libcupti-dev #already installed in my case echo 'export LD_LIBRARY_PATH=/usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc source ~/.bashrc Install cuDNN Download a compatible version from https://developer.nvidia.com/rdp/cudnn-download. tar -xzvf cudnn-10.2-linux-x64-v8.0.1.13.tgz sudo cp cuda/include/cudnn*.h /usr/local/cuda/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn*.

Helm

What is Helm https://www.youtube.com/watch?v=fy8SHvNZGeE Install https://helm.sh/docs/intro/install/ From built code - I prefer this way personally curl https://get.helm.sh/helm-v3.8.2-linux-amd64.tar.gz -o helm.tar.gz tar -xzvf helm.tar.gz sudo mv ./linux-amd64/helm /usr/local/bin/ rm -rf ./linux-amd64 Via apt curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null sudo apt-get install apt-transport-https --yes echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list sudo apt-get update sudo apt-get install helm Use Quickstart https://helm.sh/docs/intro/quickstart/ Added 20.

Memcached

Install in Ubuntu apt install -y memcached Configuration The configuration file is /etc/memcached.conf. There are comment of each options in the default config file. -d -m 256 -p 11211 -u memcache -l 0.0.0.0 -c 1000 -t 2 -b 500 -R 100 -C -d: Run memcached as a daemon. -m: Occupied memory by Memcached in unit of MB. -p: Connection port. -u: User name running Memcached. -l: Listen IP -c: the number of simultaneous incoming connections.

Set up Kubernetes in Ubuntu (single host cluster)

Pre-requirement of this post Host OS: Ubuntu18.04 snapd is install (for snapcraft.) Kubernetes is abbreviated as k8s. For single host k8s environment, there is a good k8s implementation called microk8s. I’ll use it. Setup on Ubuntu Install Docker and microk8s Install softwares, Docker and microk8s. sudo snap install docker sudo snap install microk8s --classic --channel=1.18/stable Granting permission sudo usermod -a -G microk8s $USER sudo chown -f -R $USER ~/.kube After re-login, check the k8s status.