Skip to content

Commit 1e6d7e9

Browse files
committed
Orbstack support
1 parent bb6dd12 commit 1e6d7e9

File tree

2 files changed

+102
-0
lines changed

2 files changed

+102
-0
lines changed

orbstack/cloud-init.yaml

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
#cloud-config
2+
system_info:
3+
default_user:
4+
name: splunk
5+
groups: [docker]
6+
lock_passwd: false
7+
8+
chpasswd:
9+
expire: false
10+
11+
groups:
12+
- docker
13+
14+
package_update: true
15+
16+
packages:
17+
- ansible
18+
- docker
19+
- curl
20+
- docker-compose
21+
- gnupg2
22+
- jq
23+
- maven
24+
- net-tools
25+
- openjdk-17-jdk
26+
- python3-flask
27+
- python3-venv
28+
- python3-pip
29+
- unzip
30+
- zsh
31+
- apt-transport-https
32+
- ca-certificates
33+
- software-properties-common
34+
- git
35+
36+
write_files:
37+
- path: /etc/skel/.profile
38+
append: true
39+
content: |
40+
INSTANCE=$(cat /etc/hostname)
41+
CLUSTER_NAME="$INSTANCE-cluster"
42+
43+
export INSTANCE CLUSTER_NAME
44+
45+
export KUBECONFIG=/home/splunk/.kube/config
46+
alias kc='kubectl'
47+
alias dc='docker-compose'
48+
49+
runcmd:
50+
- chsh -s $(which zsh) splunk
51+
- su splunk -c 'sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"'
52+
- echo "source /etc/skel/.profile" >> /home/splunk/.zshrc
53+
# Install Helm
54+
- curl -s https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
55+
# Install K9s (Kubernetes UI)
56+
- curl -S -OL https://github.com/derailed/k9s/releases/download/v0.32.4/k9s_Linux_amd64.tar.gz
57+
- tar xfz k9s_Linux_amd64.tar.gz -C /usr/local/bin/ k9s
58+
# Download Workshop
59+
- curl -s -OL https://github.com/splunk/observability-workshop/archive/main.zip
60+
- unzip -qq main.zip -d /home/splunk/
61+
- mkdir /home/splunk/workshop
62+
- mv /home/splunk/observability-workshop-main/workshop/* /home/splunk/workshop
63+
- mv /home/splunk/workshop/ansible/diab-v3.yml /home/splunk
64+
- mv /home/splunk/workshop/ansible/orbstack-profile.yml /home/splunk
65+
- mv /home/splunk/workshop/ansible/orbstack-secrets.yml /home/splunk
66+
- rm -rf /home/splunk/observability-workshop-main
67+
- rm -rf /home/splunk/workshop/aws /home/splunk/workshop/cloud-init /home/splunk/workshop/ansible
68+
- mv /home/splunk/workshop/k3s/demo-in-a-box.zip /home/splunk
69+
# Download Splunk Observability Content Contrib Repo
70+
- curl -s -L https://github.com/splunk/observability-content-contrib/archive/main.zip -o content-contrib.zip
71+
- unzip -qq content-contrib.zip -d /home/splunk/
72+
- mv /home/splunk/observability-content-contrib-main /home/splunk/observability-content-contrib
73+
# Install Terraform
74+
- curl -S -OL https://releases.hashicorp.com/terraform/1.3.7/terraform_1.3.7_linux_amd64.zip
75+
- unzip -qq terraform_1.3.7_linux_amd64.zip -d /usr/local/bin
76+
#- wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
77+
#- echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
78+
#- sudo apt update && sudo apt install terraform
79+
# Install K3s
80+
- curl -sfL https://get.k3s.io | K3S_KUBECONFIG_MODE="644" sh -
81+
# Create kube config and set correct permissions on splunk user home directory
82+
- mkdir /home/splunk/.kube && kubectl config view --raw > /home/splunk/.kube/config
83+
- chmod 400 /home/splunk/.kube/config
84+
- chown -R splunk:splunk /home/splunk
85+
# Deploy private registry
86+
- /usr/local/bin/kubectl apply -f /home/splunk/workshop/k3s/registry/registry.yaml
87+
- sed -i 's/_THEME=\"robbyrussell\"/_THEME=\"gentoo\"/g' home/splunk/.zshrc

orbstack/start.sh

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/bin/bash
2+
echo "Building: $1";
3+
export ACCESS_TOKEN="wSgTADmdeTvrZBfHy3GPNA"
4+
export REALM="eu0"
5+
export RUM_TOKEN="XVZtGmYfvn2uQe9razgZbg"
6+
export HEC_TOKEN="43808242-7b23-4154-add6-9bd387833151"
7+
export HEC_URL="https://http-inputs-o11y-workshop-eu0.splunkcloud.com:443/services/collector/event"
8+
export INSTANCE=$1
9+
10+
orb create -c cloud-init.yaml -a arm64 ubuntu:jammy $INSTANCE
11+
sleep 2
12+
ORBENV=ACCESS_TOKEN:REALM:RUM_TOKEN:HEC_TOKEN:HEC_URL:INSTANCE orb -m $INSTANCE -u splunk ansible-playbook /home/splunk/orbstack-profile.yml
13+
sleep 2
14+
ORBENV=ACCESS_TOKEN:REALM:RUM_TOKEN:HEC_TOKEN:HEC_URL:INSTANCE orb -m $INSTANCE -u splunk ansible-playbook /home/splunk/orbstack-secrets.yml
15+
ssh splunk@$INSTANCE@orb

0 commit comments

Comments
 (0)