Clickhouse can't authenticate in MongoDB nor passing empty credentials - clickhouse

everyone. I've been following in Github the progression of this issue handling. I think and believe all is OK now. I just need you to tell me what to do in my deployments. I've just installed Clickhouse 21.8.9, and I'm trying to make some tests in order to extract from MongoDB and fill out an aggregatingMergeTree table in Clickhouse. I've been reading a lot of tech doc about Clickhouse possibilities, so I know that is not the only way to accomplish what I want to do. But it's a valid way, so I want to test it. My Clickhouse installation comes from downloaded DEB files (I'm using Ubuntu 20.04 in my laptop). According to some changes I saw in the Clickhouse repo at Github, it seems I might have to re-compile Clickhouse, is that correct? What do you advice me to do? Thanks in advance.
PS: I've just tried in a MongoDB 3.6 and a MongoDB 4.0, the outcome is the same: no admit empty username or cannot authenticate if I use credentials

Related

How do I create a snapshot of a VM in Oracle Cloud (OCI)?

I recently set up a Ubuntu Linux instance in Oracle Cloud. I'm used to take snapshots of VM's so I can roll back if something later goes wrong. In Digitalocean (droplet) this is as simple as pressing a button but in Oracle Cloud I can't seem to find this functionality. I've read documentation and Googled but to no avail. Also seems Oracle have several different cloud offerings with similar naming which makes it hard to find relevant information.
Go to boot volume and create a full backup. This will help you to restore your server to the last good configuration.

Automatically set up new Digital Ocean server for Laravel app

I know that https://forge.laravel.com/auth/register is available for $12/month*, but I'd like to understand how to accomplish the same thing myself.
What I assume is possible (and what I'm looking for): I create a server that has only Ubuntu 18.04.3 installed and nothing else, and I upload a script that installs all the appropriate software and sets up MySQL with the correct passwords, etc (without manual intervention).
I've tried Laradock and had tons of problems with Docker and don't want to do that anymore.
I see that https://cloud.digitalocean.com/droplets/new lets me create a LEMP droplet (Ubuntu, Nginx, MySQL, PHP-FPM) with one click. But it lacks Redis, and its versions are outdated (e.g. PHP 7.2).
I've heard people mention Chef (maybe this?), but that seems to be more complicated than what I'm imagining.
Unfortunately I'm not even sure how to search for what I'm trying to do (or how to tag this question); is this called "server provisioning"? I've been searching phrases like "automatic install script redis mysql server for laravel".
Thanks in advance for pointing me in the right direction.
* I also just found https://getcleaver.com/ and https://runcloud.io/server-management, which each look like Forge + Envoyer (and RunCloud offers a free plan).
It is called server provisioning and Chef would be a good fit for this, check out Ansible too - another thing you could do is setup the server yourself and create an image from that server and then base your new servers out of that image, that way you'll have all your services installed from the start.
This sounds like a job or something like Puppet (or Chef/Ansible), however Laravel Envoy may be another tool to look at if you haven't already for the second part of your problem.
I highly recommend Heroku (or similar service), as this is all done out of the box, and has a ton of other great features that make developing a pipeline a breeze.

Is there a tool to manage elasticsearch migration

I just started with ElasticSearch and I wish to automate migration between code versions.
For RDBMS I use tools like phinx that apply changes to the DB.
For example:
Create a migration file with up() & down() methods.
Write commands to apply (for example add index).
after tests and etc ./phinx migrate.
Is there a migration tool like this?
If not, is there another acceptable approach to handle changes to the cluster?
I have never heard of a tool like that specifically for ES indexes.
If your goal is to update the internal representation of your data, i think the best approach is just create a script that:
Find the affected documents
Read the contents
Modify them
Reindex them in a new doc
Then you can delete the old document.
Update a doc it wont be more efficient that reindex, since documents are immutable, so update is just get + reindex (https://www.elastic.co/guide/en/elasticsearch/guide/current/update-doc.html)
Flyway with code-based (e.g. Java) migrations can be used to work with any data store. Similar to migrating relational DB, but requires a bit more work since you need to implement calls to ElasticSearch with the relevant commands (e.g. create index).
https://flywaydb.org/documentation/concepts/migrations.html#java-based-migrations
Coming from a background of RDBMS, the migration tool is very handy when you are working with a big project that is having a lot of migrations files. I was also facing the same issue with Elasticsearch that currently there was no stable migration tool in the community.
I have created a migration tool and it will be handy if you are coming from a background of python https://pypi.org/project/chalan/. The core idea is taken from Alembic migration tool that is for Sqlalchemy.
Usage is simple
pip install chalan
Then for upgrade you have to use
chalan upgrade
And for downgrade you have to use
chalan downgrade
Please let me know if you face any issues with this tool and feel free to suggest some improvements if any.
For source code please refer the github link - https://github.com/anandtripathi5/chalan

Using CouchDB Replication via HTTPS

I am able to replicate local and remote databases using the CouchDB replication feature. However, if I specify the source to be a secure URL (e.g. https://www.mysecurehost.com) CouchDB returns a 500 error. I am able to successfully replicate if I specify the target to be a secure URL). I am using CouchDB V1.0.2. Any help regarding this matter would be greatly appreciated.
According to Cloudant support,
CouchDB (including version 1.0.1) has
trouble with HTTPS replication. If you
can, try replicating with plain HTTP.
Otherwise you’ll have to wait until
CouchDB 1.1 is released (ETA early
2011).
They reference bug COUCHDB-491 ("Support replication over SSL"), which appears to be closed, but not actually fixed.
Update: According to Cloudant, the problem is still present if you're using a version of Erlang older than R14.
The current CouchDB release 1.0.2 fixes these issues.

Using Ruby to access LDAP DIT

We use ACLs to grant access to svn repositories. The users/groups are stored in LDAP (openLDAP 2.4 (LDAP3). Does anyone know or used libraries/package (gems) I can use. Basically, I will traverse LDAP DIT and update my svn file based on that.
Connect to ldaps://xxxxxxxxxxx:636
Traverse DIT (subtree based on 'ou')
Read attributes
Write svn ACL file.
That's the high-level overview of what I would need to do. So, my question is regarding ldap package/library that I could use. I have heard of Net::LDAP. I'm very new to Ruby, so, I'm learning it as I go along.
Also, please correct me if I am mistaken. We are using ldaps:// that means when I connect to ldap server, the server will send a certificate. Do I need to do anything special to handle the certificate? Thank you
I have used Ruby/LDAP before, things worked fine with me.
There is a code example that comes with the gem. Also have a look at the documentation.

Resources