Skip to content

Instantly share code, notes, and snippets.

View alexolinux's full-sized avatar
🤠
Working from home

Alex Mendes alexolinux

🤠
Working from home
View GitHub Profile
@alexolinux
alexolinux / ec2-user-data.sh
Created May 1, 2024 20:38
EC2 user-data for Apache Webserver and Instance Metadata page
#!/bin/bash
sudo yum update -y
sudo yum install -y httpd
sudo yum install -y git
export TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"`
export META_INST_ID=`curl http://169.254.169.254/latest/meta-data/instance-id -H "X-aws-ec2-metadata-token: $TOKEN"`
export META_INST_TYPE=`curl http://169.254.169.254/latest/meta-data/instance-type -H "X-aws-ec2-metadata-token: $TOKEN"`
export META_INST_AZ=`curl http://169.254.169.254/latest/meta-data/placement/availability-zone -H "X-aws-ec2-metadata-token: $TOKEN"`
@alexolinux
alexolinux / aws-cli-install.sh
Created April 24, 2024 21:14
aws-cli installation
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
@alexolinux
alexolinux / terraform-install.sh
Created April 24, 2024 21:12
Install terraform by using repository
sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
touch ~/.zshrc
terraform -install-autocomplete
@alexolinux
alexolinux / install-nvm.sh
Last active April 20, 2024 20:36
Script to install Node Version Manager (NVM).
#!/bin/bash
NVM_VER="v0.39.7"
# Check if NVM is already installed
if [ -z "$(command -v nvm)" ] && [ -z "$NVM_DIR" ]; then
echo "---- NVM Installation ----"
# Check if curl is installed
@alexolinux
alexolinux / install-trivy.sh
Created April 19, 2024 12:08
Installing Trivy using YUM Package Manager
#!/bin/bash
# https://aquasecurity.github.io/trivy/v0.50/getting-started/installation/#rhelcentos-official
RELEASE_VERSION=$(grep -Po '(?<=VERSION_ID=")[0-9]' /etc/os-release)
cat << EOF | sudo tee -a /etc/yum.repos.d/trivy.repo
[trivy]
name=Trivy repository
baseurl=https://aquasecurity.github.io/trivy-repo/rpm/releases/$RELEASE_VERSION/\$basearch/
gpgcheck=1
enabled=1
@alexolinux
alexolinux / zsh-install-compilation.sh
Last active April 24, 2024 20:33
Script to install ZSH specific version via compilation
#!/bin/bash
ZSH_VER="zsh-5.9"
ZSH_URL="https://www.zsh.org/pub/${ZSH_VER}.tar.xz"
TMP_DIR="/tmp"
# Check if the script is run as root
if [ "$EUID" -ne 0 ]; then
echo "Error: This script should not be run as root."
exit 1
@alexolinux
alexolinux / install-kubectl.sh
Last active April 24, 2024 20:53
Script to install kubectl binary.
#!/bin/bash
# Script to install kubectl binary with curl on Linux
# List of kubectl releases: https://kubernetes.io/releases/
# For kubectl latest stable version: $(curl -L -s https://dl.k8s.io/release/stable.txt)
KUBE_VERSION="1.29.0"
# Define installation directory
# Note: If you do not have root access on the target system, you can still install kubectl to the '~/.local/bin' directory.
@alexolinux
alexolinux / ssh-agent.sh
Created April 6, 2024 13:40
Shell Script for activating SSH Agents in ZSH Environment
#!/bin/zsh
SSH_HOME="${HOME}/.ssh"
keys=($SSH_HOME/*.pem)
# Check if SSH_AUTH_SOCK is not set or is not a socket file
if [ -z "$SSH_AUTH_SOCK" ] || [ ! -S "$SSH_AUTH_SOCK" ]; then
eval "$(ssh-agent -s)"
# Add SSH keys to agent
@alexolinux
alexolinux / locust.py
Created March 5, 2024 20:49
Example Run: locust -f locust.py -H http://localhost -P 8089
from locust import HttpUser, task, between
class MyUser(HttpUser):
wait_time = between(1, 5) # Time between requests in seconds
@task
def my_task(self):
# Replace api-endpoint
self.client.get("/api-endpoint")
@alexolinux
alexolinux / k82-namespace-stuck-terminating
Created March 2, 2024 13:06
Removing a Namespace stuck in terminating state.
#-- Defining Namespace Variable (namespace name)
NS="my-namespace"
#-- Retrieve the namespace api state specification
kubectl get namespace $NS -o json > ns.json
#-- Go back to the previous terminal >> Edit ns.json >> Remove the content inside of spec.finalizers:
"spec": {
"finalizers": [
"kubernetes" <<<< ("""Remove this one and save the file""") <<<<