Skip to content

Commit

Permalink
June 10 2024 Marketplace Release (#6968)
Browse files Browse the repository at this point in the history
* couchbase occ, prom graf, wp

* couchbase cluster, wazuh, ols wordpress, plesk, update deprecated git ref

* ipdate _index.md, add apache kafka cluster

* add apache cassandra cluster

* delay cassandra

* remove from _index

* update ant media login instructions

* PR review

* read uppercase

* keystores and truststores added to dictionary

* Formatting fixes

---------

Co-authored-by: Anna Bracha <[email protected]>
Co-authored-by: Matthew Wildman <[email protected]>
  • Loading branch information
3 people authored Jun 10, 2024
1 parent 4948976 commit 9cb5ae5
Show file tree
Hide file tree
Showing 39 changed files with 427 additions and 98 deletions.
2 changes: 2 additions & 0 deletions ci/vale/dictionary.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1225,6 +1225,7 @@ keysize
keyspace
keyspaces
keystore
keystores
kfctl
khanaser
kibana
Expand Down Expand Up @@ -2566,6 +2567,7 @@ trie
trivy
trojan
truststore
truststores
tt
ttl
TTLs
Expand Down
2 changes: 2 additions & 0 deletions docs/products/tools/marketplace/guides/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,15 @@ See the [Marketplace](/docs/marketplace/) listing page for a full list of all Ma
- [Ant Media Server Enterprise Edition](/docs/products/tools/marketplace/guides/antmediaenterpriseserver/)
- [Ant Media Server](/docs/products/tools/marketplace/guides/antmediaserver/)
- [Apache Airflow](/docs/products/tools/marketplace/guides/apache-airflow/)
- [Apache Kafka Cluster](/docs/products/tools/marketplace/guides/apache-kafka-cluster/)
- [Appwrite](/docs/products/tools/marketplace/guides/appwrite/)
- [AzuraCast](/docs/products/tools/marketplace/guides/azuracast/)
- [BeEF](/docs/products/tools/marketplace/guides/beef/)
- [Budibase](/docs/products/tools/marketplace/guides/budibase/)
- [Chevereto](/docs/products/tools/marketplace/guides/chevereto/)
- [Cloudron](/docs/products/tools/marketplace/guides/cloudron/)
- [ClusterControl](/docs/products/tools/marketplace/guides/clustercontrol/)
- [Couchbase Cluster](/docs/products/tools/marketplace/guides/couchbase-cluster/)
- [Counter-Strike Global Offensive](/docs/products/tools/marketplace/guides/counter-strike-go/)
- [cPanel](/docs/products/tools/marketplace/guides/cpanel/)
- [CyberPanel](/docs/products/tools/marketplace/guides/cyberpanel/)
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The Enterprise Edition of Ant Media Server requires a valid license to use the s

### Ant Media Server Options

- **SOA email address:** Enter the email address that should be used for the SSL generation.
- **Email address for the Ant Media Server Login & SSL Generation:** Enter the email address that should be used to log into the Ant Media Dashboard, and generate free Let's Encrypt SSL certificates.

{{% content "marketplace-required-limited-user-fields-shortguide" %}}

Expand All @@ -46,17 +46,36 @@ The Enterprise Edition of Ant Media Server requires a valid license to use the s

### Access the Ant Media Server Dashboard

1. Open your web browser and navigate to `https://[domain]:5443`, where *[domain]* can be replaced with the custom domain you entered during deployment or your Compute Instance's rDNS domain (such as `192-0-2-1.ip.linodeusercontent.com`). You can also use your IPv4 address. See the [Managing IP Addresses](/docs/products/compute/compute-instances/guides/manage-ip-addresses/) guide for information on viewing IP addresses and rDNS.
{{< note >}}
The Ant Media Server will deploy with an administrator account preconfigured using the email entered in the `email address` UDF on deployment. The generated password is in the `/home/$USERNAME/.credentials` along with the sudo user password.
{{< /note >}}

1. Using [LISH](/docs/products/compute/compute-instances/guides/lish/) or [SSH](/docs/guides/connect-to-server-over-ssh/) connect to the instance and access the Ant Media Server credentials in the `/home/$USERNAME/.credentials` file. You will find an example of the output below. Keep in mind that $USERNAME will be replaced with your chosen sudo username.

```command
cat /home/$USERNAME/.credentials
```

```output
Sudo Username: $USERNAME
Sudo Password: Fs4WomBrHCI27M5fZg2PJfnW
Ant Media Server Username: [email protected]
Ant Media Server Password: 79KP106i3AxW8YOmaWA7FNVo
```

1. Open your web browser and navigate to `https://[domain]:5443`, where *[domain]* can be replaced with the custom domain you entered during deployment or your Compute Instance's rDNS domain (such as `192-0-2-1.ip.linodeusercontent.com`). You can also use your IPv4 address. See the [Managing IP Addresses](/docs/products/compute/compute-instances/guides/manage-ip-addresses/) guide for information on viewing IP addresses and rDNS.
1. Use the `Ant Media Server Username` and `Ant Media Server Password` from the `credentials` file to log into the Ant Media Dashboard.
1. After your account has been created, the login page appears. Enter the username and password that you just created. The username and password can be obtained in the `/home/$USERNAME/.credentials` file.
![Screenshot of Ant Media Login](ant-media-login.jpg)
1. Once logged in, the Ant Media Server Dashboard appears. From here, you can manage your entire application.
1. Once logged in to the Ant Media Server Dashboard, you can manage your entire application.
![Screenshot of the Dashboard page](ant-media-server-dashboard.png)
1. To start using the Enterprise Edition of Ant Media Server, you need to obtain a license. Visit the [Self-Hosted Solutions](https://antmedia.io/#selfhosted) page on Ant Media's website to order a license.
1. To start using the Enterprise Edition of Ant Media Server, you need to obtain a license. Visit the [Self-Hosted Solutions](https://antmedia.io/#selfhosted) page on Ant Media's website to order a license.

1. Once the license key is obtained, navigate to the Settings tab within the Ant Media Dashboard, enter the License Key, and click save.
1. Once you obtained the license key, navigate to the Settings tab within the Ant Media Dashboard, enter the License Key, and click **Save**.

![Screenshot of the Settings Page](ant-media-server-settings.png)

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
33 changes: 26 additions & 7 deletions docs/products/tools/marketplace/guides/antmediaserver/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Deploy Ant Media Server Community Edition through the Linode Marketplace"
description: 'This guide will show you how to install and configure Ant Media Server so you can stream video online using the Linode One-Click Marketplace App.'
published: 2021-03-30
modified: 2024-04-24
modified: 2024-06-06
keywords: ['streaming', "marketplace", "live video streaming"]
tags: ["marketplace", "linode platform", "cloud manager"]
external_resources:
Expand Down Expand Up @@ -45,7 +45,7 @@ If you need adaptive streaming, cluster, load balancer, and hardware encoding, c

### Ant Media Server Options

- **SOA email address:** Enter the email address that should be used for the SSL generation.
- **Email address for the Ant Media Server Login & SSL Generation:** Enter the email address that should be used to log into the Ant Media Dashboard, and generate free Let's Encrypt SSL certificates.

{{% content "marketplace-required-limited-user-fields-shortguide" %}}

Expand All @@ -57,17 +57,36 @@ If you need adaptive streaming, cluster, load balancer, and hardware encoding, c

### Access the Ant Media Server Dashboard

1. Open your web browser and navigate to `https://[domain]:5443`, where *[domain]* can be replaced with the custom domain you entered during deployment or your Compute Instance's rDNS domain (such as `192-0-2-1.ip.linodeusercontent.com`). You can also use your IPv4 address. See the [Managing IP Addresses](/docs/products/compute/compute-instances/guides/manage-ip-addresses/) guide for information on viewing IP addresses and rDNS.
{{< note >}}
The Ant Media Server will deploy with an administrator account preconfigured using the email entered in the `email address` UDF on deployment. The generated password can be found in `/home/$USERNAME/.credentials`, along with the sudo user password.
{{< /note >}}

1. Using [LISH](/docs/products/compute/compute-instances/guides/lish/) or [SSH](/docs/guides/connect-to-server-over-ssh/) connect to the instance and access the Ant Media Server credentials in the `/home/$USERNAME/.credentials` file. You will find an example of the output below. Keep in mind that $USERNAME will be replaced with your chosen sudo username.

```command
cat /home/$USERNAME/.credentials
```

```output
Sudo Username: $USERNAME
Sudo Password: Fs4WomBrHCI27M5fZg2PJfnW
Ant Media Server Username: [email protected]
Ant Media Server Password: 79KP106i3AxW8YOmaWA7FNVo
```

1. Open your web browser and navigate to `https://[domain]:5443`, where *[domain]* can be replaced with the custom domain you entered during deployment or your Compute Instance's rDNS domain (such as `192-0-2-1.ip.linodeusercontent.com`). You can also use your IPv4 address. See the [Managing IP Addresses](/docs/products/compute/compute-instances/guides/manage-ip-addresses/) guide for information on viewing IP addresses and rDNS.
1. Use the `Ant Media Server Username` and `Ant Media Server Password` from the `credentials` file to log into the Ant Media Dashboard.
1. After your account has been created, the login page appears. Enter the username and password that you just created. The username and password can be obtained in the `/home/$USERNAME/.credentials` file.
![Screenshot of Ant Media Login](ant-media-login.jpg)
1. Once logged in, the Ant Media Server Dashboard appears. From here, you can manage your entire application.
1. Once logged in to the Ant Media Server Dashboard, you can manage your entire application.
![Screenshot of the Dashboard page](ant-media-server-dashboard.png)
1. To start using the Enterprise Edition of Ant Media Server, you need to obtain a license. Visit the [Self-Hosted Solutions](https://antmedia.io/#selfhosted) page on Ant Media's website to order a license.
1. To start using the Enterprise Edition of Ant Media Server, you need to obtain a license. Visit the [Self-Hosted Solutions](https://antmedia.io/#selfhosted) page on Ant Media's website to order a license.

1. Once the license key is obtained, navigate to the Settings tab within the Ant Media Dashboard, enter the License Key, and click save.
1. Once the license key is obtained, navigate to the Settings tab within the Ant Media Dashboard, enter the License Key, and click **Save**.

![Screenshot of the Settings Page](ant-media-server-settings.png)

Expand Down
133 changes: 133 additions & 0 deletions docs/products/tools/marketplace/guides/apache-kafka-cluster/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
---
title: "Deploy Apache Kafka through the Linode Marketplace"
description: Apache Kafka is a robust, scalable, and high-performance system for managing real-time data streams. Its versatile architecture and feature set make it an essential component for modern data infrastructure, supporting a wide range of applications from log aggregation to real-time analytics and more. Whether you are building data pipelines, event-driven architectures, or stream processing applications, Kafka provides a reliable foundation for your data needs."
published: 2024-06-10
modified: 2024-06-10
keywords: ['kafka','apache kafka', 'marketplace', 'streaming', 'queue']
tags: ["ubuntu","marketplace", "streaming applications", "linode platform", "cloud manager", "ssl", "cloud storage", "high availability", "compute storage"]
external_resources:
- '[About Apache Kafka](https://kafka.apache.org/)'
- '[Apache Kafka Documentation](https://kafka.apache.org/documentation/)'
---

[Apache Kafka](https://kafka.apache.org/) is a robust, scalable, and high-performance system for managing real-time data streams. Its versatile architecture and feature set make it an essential component for modern data infrastructure, supporting a wide range of applications, from log aggregation to real-time analytics and more. Whether you are building data pipelines, event-driven architectures, or stream processing applications, Kafka provides a reliable foundation for your data needs.

Our marketplace application allows the deployment of a Kafka cluster using Kafka's native consensus protocol, [KRaft](https://kafka.apache.org/documentation/#kraft). There are a few things to highlight from our deployment:

- While provisioning, the cluster will be configured with mTLS for authentication. This means that inter-broker communication as well as client authentication is established via certificate identity.
- The minimum cluster size is 3. At all times, 3 controllers are configured in the cluster for fault-tolerance.
- Clients that connect to the cluster need their own valid certificate. All certificates are signed with a self-signed Certificate Authority (CA). Client keystores and truststore are found on the first Kafka node in `/etc/kafka/ssl/keystore` and `/etc/kafka/ssl/truststore` once the deployment is complete.
- The CA key and certificate pair are on the first Kafka node in `/etc/kafka/ssl/ca` once the deployment is complete.


## Cluster Deployment Architecture

![Kafka Architecture](kafka-cluster.png)

## Deploying a Marketplace App

{{% content "deploy-marketplace-apps-shortguide" %}}

{{% content "marketplace-verify-standard-shortguide" %}}

{{< note >}}
**Estimated deployment time:** Your Kafka cluster should be fully installed within 5-7 minutes after the Compute Instance has finished provisioning.
{{< /note >}}

## Configuration Options

- **Supported distributions:** Ubuntu 22.04 LTS
- **Suggested minimum plan:** All plan types and sizes can be used depending on your storage needs.

### Kafka Options

- **[Linode API Token](/docs/products/tools/api/guides/manage-api-tokens/#create-an-api-token):** The provisioner node uses an authenticated API token to create the additional components to the cluster. This is required to fully create the Kafka cluster.

{{% content "marketplace-required-limited-user-fields-shortguide" %}}

- **Number of clients connecting to Kafka:** The number of clients that will be connecting to the cluster. The application will create SSL certificates for your client that need to connect to the cluster. This should be an integer equal or greater than 1.

- **Kafka cluster size:** The size of the Kafka cluster. One of 3, 5 or 7 instances.

- **Country or Region:** Enter the country or region for you or your organization.

- **State or Province:** Enter the state or province for you or your organization.

- **Locality:** Enter the town or other locality for you or your organization.

- **Organization:** Enter the name of your organization.

- **Email Address:** Enter the email address you wish to use for your certificate file.

{{% content "marketplace-special-character-limitations-shortguide" %}}

## Getting Started After Deployment

### Obtain Keystore and Truststore

Once the deployment is complete, obtain your client certificates from the first Kafka node. Authenticating clients requires a keystore and truststore. Access the first Kafka server and obtain your client keystores from `/etc/kafka/ssl/keystore` and `/etc/kafka/ssl/truststore`. Client certificates start with the word "client" and a number which depends on the number of clients you wanted, for example, **client1** and **client2**.

We suggest transferring the client certificates to the Kafka consumer/producers using a secure method such as SSH or an encrypted HTTPS web UI.

### Authentication

Once you've copied over your keystores and truststores to your client, your client applications(s) will need the password to the keystore and truststore. The credentials can be found in the home directory of the sudo user created on deployment: `/home/$SUDO_USER/.credentials`. For example, if you created a user called `admin`, the credentials file will be found in `/home/admin/.credentials`.

### Testing

You can run a quick test from any of the Kafka nodes using Kafka's utilities found in `/etc/kafka/bin`.

1. Create a file called `client.properties` with the following content:

```file {title="client.properties"}
security.protocol=SSL
ssl.truststore.location=/etc/kafka/ssl/truststore/server.truststore.jks
ssl.truststore.password=CHANGE-ME
ssl.keystore.location=/etc/kafka/ssl/keystore/client1.keystore.jks
ssl.keystore.password=CHANGE-ME
```
Make sure that you update the values marked with **CHANGE-ME** with your own.
1. Create a topic to test the connection and authentication:
```command
/etc/kafka/bin/kafka-topics.sh --create --topic test-ssl --bootstrap-server kafka3:9092 --command-config client.properties
```
This results in the following output:
```output
Created topic test-ssl.
```
1. Once the topic is created, you can publish a message to this topic as a producer:
```command
echo "Kafka rocks!" | /etc/kafka/bin/kafka-console-producer.sh --topic test-ssl --bootstrap-server kafka3:9092 --producer.config client.properties
```
1. You can read the message as a consumer by issuing the following:
```command
/etc/kafka/bin/kafka-console-consumer.sh --topic test-ssl --from-beginning --bootstrap-server kafka3:9092 --consumer.config client.properties
```
This results in the following output:
```output
Kafka rocks!
```
## Software Included
The Apache Kafka Marketplace App installs the following software on your Linode:
| **Software** | **Version** | **Description** |
| :--- | :---- | :--- |
| **Apache Kafka** | 3.7.0 | Scalable, high-performance, fault-tolerant streaming processing application |
| **KRaft** | | Kafka native consensus protocol |
| **UFW** | 0.36.1 | Uncomplicated Firewall |
| **Fail2ban** | 0.11.2 | Brute force protection utility |
{{% content "marketplace-update-note-shortguide" %}}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
10 changes: 5 additions & 5 deletions docs/products/tools/marketplace/guides/chevereto/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Deploy Chevereto through the Linode Marketplace"
description: "This guide shows you how to install Chevereto, a modern image sharing solution with drag-and-drop upload experience and more, using the Linode One-Click Marketplace."
published: 2021-08-13
modified: 2022-05-17
modified: 2022-06-06
keywords: ['photo storage','images','Marketplace']
tags: ["marketplace", "linode platform", "cloud manager"]
external_resources:
Expand Down Expand Up @@ -40,19 +40,19 @@ Chevereto requires a valid license to use the software. To purchase a license, v

ssh [email protected]

1. You should see the Chevereto welcome message when logging into the Linode. This includes instructions for accessing the Chevereto installation script in your web browser along with the location of the credentials to the application. Replace `192.0.2.0` with your Linode’s IP address.
1. You should see the Chevereto welcome message when logging into the Linode. This includes instructions for accessing the Chevereto installation script in your web browser, along with the location of the credentials to the application. Replace `192.0.2.0` with your Linode’s IP address.

![Chevereto Login Instruction](chevereto-login.png)

1. You will then be able to proceed through the Chevereto Installer.

![Chevereto Installer](chevereto-installer.png)

1. To utilize Chevereto, you need to obtain a license key. You can do so clicking the purchase button and entering the license key provided by Chevereto.
1. To utilize Chevereto, you need to obtain a license key. You can do so by clicking the purchase button and entering the license key provided by Chevereto.

![Chevereto License](chevereto-license.png)

1. Next, you will be presented with a page where you can enter your cPanel credentials. Since this Marketplace App does not include a cPanel installation, you can simply select skip.
1. Next, you will be presented with a page where you can enter your cPanel credentials. Since this Marketplace App does not include a cPanel installation, you can select skip.

![Chevereto cPanel](chevereto-cpanel.png)

Expand All @@ -72,6 +72,6 @@ Chevereto requires a valid license to use the software. To purchase a license, v

![Chevereto Final Install](chevereto-final_install.png)

Now that you’ve accessed your dashboard, checkout [the official Chevereto documentation](https://v3-docs.chevereto.com/) to learn how to further configure your instance.
Now that you’ve accessed your dashboard, check out [the official Chevereto documentation](https://v3-docs.chevereto.com/) to learn how to further configure your instance.

{{% content "marketplace-update-note-shortguide" %}}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 9cb5ae5

Please sign in to comment.