Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add initial ARM support #176

Merged
merged 1 commit into from
Jun 21, 2024
Merged

Add initial ARM support #176

merged 1 commit into from
Jun 21, 2024

Conversation

kvaps
Copy link
Member

@kvaps kvaps commented Jun 20, 2024

As part of #27

Thanks beby.cloud for providing infrastucture.

Cozystack has been succefully deployed on three Raspbery PIs in minimal configuration:

CNI and kube-proxy used from Talos Linux, cozystack configuration as follows:

apiVersion: v1
kind: ConfigMap
metadata:
  name: cozystack
  namespace: cozy-system
data:
  bundle-name: "distro-hosted"
  bundle-disable: "etcd-operator"
# kubectl get hr -A  
NAMESPACE                        NAME                        AGE   READY   STATUS
cozy-cert-manager                cert-manager                65m   True    Helm upgrade succeeded for release cozy-cert-manager/cert-manager.v2 with chart cozy-cert-manager@0.7.0
cozy-cert-manager                cert-manager-issuers        65m   True    Helm install succeeded for release cozy-cert-manager/cert-manager-issuers.v1 with chart cozy-cert-manager-issuers@0.7.0
cozy-clickhouse-operator         clickhouse-operator         65m   True    Helm install succeeded for release cozy-clickhouse-operator/clickhouse-operator.v1 with chart cozy-clickhouse-operator@0.7.0
cozy-grafana-operator            grafana-operator            65m   True    Helm upgrade succeeded for release cozy-grafana-operator/grafana-operator.v2 with chart cozy-grafana-operator@0.7.0
cozy-kafka-operator              kafka-operator              65m   True    Helm install succeeded for release cozy-kafka-operator/kafka-operator.v1 with chart cozy-kafka-operator@0.7.0
cozy-mariadb-operator            mariadb-operator            65m   True    Helm install succeeded for release cozy-mariadb-operator/mariadb-operator.v1 with chart cozy-mariadb-operator@0.7.0
cozy-monitoring                  monitoring                  65m   True    Helm upgrade succeeded for release cozy-monitoring/monitoring.v3 with chart cozy-monitoring@0.7.0
cozy-postgres-operator           postgres-operator           65m   True    Helm upgrade succeeded for release cozy-postgres-operator/postgres-operator.v2 with chart cozy-postgres-operator@0.7.0
cozy-rabbitmq-operator           rabbitmq-operator           65m   True    Helm install succeeded for release cozy-rabbitmq-operator/rabbitmq-operator.v1 with chart cozy-rabbitmq-operator@0.7.0
cozy-redis-operator              redis-operator              65m   True    Helm upgrade succeeded for release cozy-redis-operator/redis-operator.v2 with chart cozy-redis-operator@0.7.0
cozy-telepresence                telepresence                65m   True    Helm install succeeded for release cozy-telepresence/traffic-manager.v1 with chart cozy-telepresence@0.7.0
cozy-victoria-metrics-operator   victoria-metrics-operator   65m   True    Helm upgrade succeeded for release cozy-victoria-metrics-operator/victoria-metrics-operator.v2 with chart cozy-victoria-metrics-operator@0.7.0
tenant-root                      ingress                     14m   True    Helm install succeeded for release tenant-root/ingress.v1 with chart ingress@1.1.0
tenant-root                      ingress-nginx               14m   True    Helm install succeeded for release tenant-root/ingress-nginx.v1 with chart cozy-ingress-nginx@0.7.0
tenant-root                      monitoring                  14m   True    Helm upgrade succeeded for release tenant-root/monitoring.v8 with chart monitoring@1.0.0
tenant-root                      tenant-root                 65m   True    Helm upgrade succeeded for release tenant-root/tenant-root.v3 with chart tenant@1.1.0

storage, metallb and monitoring works out-of-box:

grafana

nginx-ingress has been patched to use official images (temporary)

diff --git a/packages/system/ingress-nginx/values.yaml b/packages/system/ingress-nginx/values.yaml
index 1390e72..0b63791 100644
--- a/packages/system/ingress-nginx/values.yaml
+++ b/packages/system/ingress-nginx/values.yaml
@@ -2,11 +2,6 @@ ingress-nginx:
   controller:
     extraArgs:
       enable-ssl-passthrough: true
-    image:
-      registry: ghcr.io
-      image: kvaps/ingress-nginx-with-protobuf-exporter/controller
-      tag: v1.8.1
-      digest: "sha256:7933a0729c716a8bf879218451ff43ee9c1a8f4850feffb12f81eb9439aefc23"
     allowSnippetAnnotations: true
     replicaCount: 2
     admissionWebhooks:
@@ -14,12 +9,6 @@ ingress-nginx:
         enabled: true
     metrics:
       enabled: true
-    extraContainers:
-    - name: protobuf-exporter
-      image: ghcr.io/kvaps/ingress-nginx-with-protobuf-exporter/protobuf-exporter:v1.8.1@sha256:9b6f3f2688592a0f25038bc15e107642d7374359cbd87442920df1c45f27fe4d
-      args:
-      - --server.telemetry-address=0.0.0.0:9090
-      - --server.exporter-address=0.0.0.0:9091
     service:
       #type: NodePort # ClusterIP
       externalTrafficPolicy: "Local"
@@ -44,4 +33,4 @@ ingress-nginx:

   defaultBackend:
     ##
-    enabled: true
+    enabled: false

Needs to enable multiarch building for all the reset images

We probably need to add the automation for making buildx context before the building has started

docker buildx create --use

@kvaps kvaps changed the title initial arm Add initial ARM support Jun 20, 2024
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
@roysbike
Copy link

Thank you! i wait mixtile cluster-box box with 4 nodes of Rockchip RK3588. I’ll try to run it

Copy link
Collaborator

@themoriarti themoriarti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The initial ARM support looks good, but I recommend adding a note somewhere in the documentation on the website that we have started supporting ARM.

@themoriarti themoriarti merged commit 33a9cb7 into main Jun 21, 2024
@themoriarti themoriarti deleted the initial-arm branch June 21, 2024 12:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants