Common operations on X-as-a-Service » History » Revision 6
Revision 5 (Timothée Floure, 03/20/2020 02:05 PM) → Revision 6/13 (Timothée Floure, 03/20/2020 02:19 PM)
h1. Common operations on X-as-a-Service
h2. Matrix-as-a-Service
h3. Contact customer for setup informations
Do not forget to replace @$CUSTMER@!
<pre>
Hello $CUSTOMER,
I will deploy your Matrix homeserver and need a few configuration details from
you. I do not know how familiar you are with Matrix or technical terms:
do not hesitate to tell me if I go to fast or to slow for you.
First of all, each Matrix homeserver is linked to domain name (you users will look
like `@username:domain.tld`) for federation. I can offer you two options here,
but remember that the chosen domain name cannot be changed afterward:
* Your own domain (e.g. domain.tld).
* One domain controlled by ungleich (e.g. $CUSTOMER.0co2.cloud,
$CUSTOMER.ungleich.cloud).
Secondly, I will deploy a Riot web matrix client for convenience (you can use
the desktop or smartphone clients as well) and need a domain for that as well:
* Your own domain (e.g. matrix.domain.tld)
* One domain controlled by ungleich (e.g. matrix.$CUSTOMER.0c02.cloud).
Lastly, I will configure the Matrix homeserver for you. You can ask us to set
any configuration option but we at least need to know your preferences in term
of registration:
* Should it be backed by an existing user directory (LDAP)?
* Should registrations be filtered by domain of email address? (e.g. anyone
with a @domain.tld email address can register).
* Should anyone be allowed to register?
Feel free to ask me any matrix-related question, as I am a heavy matrix user
myself.
Best Regards,
--
</pre>
h3. Deploy new MaaS instance
WIP -> ask @fnux for now.
* Contact customer to get configuration details (this might take some time => do it first).
* Allocate VM in OpenNebula, based on Debian 10 (IPv6Only).
* Attach HDD storage to created VM (Help: [[Common operations at DCLIPv6OnlyHosting]]).
- Create EXT4 filesystem: @mkfs.ext4 $DEVICE@
- Add FSTAB entry for /var on $DEVICE.
- Get UUID with @blkid@.
- Should look like: @UUID=$MY_UUID /var ext4 errors=remount-ro 1 2@
- Mount data disk on /mnt.
- Move content of /var to /mnt.
- Unmount data disk from /mnt.
- Mount data disk to /var with @mount -a@ (uses configuration in /etc/fstab).
- *Reboot* and make sure that /var is properly mounted.
* Upgrade VM: update/upgrade.
* Make sure VM is up-to-date (base image might be old).
- @apt update@
- @apt upgrade@
* Once you get details from customer, configure Add DNS entries:
- Main homeserver address: @$CUSTOMER.matrix.ungleich.cloud@
- @files/dns/matrix.ungleich.cloud@ entry in dot-cdist.
- Whatever is needed for Riot-web.
- Do not forget to configure the IPv4-to-IPv6 proxy! See [[Common operations on IPv4-to-IPv6-Proxy]].
matrix.ungleich.cloud
* Add server to matrix-as-a-service manifest in dot-cdist. Deploy.
- You can find the detailed parameters of synapse and riot in the @__matrix_synapse@ and @__matrix_riot@. manifest, deploy
* Have customer configure his domain.
* Create initial admin user:
- TODO
* Configure federation:
- TODO use.
h3. Upgrade a running MaaS instance
TODO -> ask @fnux for now.
h3. Deploy Matterbridge application service
TODO -> ask @fnux for now.