All the Ansible playbooks used to deploy k3s, argo server, admiralty and minio
This commit is contained in:
86
ansible/README.md
Normal file
86
ansible/README.md
Normal file
@@ -0,0 +1,86 @@
|
||||
Login : admrescue/admrescue
|
||||
|
||||
# Requirement
|
||||
|
||||
**Ansible** (+ pip):
|
||||
|
||||
If you don't have `pip` yet
|
||||
|
||||
```
|
||||
curl https://bootstrap.pypa.io/get-pip.py -o /tmp/get-pip.py
|
||||
python3 /tmp/get-pip.py --user
|
||||
```
|
||||
|
||||
```
|
||||
python3 -m pip install --user ansible
|
||||
pip install -r requirement.txt
|
||||
```
|
||||
|
||||
**Ansible collections**:
|
||||
|
||||
```
|
||||
ansible-galaxy collection install kubernetes.core
|
||||
```
|
||||
|
||||
|
||||
# Mosquitto
|
||||
|
||||
`sudo apt update && apt install -y mosquitto mosquitto-clients`
|
||||
|
||||
need to add a conf file in `/etc/mosquitto/conf.d/mosquitto.conf` containing :
|
||||
|
||||
```
|
||||
allow_anonymous true
|
||||
listener 1883 0.0.0.0
|
||||
```
|
||||
|
||||
`sudo systemctl restart mosquitto`
|
||||
|
||||
Launch the mosquitto client to receive message on the machine that hosts the mosquitto server : `sudo mosquitto_sub -h 127.0.0.1 -t argo/alpr`
|
||||
|
||||
# Argo
|
||||
|
||||
## Execute/submite a workflow
|
||||
|
||||
```
|
||||
argo submit PATH_TO_YAML --watch --serviceaccount=argo -n argo
|
||||
```
|
||||
|
||||
# Troubleshoot
|
||||
|
||||
## k3s bind to local port
|
||||
|
||||
On certain distro you might already have an other mini k8s. A sign of this is k3s being able to install, start but never being stable, restarting non stop.
|
||||
|
||||
You should try to see if the port used by k3s are arlready binded :
|
||||
|
||||
> sudo netstat -tuln | grep -E '6443|10250'
|
||||
|
||||
If those ports are already in use then you should identify which service run behidn them and then stop them and preferably uninstall them.
|
||||
|
||||
We have already encountered an instance of `Ubuntu Server` with minikube already installed.
|
||||
|
||||
### Remove minikube
|
||||
|
||||
```bash
|
||||
sudo systemctl stop snap.microk8s.daemon-kubelite
|
||||
sudo systemctl disable snap.microk8s.daemon-kubelite
|
||||
sudo systemctl restart k3s
|
||||
```
|
||||
|
||||
## Use local container images
|
||||
|
||||
We have encountered difficulties declaring container images that correspond to local images (stored in docker.io/library/)
|
||||
|
||||
We used a docker hub repository to pull our customized image. For this we need to create a secret holding the login informations to a docker account that has access to this repository, which we then link to the serviceAccount running the workflow :
|
||||
|
||||
Create the secret in the argo namespace
|
||||
|
||||
```
|
||||
kubectl create secret docker-registry regcred --docker-username=[DOCKER HUB USERNAME] --docker-password=[DOCKER HUB PASSWORD] -n argo
|
||||
```
|
||||
Patch the `argo` serviceAccount to use the secret when pulling image
|
||||
|
||||
```
|
||||
kubectl patch serviceaccount argo -n argo -p '{"imagePullSecrets": [{"name": "regcred"}]}'
|
||||
```
|
||||
Reference in New Issue
Block a user