пятница, 22 апреля 2022 г.

Немного про VPN

 Сейчас для многих весьма остро стоит вопрос с доступом к ряду ресурсов, и приходится покупать/поднимать впн.

Мне больше всего импонирует SSTP - штатно умеют все основные операционки, но с мобилами вопрос.

Можно взять openvpn - но настройка через консоль отпугивает многих, а openvpn-ce платный от 3+ коннектов. Правда, нашлась админка от Flant - https://github.com/flant/ovpn-admin/

Ещё вариант - WireGuard

Пошаговая инструкция по настройке Wireguard VPN + DNSCrypt + DNS server (Unbound) + Pihole

Всякие pptp, l2tp, ipsec (ike) не рассматриваем - их очень легко обнаружить и заблокировать, верх "удобства" - gre.

про настройку phpmyadmin

 Тема довольно старая, и по возможности вообще не надо его ставить (лучше хоть workbench взять, он умеет даже ssh тоннель сам поднять, чтобы 3306 в мир не открывать), но если пришлось - лучше уделить ему внимание. И речь не о простой установке, с ней всё только начинается...

hardening phpmyadmin

В 2 строки (самое типовое и "глупое" решение)
auth_basic "Admin Login";
auth_basic_user_file /etc/nginx/pma_pass;

Наиболее полная дока которую удалось найти:

https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-phpmyadmin-with-nginx-on-an-ubuntu-20-04-server

В этой доке есть даже такие вещи как проброс порта через ssh! (правда, в разрезе открытия админки только на внутренние адреса и доступ по такому тоннелю, что тоже сильно повышает безопасность)

ЗЫ про настройку через сокет:

https://eternalhost.net/base/vps-vds/nginx-ustanovka-phpmyadmin-ubuntu

среда, 6 апреля 2022 г.

gcore и их некоторые сервисы

На данный момент они же edgecenter.ru

В разрезе автоматизации, то есть через terraform

kubernetes

https://support.edgecenter.ru/knowledge_base/category/57207

Дальше работать можно через веб, можно через cli (kubectl), информация есть выше. А можно через (дискредетировавший себя) терраформ

https://registry.terraform.io/providers/G-Core/gcorelabs/latest/docs

https://github.com/G-Core/terraform-provider-gcorelabs/tree/master/examples

s3

Подключиться к S3 хранилищу с помощью aws cli и S3cmd

урлы и регионы

https://gcorelabs.com/support/articles/360002112138/

ацл и далее

https://gcorelabs.com/support/sections/360000563618/

четверг, 24 марта 2022 г.

Небольшая памятка по доменам и ссл

 Вроде неплохой вариант по ценам на домены

https://active.domains/domains/

И поскольку большинство ссл регистраторов отказались от РФ, нужно искать регистраторов GlobalSign. Терпимый вариант:

https://www.reg.ru/ssl-certificate/GlobalSign/

суббота, 19 марта 2022 г.

metabase in ubuntu

https://computingforgeeks.com/how-to-install-metabase-with-systemd-on-ubuntu/

sudo apt install -y default-jdk

sudo apt install mariadb-server mariadb-client

https://computingforgeeks.com/how-to-install-mariadb-on-ubuntu-lts-linux/

Для удобства делаем старт и управление через сервис systemd

После настройки добавляем нужные базы как дополнительные источники.

Так же, для безопасности (SSL) и удобства работы ставим nginx и примерно такое

# sample nginx.conf # proxy requests to Metabase instance server { listen 80; listen [::]:80; server_name your.domain.com; location / { proxy_pass http://127.0.0.1:3000; } }

https://www.metabase.com/docs/latest/operations-guide/running-metabase-on-debian.html

пятница, 4 марта 2022 г.

Очень важное преимущество своего геокластера перед облаками

 Очень важное преимущество своего геокластера перед облаками -- это... надёжность. Как бы ни было надёжно облако, однажды их владелец может сказать "мы больше не хотим работать с вашей страной", и просто всё удалить. Имеют право, обычно это прописано в условиях использования. И даже возможна ситуация, что сша поссорится с ес - и для всей ес минус амазон и оракл. 

В этом плане значительно надёжнее классическое "несколько независимых датацентров на независимых людей из разных стран" -- и ТАКОЕ убить будет крайне сложно. "кококо нужны админы" -- зато другие риски гораздо меньше.

Уточнение: если что, есть ещё китайское облако,  alicloud. Они пока не собирались ничего разрывать.

Такие дела.

вторник, 8 февраля 2022 г.

Замена для elasticsearch

 Как мне стало известно, эластик для включения SSO хочет денег (доступно только на ОЧЕНЬ платных тарифах), плюс всё больше добавляет телеметрии. И как мне сказали, с версии 7.12 убран функционал плагинов так, что сломалось многое, включая сторонние реализации SSO. 

И тут вспомнился скандал что амазон делал свои патчи, что очень не нравилось эластику. Очень быстро нашлось

https://www.infoq.com/news/2021/04/amazon-opensearch/

https://venturebeat.com/2021/07/13/amazons-elasticsearch-fork-opensearch-hits-prime-time/

Бонусом оказывается эластик стал менять лицензии на закрытые. "Жадность фраера сгубила". И теперь есть настоящий, вменяемый форк, с правильной версии, с правильными лицензиями, без лишней телеметрии и прочего жадного мусора.

Впрочем, не ёлкой единой. И если у logstash существует тьма замен (filebeat, journalbeat, fluentbit/fluentd, итд), то с эластиком сложнее. Хотя "слабое звено" в данном случае не эластик а кибана и нужно искать замену ей.

Использование Clickhouse в качестве замены ELK, Big Query и TimescaleDB

Чем заменить ELK для просмотра логов?


https://aws.amazon.com/ru/blogs/opensource/introducing-opensearch/

пятница, 5 ноября 2021 г.

Prometheus mysqld_exporter

https://grafana.com/oss/prometheus/exporters/mysql-exporter/?tab=installation

Сначала ставим сам экспортер, в докере или прямо на машину. Если сразу на машину (под отдельным юзером, никогда не пускаем софт без особой нужды под рутом)

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz
tar -zxvf mysqld_exporter*

воскресенье, 31 октября 2021 г.

oracle cloud + kubernetes

https://dragonflybsd.blogspot.com/2021/09/always-free-oracle-cloud.html


 Есть у оракла облако, и весьма интересно оно тем, что там можно получить 2 машинки по 1 гигу рам + 1 ядро, а также есть arm-based машины, зовётся Ampere, и там уже суммарно дают 4 ядра и 24 гига рам, то есть можно сделать хоть 1-1 (4 шт, дальше упрёмся в нехватку ядер), хоть 2-12+2-12, хоть 1 машину на все доступные ресурсы. Итого можно сделать от 1 до 4 виртуалок на арме + 2 на x86. Правда, есть нюансы с наличием, мне только через 2 недели повезло поймать завоз нового железа.

Итак, штатно идёт oracle linux, который по сути есть центос, поэтому можно взять инструкцию под кубер для центоси, но есть нюансы -- архитектура там всё-таки другая...

$ uname -i
aarch64

Так что, если есть желание разобраться, сначала читаем "что такое кубер"

И офсайт, в том числе по установке

https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/

Впрочем, есть автоустановка через kubespray

https://kubernetes.io/docs/setup/production-environment/tools/kubespray/

потом про кубер на арме, например на raspberry pi

https://habr.com/ru/company/flant/blog/435526/

https://habr.com/ru/company/skillfactory/blog/553212/

Читать интересно в том числе потому, что там есть и про диагностику, и более глубокое понимание системы.

Ну и обязательно для себя выбрать - k8s, MicroK8s, k3s, minicube


https://docs.oracle.com/en/operating-systems/oracle-linux/kubernetes/

суббота, 23 октября 2021 г.

Бэкапы mysql в 2021

 Кроме штатно mysqldump, который лочит таблицы, что вызывает в работе прода, есть весьма известный percona xtrabackup и сильно менее известный mariabackup

Отличия 2 утилит в том, что mariabackup это форк от xtrabackup, но там нужна целая матрица совместимостей -- тут можно только одним, там только другим, и между собой они совместимы не полностью. НО. Даже xtrabackup есть 2.4 и 8.0, и они тоже применимы в своих случаях! То есть 8.0 это только для mysql 8.0, для всех других версий ставить нужно строго 2.4.

Но и это не всё. mariabackup - судя по их сайту минимальная версия 10.2

The following MariaDB versions are currently supported:

mariadb-10.2

mariadb-10.3

mariadb-10.4

mariadb-10.5

Про xtrabackup можно почитать например это

https://habr.com/ru/post/520458/

Но сам бэкап ещё только пол дела, часто нужна информация о позиции в бинлоге (для поднятия слейва). Но и тут есть помощь, см

https://www.percona.com/doc/percona-xtrabackup/2.3/howtos/setting_up_replication.html

Ну и ещё чуть интересных ссылок

https://serveradmin.ru/polnyj-i-inkrementnyj-backup-mysql/

https://itc-life.ru/nastrojka-replikacii-mysql-s-pomoshhyu-xtrabackup-utility-percona/

https://minervadb.com/index.php/setup-mysql-slave-replication-with-percona-xtrabackup/

четверг, 14 октября 2021 г.

wscat vs websocat?

 Есть 2 утилиты для работы с ws

https://www.npmjs.com/package/wscat

https://github.com/vi/websocat

Первая ставится через npm, вторую можно просто скачать 1 файлом. А вот есть ли принципиальная разница?..

воскресенье, 3 октября 2021 г.

Некоторые особенности zfs

https://jrs-s.net/2017/03/15/zfs-clones-probably-not-what-you-really-want/

А всего-лишь нужно легковесное копирование, которое "поблочный клон данных и метаданных". У нас же CoW, там штатно используются "хардлинки" внутри фс, на тех же снапшотах. В лине реализуется cp --reflink, говорят btrfs умеет, а zfs - нет.

Костыль:

https://manpages.debian.org/testing/zfsutils-linux/zfs-promote.8.en.html

воскресенье, 26 сентября 2021 г.

terraform+aws, первые шаги

 Установка: если раньше надо было качать архивы и распаковывать, то уже (давно) есть фирменные репы, например 

https://www.terraform.io/docs/cli/install/apt.html

Дальше есть видео на офсайте

https://learn.hashicorp.com/tutorials/terraform/aws-build

В частности, надо поставить aws cli и получить Access Key (нужные линки под видео)

Дальше описываем provider и resource. При этом даже офдока создаёт путаницу, где описан в первом варианте единственный блок

module "ec2_instance" {

(под terraform >= 0.13.1)
Хотя если читать дальше, что это вроде как "наследовано" и классическая схема с resource работать будет ровно также.

После установки и запуска базового примера крайне советую смотреть лист от adv-it, там очень многое рассказано.


Далее, на одном из сайтов из топ-5 гугла есть такое описание ресурса
public_key = "${file("terraform-demo.pub")}"
но уже с 0.11 оно устарело:
Terraform 0.11 and earlier required all non-constant expressions to be
provided via interpolation syntax, but this pattern is now deprecated. To
silence this warning, remove the "${ sequence from the start and the }"
sequence from the end of this expression, leaving just the inner expression.

Вообще, если нашли какую-то доку и там проверили версию - смотрите чтобы было ну хотя бы 0.12, если меньше то относитесь к материалу скептически, оно могло устареть напрочь.