Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion tutorials/easydeploy-gitlab-server/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ tags: GitLab server kubernetes easy deploy
categories:
- containers
dates:
validation: 2024-06-20
validation: 2025-01-02
posted: 2024-06-20
validation_frequency: 24
---
Expand Down
26 changes: 14 additions & 12 deletions tutorials/install-ispconfig/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,13 @@ categories:
- domains-and-dns
tags: hosting ISPconfig Ubuntu Linux
dates:
validation: 2024-06-25
validation: 2025-01-02
posted: 2019-01-25
---

ISPConfig is an open-source, transparent, free, stable, and secure administration tool, available in more than 20 languages. ISPConfig simplifies the management of various web hosting services such as DNS configuration, domain name management, email, or FTP file transfer. It can be used to manage a single server, multiple servers for larger setups, or even mirrored clusters.
ISPConfig is an open-source, transparent, free, stable, and secure administration tool, available in more than 20 languages.
ISPConfig simplifies the management of various web hosting services such as DNS configuration, domain name management, email, or FTP file transfer.
It can be used to manage a single server, multiple servers for larger setups, or even mirrored clusters.

<Macro id="requirements" />

Expand All @@ -30,12 +32,12 @@ ISPConfig is an open-source, transparent, free, stable, and secure administratio

1. [Log into your Instance](/compute/instances/how-to/connect-to-instance/) via SSH using the root account.
2. Update and upgrade the software already installed on the Instance.
```
```bash
apt update && apt upgrade -y
```
3. Configure the hostname of your Instance.
* Open the `/etc/hosts` file in a text editor and ensure it looks like the following example: `IP address - space - subdomain.domain.tld - space - subdomain`.
```s
```
127.0.0.1 localhost.localdomain localhost
# This line should be changed to the correct servername:
127.0.1.1 server1.example.com server1
Expand All @@ -50,11 +52,11 @@ ISPConfig is an open-source, transparent, free, stable, and secure administratio
</Message>
* Edit the file `/etc/hostname` and make sure it contains only the subdomain part of the hostname (e.g. `server1`).
4. Reboot the Instance to apply the hostname configuration.
```
```bash
systemctl reboot
```
5. Login again and check the hostname configuration using the following commands:
```
```bash
hostname
hostname -f
```
Expand All @@ -66,13 +68,13 @@ ISPConfig is an open-source, transparent, free, stable, and secure administratio
<Message type="important">
Ensure a corresponding DNS record (A and/or AAAA) for the subdomain exists in your DNS zone and is pointing to the IP of your Instance.
</Message>
6. Download and run the ISPConfig auto-installer to install the panel with Nginx web server, a port range for passive FTP and unattended upgrades:
```
6. Download and run the ISPConfig auto-installer to install the panel with Nginx web server, a port range for passive FTP, and unattended upgrades:
```bash
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades
```
<Message type="tip">
If you want to install the Apache web server instead of Nginx run the following command instead:
```
If you want to install the Apache web server instead of Nginx, run the following command instead:
```bash
wget -O - https://get.ispconfig.org | sh -s -- --use-ftp-ports=40110-40210 --unattended-upgrades
```
</Message>
Expand All @@ -91,7 +93,7 @@ ISPConfig is an open-source, transparent, free, stable, and secure administratio
```
</Message>

## Configuring the firewall
## Configuring the firewall

1. Open the ISPConfig UI (e.g. `https://server1.example.com:8080`) and log in with your credentials.

Expand All @@ -111,4 +113,4 @@ ISPConfig is an open-source, transparent, free, stable, and secure administratio

6. Once you have added the necessary records, save the firewall configuration.

You now have finished the basic configuration of your server using ISPConfig. For further information and avanced configuration of your server, refer to the [official ISPConfig documentation](https://www.ispconfig.org/documentation/).con
You now have finished the basic configuration of your server using ISPConfig. For further information and advanced configuration of your server, refer to the [official ISPConfig documentation](https://www.ispconfig.org/documentation/).
53 changes: 28 additions & 25 deletions tutorials/k8s-gitlab/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ categories:
- kubernetes
- instances
dates:
validation: 2024-06-17
validation: 2025-01-02
posted: 2020-06-09
---

Expand All @@ -33,14 +33,22 @@ In this tutorial, you will learn how to use the `gitlab` Kubernetes integration

In this tutorial, we use `helm` to deploy a `gitlab` runner on a `Kapsule` cluster.

If you do not know how to install `helm`, follow the [tutorial](https://helm.sh/docs/intro/install/) on the official `helm` website.
Ensure you're using the latest version of Helm, which is Helm 3.16.2.

In the example below we have successfully installed `helm` version 3.2.0.
#### Installation Steps:

```
helm version
version.BuildInfo{Version:"v3.2.0", GitCommit:"e11b7ce3b12db2941e90399e874513fbd24bcb71", GitTreeState:"clean", GoVersion:"go1.13.10"}
```
1. Download Helm
```bash
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
```

2. Verify the installation:
```bash
helm version
```
Ensure the output shows version 3.16.2.

The `helm` charts are provided through repositories. By default `helm` 3 does not have any repository configured.
We will add the `gitlab` repository, as it provides the necessary chart to install the runner.
Expand All @@ -60,7 +68,7 @@ A `helm` chart is always shipped with a `value.yaml` file. It can be edited to c

In this part of the tutorial we customize the `value.yaml` to fit our needs and deploy the runner on `kapsule`.

1. Get the value.yaml:
1. Fetch the latest `values.yaml` file:
```
wget https://gitlab.com/gitlab-org/charts/gitlab-runner/-/raw/main/values.yaml
```
Expand All @@ -71,31 +79,26 @@ In this part of the tutorial we customize the `value.yaml` to fit our needs and
<Lightbox src="scaleway-token.webp" alt="" />

<Lightbox src="scaleway-token.webp" alt="" />
2. Fill the `value.yaml` with:
- the gitlabUrl (in our case `http://212.47.xxx.yyy/`)
- the registration token
- enable `rbac`

<Message type="note">
By default, the gitlabUrl and the registration token lines are written as a comment in the `values.yaml`file. Make sure you have deleted the `#` before saving.
</Message>

2. Open the file in a text editor and update the following fields in `values.yaml`:
```yaml
[..]
gitlabUrl: http://212.47.xxx.yyy/
runnerRegistrationToken: "t7u_qjh3EFJX2-yPypkz"
gitlabUrl: http://<your-gitlab-instance>/
runnerRegistrationToken: "<your-registration-token>"
rbac:
create: true
[..]
serviceAccountName: default
```
Ensure you replace `<your-gitlab-instance>` and `<your-registration-token>` with your actual GitLab instance URL and registration token.

We will use a dedicated [namespace](https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/).
3. To install the `gitlab` runner, create it on your `Kapsule` cluster:
<Message type="tip">
By default, the gitlabUrl and the registration token lines are written as a comment in the `values.yaml`file. Make sure you have deleted the `#` before saving.
</Message>

3. To install the `gitlab` runner, create it on your `Kapsule` cluster. We will use a dedicated [namespace](https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/).
```
kubectl create ns gitlab-runner
namespace/gitlab-runner created
```
The following output displays `namespace/gitlab-runner created`.

The default service account should use a new Kubernetes [role](https://kubernetes.io/docs/reference/access-authn-authz/rbac/#role-example), and [rolebinding](https://kubernetes.io/docs/reference/access-authn-authz/rbac/#rolebinding-example).
4. Use the following example to create a role and role binding and associate it to the default service account in the `gitlab-runner` namespace:
Expand All @@ -121,7 +124,7 @@ In this part of the tutorial we customize the `value.yaml` to fit our needs and
```
5. Use the `helm` command to install the runner (note that you specify in this command line the `values.yaml` file):
```
helm install --namespace gitlab-runner gitlab-runner -f ./values.yaml gitlab/gitlab-runner
helm install --namespace gitlab-runner gitlab-runner -f ./values.yaml gitlab/gitlab-runner --version 0.68.1
NAME: gitlab-runner
LAST DEPLOYED: Wed May 6 15:48:20 2020
NAMESPACE: gitlab-runner
Expand All @@ -131,7 +134,7 @@ In this part of the tutorial we customize the `value.yaml` to fit our needs and
NOTES:
Your GitLab Runner should now be registered against the GitLab instance reachable at: "http://212.47.xxx.yyy/"
```

The command above installs the GitLab Runner Helm chart version 0.68.1 in the `gitlab-runner` namespace.
You can check the runner is working in the `gitlab` console ("admin area" > runners):
<Lightbox src="scaleway-runnerok.webp" alt="" />

Expand Down
6 changes: 3 additions & 3 deletions tutorials/k8s-velero-backup/index.mdx
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
---
meta:
title: Back up your Kapsule cluster on Object Storage with Velero
description: Learn how to configure Velero to back up your Kubernetes Kapsule cluster on Object Storage in this tutorial.
description: Learn how to configure Velero to back up your Kubernetes Kapsule cluster on Scaleway Object Storage in this tutorial.
content:
h1: Back up your Kapsule cluster on Object Storage with Velero
paragraph: Learn how to configure Velero to back up your Kubernetes Kapsule cluster on Object Storage in this tutorial.
paragraph: Learn how to configure Velero to back up your Kubernetes Kapsule cluster on Scaleway Object Storage in this tutorial.
tags: velero k8s kubernetes kapsule object-storage
categories:
- kubernetes
- object-storage
dates:
validation: 2024-06-25
validation: 2025-01-02
posted: 2023-06-02
---

Expand Down
46 changes: 17 additions & 29 deletions tutorials/librenms-monitoring/index.mdx
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
---
meta:
title: Monitoring Instances with LibreNMS on Ubuntu Focal Fossa
title: Monitoring Instances with LibreNMS on Ubuntu Noble Numbat (24.04)
description: Learn how to monitor Instances using LibreNMS, an open-source PHP/MySQL network monitoring system.
content:
h1: Monitoring Instances with LibreNMS on Ubuntu Focal Fossa
h1: Monitoring Instances with LibreNMS on Ubuntu Noble Numbat (24.04)
paragraph: Learn how to monitor Instances using LibreNMS, an open-source PHP/MySQL network monitoring system.
tags: LibreNMS Ubuntu Focal-Fossa
categories:
- instances
dates:
validation: 2024-06-25
validation: 2025-01-02
posted: 2019-07-04
---

LibreNMS is a fully-featured network monitoring system that supports a wide range of network hardware and operating systems including Linux and Windows. As well as network equipment made by Cisco, Juniper, Foundry, and many more.
Learn how to use LibreNMS to monitor Instances on Ubuntu 24.04 (Noble Numbat). LibreNMS is an open-source network monitoring system supporting a wide range of network hardware and operating systems, including Linux and Windows.

The software is based on PHP and MySQL (MariaDB) and is a community-based fork of the last GPL-licensed version of Observium.

Expand All @@ -22,49 +22,38 @@ The software is based on PHP and MySQL (MariaDB) and is a community-based fork o
- A Scaleway account logged into the [console](https://console.scaleway.com)
- [Owner](/identity-and-access-management/iam/concepts/#owner) status or [IAM permissions](/identity-and-access-management/iam/concepts/#permission) allowing you to perform actions in the intended Organization
- An [SSH key](/identity-and-access-management/organizations-and-projects/how-to/create-ssh-key/)
- An [Instance](/compute/instances/how-to/create-an-instance/) running on Ubuntu Focal Fossa Beaver
- An [Instance](/compute/instances/how-to/create-an-instance/) running on Ubuntu Noble Numbat (24.04)
- A [domain or subdomain](/network/domains-and-dns/quickstart/) pointed to your Instance

## Installing LibreNMS

1. Update the apt repository information.
1. Update the apt package cache and upgrate the already installed system packages:
```
apt update
apt update && apt upgrade -y
```
2. Install the required packages.
```
apt install software-properties-common
add-apt-repository universe
apt update
apt install acl curl composer fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php7.4-cli php7.4-curl php7.4-fpm php7.4-gd php7.4-json php7.4-mbstring php7.4-mysql php7.4-snmp php7.4-xml php7.4-zip python3-memcache python3-mysqldb python3-pip rrdtool snmp snmpd whois
apt install -y acl curl composer fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php-cli php-curl php-fpm php-gd php-json php-mbstring php-mysql php-snmp php-xml php-zip python3-memcache python3-mysqldb python3-pip rrdtool snmp snmpd whois
```
3. Create a user for LibreNMS:
```
useradd librenms -d /opt/librenms -M -r
usermod -a -G librenms www-data
```
4. Enter the directory `/opt` and download LibreNMS:
useradd -r -M -d /opt/librenms librenms
usermod -aG librenms www-data
```
cd /opt
git clone https://github.com/librenms/librenms.git
```
5. Set the permissions:
4. Download and configure LibreNMS:
```
git clone https://github.com/librenms/librenms.git /opt/librenms
chown -R librenms:librenms /opt/librenms
chmod 770 /opt/librenms
setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
```
6. Switch into the `librenms` user:
```
su - librenms
```
7. Install the PHP dependencies:

5. Install PHP dependencies:
```
sudo -u librenms bash
cd /opt/librenms
./scripts/composer_wrapper.php install --no-dev
```
8. Logout from the user session:
```
exit
```

Expand All @@ -88,8 +77,7 @@ LibreNMS stores the data collected from the monitored systems in a MySQL databas
FLUSH PRIVILEGES;
exit
```

Replace `<a_secure_password>` with a secure password of your choice.
Replace `<a_secure_password>` with a secure password of your choice.
4. Open the file `/etc/mysql/mariadb.conf.d/50-server.cnf` in a text editor, for example `nano`:
```
nano /etc/mysql/mariadb.conf.d/50-server.cnf
Expand Down
10 changes: 4 additions & 6 deletions tutorials/manage-database-instance-pgadmin4/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ categories:
- compute
- postgresql-and-mysql
dates:
validation: 2024-06-25
validation: 2025-01-02
posted: 2019-10-28
---

[pgAdmin](https://www.pgadmin.org/) is an open-source management tool for PostgreSQL databases. It allows the management of your [Scaleway Database Instances](https://www.scaleway.com/en/database/) and other PostgreSQL databases through an easy-to-use web-interface within your web browser.
pgAdmin is an open-source management tool for PostgreSQL databases. It allows the management of your [Scaleway Database Instances](https://www.scaleway.com/en/database/) and other PostgreSQL databases through an easy-to-use web-interface within your web browser.

<Macro id="requirements" />

Expand All @@ -29,14 +29,12 @@ dates:

1. [Connect to your Instance](/compute/instances/how-to/connect-to-instance/) via SSH.
2. Update the `apt` sources and the software already installed on the Instance:

```
apt update && apt upgrade -y
```
3. Import the PostgreSQL [repository key](https://www.postgresql.org/media/keys/ACCC4CF8.asc):
3. Import the PostgreSQL repository signing key:
```
sudo apt-get install curl ca-certificates gnupg
sudo curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add
curl -fsS https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo gpg --dearmor -o /usr/share/keyrings/packages-pgadmin-org.gpg
```
4. Add the PostgreSQL repository to the APT package manager, by configuring the file `/etc/apt/sources.list.d/pgdg.list`:
```
Expand Down
Loading
Loading