4c74356b41
а кто-то встречался с рандомными спайками во времени dns "резолюшн" внутри под в кубернетесе
George
Anonymous
Попробуй, засунь :-)
Я в трех чатиках спецом спросил: в скулячем, тут и в петонячем. Мне вот в одном говорят, что всё в одну транзакцию можно воткнуть. Но я чет не уверен, хотя сам и не проверял
Vladimir
Vladimir
и соответственно влиять на скорость
Anonymous
Vladimir
ты можешь хоть перед транзакцией делать дамп базы и если что отказываться к нему )
Vladimir
можешь тупо вести статистику списаний и оффлайном высчитывать баланс, писать его в новую таблицу, а потом махать местами с имеющейся.
Vladimir
можно много чего придумать
Vladimir
вопрос в том, какую именно проблему ты решаешь
Anonymous
Ну вот как выше описал - есть скриптец, который вкатывает апдейты...
Александр
кстати, а почему именно полностью?
Anonymous
Ну вот ща неполностью - количество геморроия овердохуя вышло.
Anonymous
Грубо выражаясь, дальше возникает проблема с синхронизациями состояний. Пока докатываешь, уже в первую часть новые апдейты по платежам прилетели
Anonymous
Тту логичней все заморозить, откатиться и вкатить заново
Александр
ну хз, как по мне - надо детальнее смотреть
Александр
видел в одном из биллингов подход с контрольными точками
Александр
т.е. абон.плата начисляется, например, раз в сутки; при начислении пользователю создаётся контрольная точка в отдельной табличке
Александр
соответственно при следующем запуске начислялка смотрит, что было начисление сегодня, и пропускает пользователя
Александр
либо можно попросить пересчитать абон.плату - тогда ненужные точки удаляются, и задача сводится к известной
George
еще вариант
George
ты делаешь списание в какую-нибудь временную таблицу, потом атомарно свопаешь их.
George
для тебя главное, чтобы во время списания не произошло каких-либо еще операций (ну, типа пополнения баланса).
George
либо кафка-хуяфка (раббит такое себе)
George
либо еще микробатчами списывать деньги. Потому что транзакция на 10 млн = ок, но может дорого стоить в плане роллбека, если что-то пошло не так
George
я уж не говорю о том, что транзакция сама по себе у тебя на клиентской стороне может и не дать acknowledge, что она прошла. И ты по второму кругу ее погонишь
George
и сделаешь двойное списание. Это нужно учесть в архитектуре приложухи и в запросах к БД
Anonymous
@kezzzzz будет жить. Поприветствуем!
Stefan
@gecube
привет)
может в курсе, есть возможность использывать безопасное соединение для докер сокета, не юзая CA сертификат? а то я не понял где мне его взять
Stefan
George
George
В этом и ответ
Stefan
Так ты же по tcp коннектишься
да, только вот чтоб я мог использывать защищенный порт, нужно приложить в конфиг daemon.json докера 3 файла
CAcert
tlscert
key
Stefan
В этом и ответ
When you say CACERT - do you mean the actual ROOT CA cert?
Or the chained CA cert (between the cert and the root)?
Just for reference:
cert.pem = public cert
chain.pem = all intermediate certs
root.pem (would be the root cert; but no one hands those out - bad idea - they should already be known)
And
fullchain.pem (which should also be named certchain.pem) = cert.pem + chain.pem
Which equals: public cert + all intermediate certs
and that one gives you all there is to give.
не совсем в итоге понятно что из этого всего именно CAcert
Stefan
а всё, похоже нашел, нужно будет поэксперементировать
Here the correspondences are:
chain.pem → cacert.pem
cert.pem → servertcrt.pem
privkey.pem → serverkey.pem
George
George
Логика есть
Ph
У кого нибудь получалось подружить jira с керберосом бесплатно?))
George
бесплатную джиру?
George
или подружить бесплатно?
V
George
В топку ее
George
https://www.keycloak.org/ ?
Bogdan (SirEdvin)
У кейклока есть лдап
George
V
да выше ведь
V
George
Ну, и отлично )
Anonymous
Саня будет жить. Поприветствуем!
Stefan
подскажите пожалуйта, может здесь еще кто-то натолкнет на мысль, что я упустил или делаю не так
есть swarm(1 master, 1 worker)
на мастере настроил tls докер сокет, перезапустил докер - всё ок. Проверял коннект как с гитлаб сервака, так и с докер окружения к мастеру - тоже всё ок
создал такой вот .gitlab-ci.yml:
https://pastebin.com/rxsAkZ9P
билд проходит успешно, но когда начинается стейдж деплоя, получаю такую ошибку:
Service container logs:
2018-12-13T00:02:32.786387409Z Failed to create API server: Could not load X509 key pair (cert: "", key: ""): open : no such file or directory
could not read CA certificate "/certificates/ca.pem": open /certificates/ca.pem: no such file or directory
Складывается впечатление что тупо не создается папка с сертами и ключами клиента, которые нужны для подключения к swarm мастеру
Stefan
George
@stef_kkk дружище, мы же обсуждали?
George
ты вывод ls -lr /certificates добавь в пайплайн )
George
Там где у тебя ошибка, очевидно. Давай убедимся, что каталог есть
George
И файлы на месте
Stefan
И файлы на месте
добавил, только вот оно даже не доходит до команд похоже
крашется сразу на шаге docker login -u root -p $REGISTRY_PASSWORD $CI_REGISTRY
George
А ты поменяй их местами
George
Или сделай так
George
blablabla || true
George
Чтобы игнорировать код возврата
Stefan
чтоб компоуз-файл с переменной могло задеплоить?
Stefan
а то там внутри него тэг с хэшом и имеджем
George
Stefan
спасибище тебе, мужик!
George
А?
Stefan
я даже поверить не могу, что проблема было тупо в последовательности комманд в стейдже деплоя
было так(сори за простыню)
script:
- docker login -u root -p $REGISTRY_PASSWORD $CI_REGISTRY
- mkdir -p $DOCKER_CERT_PATH
- echo "$TLSCACERT" > $DOCKER_CERT_PATH/ca.pem
- echo "$TLSCERT" > $DOCKER_CERT_PATH/cert.pem
- echo "$TLSKEY" > $DOCKER_CERT_PATH/key.pem
- ls -lr /certificates
- docker stack deploy -c docker-compose.yml app --with-registry-auth
сделал так:
- mkdir -p $DOCKER_CERT_PATH
- echo "$TLSCACERT" > $DOCKER_CERT_PATH/ca.pem
- echo "$TLSCERT" > $DOCKER_CERT_PATH/cert.pem
- echo "$TLSKEY" > $DOCKER_CERT_PATH/key.pem
- ls -lr /certificates
- docker login -u root -p $REGISTRY_PASSWORD $CI_REGISTRY
- docker stack deploy -c docker-compose.yml app --with-registry-auth
Stefan
и завелось...
George
вау. гречка!
Stefan
че за бред, какая разница когда ему авторизироваться... в самом начале или самом конце почти
George
George
потому что когда ты делаешь docker login, то он УЖЕ происходит на УДАЛЕННОМ сервере
George
к которому доступ по сертификатам
Denis
удобно авторизовываться без сертов то )
Stefan
Stefan