RabbitMQ notes

RabbitMQ cluster on docker swarm can not be assembled


oqpqhlailzzn   myproject_rabbitmq-2.1  rabbitmq:3.7-management-alpine   ip-10-103-32-185.us-east-1.compute.internal   Shutdown            Failed 22 seconds ago        "task: non-zero exit (69)"   
ngo5qnu2n4lk   myproject_rabbitmq-3.1  rabbitmq:3.7-management-alpine   ip-10-103-47-234.us-east-1.compute.internal   Shutdown            Failed 22 seconds ago        "task: non-zero exit (69)"

Continue reading

docker helpful commands

Get labels from nodes in swarm cluster

# execute on manager
docker node ls -q | xargs docker node inspect -f '[{{ .ID }} {{ .Description.Hostname }}]: {{ .Spec.Labels }}'
docker node ls -q | xargs docker node inspect \
  -f '{{ .ID }} [{{ .Description.Hostname }}]: {{ range $k, $v := .Spec.Labels }}{{ $k }}={{ $v }} {{end}}'

Continue reading

transmission notes

Issue: Transmission Remote GUI 403 Forbidden

Package: transmission-daemon
Version: 2.94-2+deb10u1
find / -mount -type f -name settings.json -exec ls -l {} \;

-rw------- 1 root root 2186 Sep 20 22:29 /root/.config/transmission-daemon/settings.json
-rw-rw---- 1 debian-transmission debian-transmission 2398 Oct 30 16:37 /etc/transmission-daemon/settings.json
-rw------- 1 debian-transmission debian-transmission 2226 Oct 30 16:45 /home/debian-transmission/.config/transmission-daemon/settings.json

Continue reading

certbot notes

Issue: Unable to recover files from /var/lib/letsencrypt/temp_checkpoint

# certbot 1.7.0, CentOS 7
certbot --nginx -d site.domain.com
# echo
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Unable to recover files from /var/lib/letsencrypt/temp_checkpoint
Incomplete or failed recovery for /var/lib/letsencrypt/temp_checkpoint
Unable to revert temporary config

I did. Solved:

yum update
mv /var/lib/letsencrypt /var/lib/letsencrypt.original

Nextcloud notes


Move server to other host

  1. Install Nextcloud on the new server
  2. Set the old and new server to maintenance mode
  3. Dump the database on the old
  4. Copy the complete data directory to the new server
  5. Restore the database on the new server
  6. Edit the config.php on the new server. I think you have to copy passwordsalt a d secret from the old to the new server.
  7. Change the DNS record to point at your new server.
  8. Turn off maintenance mode on the new server.

Asterisk stop log to syslog


Asterisk put logs to /var/log/syslog
Affected OS: Ubuntu, Debian 9


# Step1: create file for rsyslog
cat << EOF > /etc/rsyslog.d/10-asterisk.conf
if \$programname == "asterisk" then { stop }
# Step2:
systemctl restart rsyslog.service

jinja create file from template without empty lines


Creation of file from pillar simple list with Jinja template will be create empty line, in top or bottom of file, dependence for template syntax.
You can not create file without empty lines.

from jinja2 import Template

d = {'testlist':['item1','item2','item3']}

tmpl = '''{%- for item in testlist %}
   {{ item }}
{%- endfor %}'''

t = Template(tmpl)
print( t.render( d ) )

Continue reading

Virtualbox on linux Troubleshooting

The vboxdrv kernel module is not loaded.


$ VBoxManage --version
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
         available for the current kernel (5.4.28-1-MANJARO) or it failed to
         load. Please recompile the kernel module and install it by

           sudo /sbin/vboxconfig

         You will not be able to start VMs until this problem is fixed.

Continue reading

using map.jinja in salt states

Description from vendor https://docs.saltstack.com/en/latest/topics/best_practices.html

My opinion: NEVER USE

Reason 1

It is not possible to see the values from this map on node or salt-master by any command, like:

Reason 2

State will applied to the minion, even when node (or/and any parent class) has no any pillar data to this state.
Continue reading

kubernetes notes

docker info | grep -i cgroup
kubectl get nodes
kubectl get pods -n kube-system -o wide
kubectl get events --namespace=kube-system
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
kubeadm token create --print-join-command
kubectl get ingress -A
kubectl get componentstatuses

Continue reading

firewalld notes

firewall-cmd --list-all

# add services
firewall-cmd --add-service=zabbix-agent --permanent
firewall-cmd --reload

# add ports
firewall-cmd --permanent --add-port=100/tcp
firewall-cmd --reload

Asterisk monast

Monast https://github.com/dagmoller/monast.git

Іssue: monast.py lost connection to asterisk each 3-4 seconds, and make reconnection

Debian 7
Asterisk 13.5

Tested git commits

* a02a81b 2012-06-19 | added option to set custom peer status using UserEvent [Diego Aguirre]
    DONT WORK - Lost connection to server each 3-4 seconds.

* 777df26 2012-04-24 | changes [Diego Aguirre]

Selected version bbce290 2018-01-23
Commented lines in monast.py:

 server.pushTask(server.ami.command, "database show") \
       .addCallbacks(onCustomPeerStatus, self._onAmiCommandFailure, errbackArgs = (servername, "Error Requesting Custom Peer Status from ASTDB"))

Now connection to asterisk not lost.

Reason on issue: too much records in database, long time of executing request ‘database show’.

$ asterisk -rx 'database deltree q-answered'
156568 database entries removed.

FTP client iptables nf_conntrack_ftp


OS: Cloudlinux 6,7

ftp ftpserver.domain.com
Connected to ftpserver.domain.com (
220 This is a private system - No anonymous login
Name (ftpserver.domain.com:root): ftpuser
331 User ftpuser OK. Password required
230 OK. Current directory is /files
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (,19,73)
ftp: connect: Connection timed out

Continue reading