<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Deep Dives on Empowering European Innovation</title><link>https://beta.safespring.eu/deep-dive/</link><description>Recent content in Deep Dives on Empowering European Innovation</description><generator>Hugo</generator><language>en-GB</language><copyright>2025 Safespring</copyright><lastBuildDate>Fri, 10 Jul 2026 16:26:39 +0200</lastBuildDate><atom:link href="https://beta.safespring.eu/deep-dive/index.xml" rel="self" type="application/rss+xml"/><item><title>Understanding Safespring Kubernetes Engine if you usually run Kubernetes yourself</title><link>https://beta.safespring.eu/deep-dive/understanding-safespring-kubernetes-engine-if-you-usually-run-kubernetes-yourself/</link><pubDate>Mon, 30 Mar 2026 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/understanding-safespring-kubernetes-engine-if-you-usually-run-kubernetes-yourself/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
If you already know how to run Kubernetes yourself, the useful question is not whether a managed service can create a cluster. The useful question is how the service is shaped, where the boundary sits, and which parts of the platform it already solves well.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;We have written quite a bit lately about building Kubernetes platforms with Talos, OpenStack, Cluster API, Cinder CSI, and modern traffic management. That is one side of the picture.&lt;/p&gt;</description></item><item><title>Automating Windows Server Hardening on Safespring Compute: From Launch to Locked Down</title><link>https://beta.safespring.eu/deep-dive/automating-windows-server-hardening-on-safespring-compute-from-launch-to-locked-down/</link><pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/automating-windows-server-hardening-on-safespring-compute-from-launch-to-locked-down/</guid><description>&lt;p&gt;When you spin up a Windows Server instance in a cloud environment like Safespring Compute, you get a blank slate, no password, no SSH, no remote access at all.&lt;/p&gt;
&lt;p&gt;This post walks through the full automation chain: using cloudbase-init to bootstrap the instance at first boot, then running an Ansible playbook to apply a security baseline.&lt;/p&gt;
&lt;p&gt;The result is a fully hardened Windows Server you can provision in one shot, hands-off, from the OpenStack CLI.&lt;/p&gt;</description></item><item><title>Run a local LLM on Safespring GPU infrastructure</title><link>https://beta.safespring.eu/deep-dive/2025-12-run-llm-in-safespring-container-platform/</link><pubDate>Tue, 16 Dec 2025 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/2025-12-run-llm-in-safespring-container-platform/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Running an LLM locally does not have to be complicated. This post shows how to turn a GPU-enabled Ubuntu 24.04 instance in Safespring into a practical AI workstation using NVIDIA drivers, Ollama, and Open-WebUI.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;We’ll start from a fresh instance, install the recommended NVIDIA server driver, verify GPU acceleration with &lt;code&gt;nvidia-smi&lt;/code&gt;, pull a few models, and finish by deploying Open-WebUI in Docker so you can chat in your browser. Everything stays on your own instance, and we’ll use SSH forwarding for safe access.&lt;/p&gt;</description></item><item><title>Deploy Talos Kubernetes on OpenStack with Cluster API</title><link>https://beta.safespring.eu/deep-dive/deploy-talos-kubernetes-on-openstack-with-cluster-api/</link><pubDate>Thu, 12 Jun 2025 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/deploy-talos-kubernetes-on-openstack-with-cluster-api/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
A step-by-step guide to declaratively provision, configure, and manage Talos Linux Kubernetes clusters on Safespring’s OpenStack infrastructure using CAPO and ClusterResourceSets.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;In this article we want to take a few steps further our investigation into Talos Linux and how we can make use of it in &lt;a href="https://beta.safespring.eu/services/compute/"&gt;Safespring Compute Infrastructure (OpenStack)&lt;/a&gt;, and at the same time have a more in depth exploration of the automate installation and make use of &lt;a href="https://cluster-api.sigs.k8s.io/"&gt;Kubernetes Cluster API&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Validate and upgrade Talos Linux Kubernetes on OpenStack</title><link>https://beta.safespring.eu/deep-dive/validate-and-upgrade-talos-linux-kubernetes-on-openstack/</link><pubDate>Wed, 09 Apr 2025 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/validate-and-upgrade-talos-linux-kubernetes-on-openstack/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Use this guide to validate a Talos Linux Kubernetes cluster on OpenStack, confirm Cilium and Cinder CSI behavior, and run repeatable upgrade operations for both Talos OS and Kubernetes.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;In a &lt;a href="https://beta.safespring.eu/deep-dive/bootstrap-talos-linux-kubernetes-on-openstack/"&gt;previous article&lt;/a&gt; we started to explore Talos Linux and what that could mean for us, and how we can automate the installation on Safespring OpenStack, but we wanted to go a few steps further in our investigation and look into confirming two more aspects:&lt;/p&gt;</description></item><item><title>Bootstrap Talos Linux Kubernetes on OpenStack</title><link>https://beta.safespring.eu/deep-dive/bootstrap-talos-linux-kubernetes-on-openstack/</link><pubDate>Mon, 03 Mar 2025 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/bootstrap-talos-linux-kubernetes-on-openstack/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
This guide walks through the first steps of bootstrapping Talos Linux Kubernetes on OpenStack, with a focus on automation, security and repeatable platform operations.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;When it comes to container orchestration, Kubernetes is the de facto standard. And there are many different flavors of Kubernetes distributions and ways of provisioning them. So we started to explore what Talos Linux could mean for us.&lt;/p&gt;
&lt;p&gt;Things we wanted to have answered while doing that:&lt;/p&gt;</description></item><item><title>Is it possible to replace VMware? There might be...</title><link>https://beta.safespring.eu/deep-dive/is-it-possible-to-replace-vmware-there-might-be.../</link><pubDate>Thu, 20 Feb 2025 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/is-it-possible-to-replace-vmware-there-might-be.../</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
With Broadcom's acquisition of VMware, many companies and organizations that have built their infrastructure on VMware have faced an unpleasant surprise: a new subscription-based model and overall higher prices.
&lt;/p&gt;&lt;/div&gt;
&lt;div class="accordion-box"&gt;
 &lt;button type="button" class="accordion" id="accordion-1-button" aria-expanded="false" aria-controls="accordion-1-panel"&gt;TL;DR&lt;/button&gt;
 &lt;div class="panel content-body" id="accordion-1-panel" role="region" aria-labelledby="accordion-1-button" aria-hidden="true" inert&gt;
 &lt;h3&gt;TL;DR&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Broadcom’s acquisition of VMware has sparked concerns over subscription-based pricing and higher costs.&lt;/li&gt;
&lt;li&gt;While VMware excels at on-premises virtualization, Safespring offers a cloud-native alternative based on OpenStack (virtualization), Ceph (storage), and containers.&lt;/li&gt;
&lt;li&gt;It’s not a direct drop-in replacement; instead, Safespring enables modernization of IT infrastructure with tools for network security, resilient services (via Elastic IPs and Server Groups), and flexible VPN options like WireGuard.&lt;/li&gt;
&lt;li&gt;Built on open-source technologies, Safespring’s solutions avoid lock-in, empower administrators with hands-on control, and ensure predictable, transparent pricing over time.&lt;/li&gt;
&lt;/ol&gt;
&lt;br&gt;
&lt;a href='#conclusion' target='_self' class='button'&gt;Let&amp;#39;s talk&lt;/a&gt;
&lt;br&gt;
 &lt;div class="pb-2"&gt;&lt;/div&gt;
 &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="the-vmware-offering"&gt;The VMware Offering&lt;/h2&gt;
&lt;p&gt;For more than 20 years, VMware has been the most successful player in the market for virtualization solutions. VMware has offered flexibility (through virtualization) and other features and products to ease the workload of system administrators. Through good design choices, many customers have been able to migrate old physical systems directly into VMware. With robust monitoring, backend storage, and software-defined networking (SDN) solutions, VMware has enabled systems to be set up in a resilient and redundant way, requiring minimal changes to the actual software configuration of the systems. Additionally, VMware includes built-in network security features.&lt;/p&gt;</description></item><item><title>Future-Ready Automated Services in the Higher Education Sector</title><link>https://beta.safespring.eu/deep-dive/future-ready-automated-services-in-the-higher-education-sector/</link><pubDate>Thu, 21 Nov 2024 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/future-ready-automated-services-in-the-higher-education-sector/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
The higher education sector is standing at the crossroads of technology. Innovation must go on to meet new demands, but cost optimization and an ever-growing need for flexibility and security can be hard to deal with.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;During a recent webinar with SIKT, “Virtualization and IT Infrastructure in the Higher Education Sector,” I had the opportunity to delve into how automation, open standards, and digital sovereignty can reshape IT operations for universities and colleges.&lt;/p&gt;</description></item><item><title>Escaping the VMware trap?</title><link>https://beta.safespring.eu/deep-dive/escaping-the-vmware-trap/</link><pubDate>Fri, 30 Aug 2024 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/escaping-the-vmware-trap/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Broadcom's acquisition of VMware has had significant impacts on customers,
causing concern and prompting some to consider alternatives. This post will
address these challenges and describe one solution to the challenges.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;These changes, after Broadcom&amp;rsquo;s acquisition of VMware, have led to higher long-term
costs for many customers, especially smaller businesses that may see dramatic
increases in their annual renewal fees.&lt;/p&gt;
&lt;div class="note-dotted" style="--note-accent: #32CD32;"&gt;
 &lt;p class="note-dotted-title note-dotted-title--custom"&gt;
 &lt;span class="note-dotted-icon" aria-hidden="true"&gt;&lt;svg class="fa-icon fa-solid fa-exclamation" aria-hidden="true" focusable="false" data-fa-symbol="fa-solid-exclamation"&gt;
 &lt;use href="#fa-solid-exclamation" xlink:href="#fa-solid-exclamation"&gt;&lt;/use&gt;
&lt;/svg&gt;
&lt;/span&gt;
 &lt;span&gt;Key effects of Broadcom&amp;#39;s acquisition of VMware&lt;/span&gt;
 &lt;/p&gt;</description></item><item><title>Self-Service Access to Open Source Infrastructure using NATS &amp; Huma</title><link>https://beta.safespring.eu/deep-dive/self-service-access-to-open-source-infrastructure-using-nats-huma/</link><pubDate>Fri, 24 May 2024 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/self-service-access-to-open-source-infrastructure-using-nats-huma/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
I recently had the opportunity to present at OpenInfra Day Sweden 2024, and I'm excited to share the insights and developments from our team at Safespring.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Over the past three months, we&amp;rsquo;ve been working on a new tool designed to enhance self-service access to open source infrastructure for our B2B and European research community customers. This tool leverages the power of NATS and Huma technologies.&lt;/p&gt;
&lt;p&gt;&lt;span class="inline-rubrik"&gt;Safespring’s Mission&lt;/span&gt;
 Safespring aims to become the platform of choice for European cloud computing. We are dedicated to providing secure, compliant cloud services across multiple data centers in the Nordics, including Oslo, Stockholm, and Luleå. Our offerings adhere to GDPR and European security standards, ensuring top-notch security for our users.&lt;/p&gt;</description></item><item><title>Kubernetes Project Onboarding Guide</title><link>https://beta.safespring.eu/deep-dive/kubernetes-project-onboarding-guide/</link><pubDate>Mon, 08 Apr 2024 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/kubernetes-project-onboarding-guide/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Welcome to Project Onboarding - a transformative approach to simplifying namespace management in Kubernetes for multi-tenant environments.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;This tool is crafted for IT architects, DevOps engineers, and technical teams eager to integrate company-specific workflows into Kubernetes, fostering a seamless, efficient namespace management system. Project Onboarding stands at the intersection of innovation and simplicity, offering a robust solution to the complexities often encountered in Kubernetes namespace management.&lt;/p&gt;
&lt;div class="note-dotted" style="--note-accent: #32CD32;"&gt;
 &lt;p class="note-dotted-title note-dotted-title--custom"&gt;
 &lt;span class="note-dotted-icon" aria-hidden="true"&gt;&lt;svg class="fa-icon fa-solid fa-exclamation" aria-hidden="true" focusable="false" data-fa-symbol="fa-solid-exclamation"&gt;
 &lt;use href="#fa-solid-exclamation" xlink:href="#fa-solid-exclamation"&gt;&lt;/use&gt;
&lt;/svg&gt;
&lt;/span&gt;
 &lt;span&gt;GitHub repository&lt;/span&gt;
 &lt;/p&gt;</description></item><item><title>Install the OpenStack Cinder CSI driver for Kubernetes</title><link>https://beta.safespring.eu/deep-dive/install-the-openstack-cinder-csi-driver-for-kubernetes/</link><pubDate>Wed, 13 Mar 2024 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/install-the-openstack-cinder-csi-driver-for-kubernetes/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Have you configured your OKD or OpenShift cluster with the platform option set to "none" and, as a result, are missing the OpenStack Cinder CSI Driver Operator?
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;This guide is designed to help you effortlessly integrate the Cinder CSI Volume Provisioner into your OKD or OpenShift cluster. It&amp;rsquo;s designed to streamline the process, making the integration seamless and hassle-free.&lt;/p&gt;
&lt;p&gt;Moreover, this guide is not exclusive to OpenShift or OKD environments; it can be easily adapted for use in vanilla Kubernetes setups with a simple modification. A key highlight for OKD and OpenShift users is the inclusion of Security Context Constraints (SCC) cluster role bindings in the Helm chart&amp;rsquo;s templates directory. This critical feature enables the Cinder CSI pods to run with privileged access, aligning them with OpenShift&amp;rsquo;s security practices and ensuring their optimal functionality within your cluster&amp;rsquo;s security framework.&lt;/p&gt;</description></item><item><title>Automating cloud resources with Python and Pulumi: Separating config from code</title><link>https://beta.safespring.eu/deep-dive/automating-cloud-resources-with-python-and-pulumi-separating-config-from-code/</link><pubDate>Tue, 19 Sep 2023 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/automating-cloud-resources-with-python-and-pulumi-separating-config-from-code/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
In infrastructure code (and other code, too) it is a good practice
to separate the program logic from its input data (configuration). That way,
in order to change the state of our infrastructure, we only need to change the
input data and not the program unless the logic of the program changes.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;In the &lt;a href="https://beta.safespring.eu/deep-dive/automating-cloud-resources-with-python-and-pulumi-basic-provisioning/"&gt;previous blog post&lt;/a&gt;, we went through a basic setup of Pulumi with
the Python template for using it to manage OpenStack resources in Safespring.
This is a good starting point to understand the basics of how one can use Python
together with Pulumi to declaratively manage infrastructure resources without
having to write all resource graph management from the ground and up, which, of
course, also would be possible with Python or any modern programming language
for that matter.&lt;/p&gt;</description></item><item><title>Automating cloud resources with Python and Pulumi: Basic provisioning</title><link>https://beta.safespring.eu/deep-dive/automating-cloud-resources-with-python-and-pulumi-basic-provisioning/</link><pubDate>Mon, 11 Sep 2023 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/automating-cloud-resources-with-python-and-pulumi-basic-provisioning/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Efficient consumption of cloud services is all about automating the up and
down-scaling of resources according to the ever-changing needs. The list of
tools, their properties and their fitness for the purpose can be daunting.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;On top of that comes the changing landscape in licensing and subscription,
sometimes with astonishing effects on your existing cloud strategy, recently
exemplified by Hashicorp&amp;rsquo;s unexpected license change to the Business Source
License (BSL). In this landscape, we must always be prepared to adapt and
change, thus, it is good to have acquaintance with both old established tools
and some alternatives. This post is the first in a series on how to utilize
Pulumi to automate service consumption towards the Safespring cloud APIs.&lt;/p&gt;</description></item><item><title>Creating a multi-cloud web service from scratch</title><link>https://beta.safespring.eu/deep-dive/creating-a-multi-cloud-web-service-from-scratch/</link><pubDate>Wed, 07 Jun 2023 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/creating-a-multi-cloud-web-service-from-scratch/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Explore the power of infrastructure as code (IAC) with this guide on
creating a scalable web application using multiple OpenStack sites.
Learn how to utilize Terraform for infrastructure provisioning, Ansible
for system configuration, and how these tools, in combination with DNS
round-robin, can offer a dynamic and scalable solution for your web services.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;In previous posts, we have shown the power of combining Terraform for
infrastructure provisioning and Ansible for configuring operating systems on
the instances in the infrastructure. In this blog post, we take it one step
further. We will show a minimal example of how to scale up web service backends
across multiple sites and use an API programmable DNS servcie (Gandi) to
maintain A records for those backends, effectively scaling the service by means
of DNS round-robin (RR).&lt;/p&gt;</description></item><item><title>Automating backup node enrollment with Cloutility API-client</title><link>https://beta.safespring.eu/deep-dive/automating-backup-node-enrollment-with-cloutility-api-client/</link><pubDate>Wed, 26 Apr 2023 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/automating-backup-node-enrollment-with-cloutility-api-client/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
In this tutorial, we will explore Safespring's cloutility-backup-client library written in Go. We will write a small, easily deployable, tool to automate the enrollment procedure of backup nodes and take a deeper look at a few of the methods available in the cloutility-api-client library.
&lt;/p&gt;&lt;/div&gt;
&lt;div class="note-dotted" style="--note-accent: #32CD32;"&gt;
 &lt;p class="note-dotted-title note-dotted-title--custom"&gt;
 &lt;span class="note-dotted-icon" aria-hidden="true"&gt;&lt;svg class="fa-icon fa-solid fa-exclamation" aria-hidden="true" focusable="false" data-fa-symbol="fa-solid-exclamation"&gt;
 &lt;use href="#fa-solid-exclamation" xlink:href="#fa-solid-exclamation"&gt;&lt;/use&gt;
&lt;/svg&gt;
&lt;/span&gt;
 &lt;span&gt;Recommended reading&lt;/span&gt;
 &lt;/p&gt;
 &lt;div class="note-dotted-content"&gt;&lt;p&gt;Dive deeper into the world of open-source backup client management by checking out our recent article on &lt;a href="https://beta.safespring.eu/deep-dive/creating-an-open-source-backup-client-library/"&gt;Creating an Open-Source Backup Client Library.&lt;/a&gt; Happy reading!&lt;/p&gt;</description></item><item><title>Creating an open-source backup client library</title><link>https://beta.safespring.eu/deep-dive/creating-an-open-source-backup-client-library/</link><pubDate>Sun, 23 Apr 2023 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/creating-an-open-source-backup-client-library/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
At Safespring, we are passionate about open source technologies. Our platform relies on multiple open source products, and we are committed to giving back to the community whenever possible.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Sometimes, however, we find ourselves in need of a solution that does not yet exist. As was the case when we wanted to create a tool to simplify the enrollment process for backup clients to our backup solution.&lt;/p&gt;
&lt;p&gt;Safesprings backup solution is based on IBM Spectrum Protect fronted by Auwau&amp;rsquo;s Cloutility software. This combination provides a powerful enterprise-grade backup solution and Cloutility provides both customer portal and a rich API. However, we were unable to find an existing client library that could be used to consume the Cloutility API.&lt;/p&gt;</description></item><item><title>Important update regarding the EOL of the legacy platform in STO1</title><link>https://beta.safespring.eu/deep-dive/important-update-regarding-the-eol-of-the-legacy-platform-in-sto1/</link><pubDate>Tue, 18 Apr 2023 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/important-update-regarding-the-eol-of-the-legacy-platform-in-sto1/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
As the legacy platform in STO1 is reaching its end of life, we hope that you're getting along with the migration to the new platform.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;According to our project tracking, most of you have already migrated to the new platform or are in the progress of doing so.&lt;/p&gt;
&lt;p&gt;For those who haven&amp;rsquo;t started yet, we would like to encourage you to do so as soon as possible and get in touch with us if you need any assistance. All steps necessary to migrate your instances can be found in our &lt;a href="https://docs.safespring.com/new/migrate-from-legacy/"&gt;migration guide&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Important Update Regarding Retirement of Legacy Platform in STO1</title><link>https://beta.safespring.eu/deep-dive/important-update-regarding-retirement-of-legacy-platform-in-sto1/</link><pubDate>Thu, 26 Jan 2023 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/important-update-regarding-retirement-of-legacy-platform-in-sto1/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Dear valued customers, We would like to inform you that our legacy platform in sto1 will be shut down on May 1st.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;You will not be able to create new instances on this platform after March 1st 2023 and there will only be best effort support available starting April 1st 2023. These are hard dates that we will be adhering to, so it is important that you take necessary steps to migrate to our new platform.&lt;/p&gt;</description></item><item><title>Useful (perhaps) Openstack API tricks for enabling more automation</title><link>https://beta.safespring.eu/deep-dive/useful-perhaps-openstack-api-tricks-for-enabling-more-automation/</link><pubDate>Tue, 20 Sep 2022 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/useful-perhaps-openstack-api-tricks-for-enabling-more-automation/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Safespring promote as much automation as possible using standard tools
like Terraform and Ansible. Sometimes, however, it is necessary to dig one step
deeper in order to find some missing pieces of information in order to create a complete automation.
&lt;/p&gt;&lt;/div&gt;
&lt;h2 id="introduction-problem-statement"&gt;Introduction (Problem statement)&lt;/h2&gt;
&lt;p&gt;In the Safespring platform, the S3 compatible storage service and the OpenStack
based compute service are now integrated. It means that once you have access to the
compute platform you also can fetch credentials for accessing the integrated S3
service through the web GUI and/or the command line interface (CLI).&lt;/p&gt;</description></item><item><title>Using a jump host for persistent access to Safespring's APIs</title><link>https://beta.safespring.eu/deep-dive/using-a-jump-host-for-persistent-access-to-safesprings-apis/</link><pubDate>Tue, 06 Sep 2022 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/using-a-jump-host-for-persistent-access-to-safesprings-apis/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Using a jump host is good practice for increased security and a simple solution when you don’t have a fixed IP-adress but need access to Safespring’s APIs.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Automation tools like Terraform require access to several of OpenStack&amp;rsquo;s APIs
which we&amp;rsquo;re currently exposing only to whitelisted IPs for security reasons.
This is a practice we share with several other small and independent cloud
providers like ourselves. With many engineers working remote and not having a
fixed IP, submitting a support ticket each time your public IP changes might
feel tedious and unnecessary in 2022. However, using a jump host is not only a
simple solution to this problem but also good practice for most automation
scenarios where security is critical.&lt;/p&gt;</description></item><item><title>Setting up a minimal Kubernetes cluster on Safespring using Kubespray</title><link>https://beta.safespring.eu/deep-dive/setting-up-a-minimal-kubernetes-cluster-on-safespring-using-kubespray/</link><pubDate>Mon, 22 Aug 2022 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/setting-up-a-minimal-kubernetes-cluster-on-safespring-using-kubespray/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
Kubespray is a
comprehensive tool that covers a lot of different use cases. In this post we
will focus on the necessary config to install a minimal K8S cluster for test
and experiment on Safespring.
&lt;/p&gt;&lt;/div&gt;
&lt;h2 id="prerequisites"&gt;Prerequisites&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;This blog post assumes that you use the open source Terraform CLI. Terraform CLI
is just a binary program that you download from the &lt;a href="https://releases.hashicorp.com/terraform/"&gt;releases page&lt;/a&gt;,
for your architecture/platform. Here you also find checksums for the files to
verify their integrity. There is also the official &lt;a href="https://www.terraform.io/docs"&gt;Terraform documentation&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;A basic understanding of Ansible playbooks and inventories is also necessary.&lt;/li&gt;
&lt;li&gt;Some basic usage of the &lt;a href="https://docs.safespring.com/new/api/"&gt;OpenStack CLI&lt;/a&gt; will also be required.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="kubespray-introduction"&gt;Kubespray introduction&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://github.com/kubernetes-sigs/kubespray"&gt;Kubespray&lt;/a&gt; is a composition of Ansible playbooks,
inventory, provisioning tools, and domain knowledge for generic OS/Kubernetes
clusters configuration management tasks. It is widely used, has a lot of
flexibility using parameters and is actively maintained.&lt;/p&gt;</description></item><item><title>From zero to continuous compliance with Terraform, Ansible and Rudder</title><link>https://beta.safespring.eu/deep-dive/from-zero-to-continuous-compliance-with-terraform-ansible-and-rudder/</link><pubDate>Wed, 29 Jun 2022 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/from-zero-to-continuous-compliance-with-terraform-ansible-and-rudder/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
This blog post will look at how we can build even further on
previously demonstrated concepts to create sets of servers that are
continuously monitored and kept in compliance using Rudder, a state of the art
configuration management tool.
&lt;/p&gt;&lt;/div&gt;
&lt;div class="disclaimer-dotted"&gt;
 &lt;p class="disclaimer-dotted-title"&gt;update&lt;/p&gt;
&lt;p&gt;Updated to fix an inconsistency on 2022-08-22&lt;/p&gt;
&lt;/div&gt;
&lt;div class="note-dotted" style="--note-accent: #32CD32;"&gt;
 &lt;p class="note-dotted-title note-dotted-title--custom"&gt;
 &lt;span class="note-dotted-icon" aria-hidden="true"&gt;&lt;svg class="fa-icon fa-solid fa-exclamation" aria-hidden="true" focusable="false" data-fa-symbol="fa-solid-exclamation"&gt;
 &lt;use href="#fa-solid-exclamation" xlink:href="#fa-solid-exclamation"&gt;&lt;/use&gt;
&lt;/svg&gt;
&lt;/span&gt;
 &lt;span&gt;Read more&lt;/span&gt;
 &lt;/p&gt;
 &lt;div class="note-dotted-content"&gt;&lt;p&gt;If you found this post useful, be sure to check out the rest of the series on using Terraform and Ansible for resource provisioning and compliance. In particular, you might also enjoy:&lt;/p&gt;</description></item><item><title>Integrating Terraform and Ansible</title><link>https://beta.safespring.eu/deep-dive/integrating-terraform-and-ansible/</link><pubDate>Mon, 23 May 2022 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/integrating-terraform-and-ansible/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
This is part three in the series about Safespring's Terraform modules. This blog
post will look at how we can integrate Ansible and Terraform in order to configure
services on top of the instances provisioned with Terraform, using Terraform state as
Ansible inventory.
&lt;/p&gt;&lt;/div&gt;
&lt;div class="note-dotted" style="--note-accent: #32CD32;"&gt;
 &lt;p class="note-dotted-title note-dotted-title--custom"&gt;
 &lt;span class="note-dotted-icon" aria-hidden="true"&gt;&lt;svg class="fa-icon fa-solid fa-exclamation" aria-hidden="true" focusable="false" data-fa-symbol="fa-solid-exclamation"&gt;
 &lt;use href="#fa-solid-exclamation" xlink:href="#fa-solid-exclamation"&gt;&lt;/use&gt;
&lt;/svg&gt;
&lt;/span&gt;
 &lt;span&gt;Read more&lt;/span&gt;
 &lt;/p&gt;
 &lt;div class="note-dotted-content"&gt;&lt;p&gt;If you found this post useful, be sure to check out the rest of the series on using Terraform and Ansible for resource provisioning and compliance. In particular, you might also enjoy:&lt;/p&gt;</description></item><item><title>Flexible provisioning of resources with Safespring's new Terraform modules</title><link>https://beta.safespring.eu/deep-dive/flexible-provisioning-of-resources-with-safesprings-new-terraform-modules/</link><pubDate>Mon, 11 Apr 2022 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/flexible-provisioning-of-resources-with-safesprings-new-terraform-modules/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
This is part two in the series about Safespring's Terraform modules. This blog
post will look at the new and more general Safespring modules for compute
instances and security groups.&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;We will also look at how we can use it to provision sets of instances
in different configurations allowing only the necessary connections using
security groups. The next post will be about using Ansible and
from terraform/OpenStack to configure services on the provisioned
instances.&lt;/p&gt;</description></item><item><title>The Safespring network model explained</title><link>https://beta.safespring.eu/deep-dive/the-safespring-network-model-explained/</link><pubDate>Thu, 24 Mar 2022 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/the-safespring-network-model-explained/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
This blog post will explain the different aspects of the Safespring network
stack from a user perspective.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;If you come from other platforms that use the legacy
«layer 2 bridging» approach (with software-defined switches, routers,
floating IP addresses, etc.), please read the full post to understand the
implications. It does not work the way you think :-). Prerequisites for
understanding this post are basic knowledge of CIDR notation, IP protocols
(TCP,UDP,ICMP), and IP-based access control.&lt;/p&gt;</description></item><item><title>SSH key best practices for OpenStack cloud instances</title><link>https://beta.safespring.eu/deep-dive/ssh-key-best-practices-for-openstack-cloud-instances/</link><pubDate>Thu, 17 Mar 2022 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/ssh-key-best-practices-for-openstack-cloud-instances/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
For Linux-/Unix-based cloud instances, the initial root access to the instances is enabled employing SSH keys. In this post, we'll go through some best practices and things to keep in mind when managing ssh-keys to enable root access to instances.
&lt;/p&gt;&lt;/div&gt;
&lt;h2 id="summary-tldr"&gt;Summary (TL;DR)&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The poorly named &amp;ldquo;OpenStack keypair&amp;rdquo; contains no secrets, only an SSH pubkey.&lt;/li&gt;
&lt;li&gt;SSH keypairs are not the same as an OpenStack keypair.&lt;/li&gt;
&lt;li&gt;SSH keypairs should be created in a trusted environment on the user&amp;rsquo;s computer. It should be of type RSA. The private key should be kept in an encrypted secret store and never be exposed outside the user&amp;rsquo;s local site/environment.&lt;/li&gt;
&lt;li&gt;An &amp;ldquo;OpenStack keypair&amp;rdquo; is tied to the user creating it, not a specific project.&lt;/li&gt;
&lt;li&gt;Nobody cares about SSH host keys, but they should.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="background"&gt;Background&lt;/h2&gt;
&lt;p&gt;When you provision instances in any cloud platform, you get a virtual server with a base operating system like Centos, Ubuntu, Debian, FreeBSD, etc., based on which cloud image the instance is provisioned from. You can use images available in the Infrastructure as a Service (IaaS) platform or upload your own, as long as the image is prepared for being used with the IaaS-platform you use. In Safespring&amp;rsquo;s case, the image must be made for the OpenStack IaaS.&lt;/p&gt;</description></item><item><title>CPU performance improvement on Windows</title><link>https://beta.safespring.eu/deep-dive/cpu-performance-improvement-on-windows/</link><pubDate>Thu, 17 Feb 2022 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/cpu-performance-improvement-on-windows/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
In this blog post, we'll go through some virtual machine optimizations. We optimized CPU performance improvement on Windows due to poor application performance for one of our customers.
&lt;/p&gt;&lt;/div&gt;
&lt;h2 id="background"&gt;Background&lt;/h2&gt;
&lt;p&gt;We were recently contacted by a client using Windows 2019 server operating system. They experienced higher CPU load and slower response times when using our platform than other IaaS-solutions.&lt;/p&gt;
&lt;p&gt;Our general internal experience with Windows is that it had stable performance across compute/hypervisor hosts and that it got better performance when we installed newer hardware (as expected). We had never tested against other cloud providers. Thus, we were unaware of the problem.&lt;/p&gt;</description></item><item><title>Dead easy provisioning using the Safespring Terraform modules</title><link>https://beta.safespring.eu/deep-dive/dead-easy-provisioning-using-the-safespring-terraform-modules/</link><pubDate>Mon, 10 Jan 2022 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/dead-easy-provisioning-using-the-safespring-terraform-modules/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
In this blog post, we'll showcase just how easy it is by the example of our community Terraform modules.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;It has never been easier to provision compute and block storage resources in Safespring&amp;rsquo;s infrastructure platform. Modules can be sourced directly from GitHub using a minimum of Terraform code.&lt;/p&gt;
&lt;div class="note-dotted" style="--note-accent: #32CD32;"&gt;
 &lt;p class="note-dotted-title note-dotted-title--custom"&gt;
 &lt;span class="note-dotted-icon" aria-hidden="true"&gt;&lt;svg class="fa-icon fa-solid fa-exclamation" aria-hidden="true" focusable="false" data-fa-symbol="fa-solid-exclamation"&gt;
 &lt;use href="#fa-solid-exclamation" xlink:href="#fa-solid-exclamation"&gt;&lt;/use&gt;
&lt;/svg&gt;
&lt;/span&gt;
 &lt;span&gt;Read more&lt;/span&gt;
 &lt;/p&gt;
 &lt;div class="note-dotted-content"&gt;&lt;p&gt;If you found this post useful, be sure to check out the rest of the series on using Terraform and Ansible for resource provisioning and compliance. In particular, you might also enjoy:&lt;/p&gt;</description></item><item><title>Security advisory regarding the Log4j critical vulnerability</title><link>https://beta.safespring.eu/deep-dive/security-advisory-regarding-the-log4j-critical-vulnerability/</link><pubDate>Mon, 13 Dec 2021 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/security-advisory-regarding-the-log4j-critical-vulnerability/</guid><description>&lt;div class="ingress"&gt;&lt;p&gt;
A vulnerability in &lt;span class="text-tooltip"&gt;Log4j
 &lt;span class="text-tooltiptext shadow-1"&gt;Log4j is a small internal module that handles logging for Java programs.&lt;/span&gt;
&lt;/span&gt;
 was announced on the 10th of December 2021. Reports worldwide show that the vulnerability is used actively and successfully in attacks.
&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Log4j is a Java-based logging utility widely used in popular software systems.&lt;/p&gt;
&lt;h3 id="key-takeaways"&gt;Key Takeaways&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;This has no consequences for Safesprings systems.&lt;/li&gt;
&lt;li&gt;Safespring customers should stop their services that might be affected.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style="margin-bottom:50px;"&gt;&lt;/div&gt;
&lt;h2 id="what-weve-done-so-far"&gt;What we&amp;rsquo;ve done so far&lt;/h2&gt;
&lt;div class="ingress"&gt;&lt;p&gt;
Fortunately, this has no consequences for our systems, and no services are down.
&lt;/p&gt;</description></item><item><title>Changing the host and domain name for the Support &amp; Backup Service</title><link>https://beta.safespring.eu/deep-dive/changing-the-host-and-domain-name-for-the-support-backup-service/</link><pubDate>Tue, 07 Jan 2020 10:16:45 +0100</pubDate><guid>https://beta.safespring.eu/deep-dive/changing-the-host-and-domain-name-for-the-support-backup-service/</guid><description>&lt;p&gt;&lt;a class="text-button" href="#english"&gt;Read the English version&lt;/a&gt;&lt;/p&gt;
&lt;div class="note-dotted" style="--note-accent: #32CD32;"&gt;
 &lt;p class="note-dotted-title note-dotted-title--custom"&gt;
 &lt;span class="note-dotted-icon" aria-hidden="true"&gt;&lt;svg class="fa-icon fa-solid fa-exclamation" aria-hidden="true" focusable="false" data-fa-symbol="fa-solid-exclamation"&gt;
 &lt;use href="#fa-solid-exclamation" xlink:href="#fa-solid-exclamation"&gt;&lt;/use&gt;
&lt;/svg&gt;
&lt;/span&gt;
 &lt;span&gt;14 January&lt;/span&gt;
 &lt;/p&gt;
 &lt;div class="note-dotted-content"&gt;&lt;p&gt;The domain name change took place on 2020-01-14. This means the host name and DNS should be updated immediately. Once you make the changes (new DNS name and add the extra root CA certificate), the service will work 100% as before and you can perform backups and restores exactly as expected. Read more under &amp;ldquo;Technical details&amp;rdquo;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="ingress"&gt;&lt;p&gt;We constantly work to improve and clarify our services. Part of this effort is phasing out our former parent company’s brand, IPnett, from our services.&lt;/p&gt;</description></item><item><title>We’ve created a guide to help you choose a backup service.</title><link>https://beta.safespring.eu/deep-dive/weve-created-a-guide-to-help-you-choose-a-backup-service./</link><pubDate>Mon, 22 Jan 2018 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/weve-created-a-guide-to-help-you-choose-a-backup-service./</guid><description>&lt;p&gt;Our backup services are available in three different versions, and the guide helps you decide when each is the best fit from a cost perspective.&lt;/p&gt;
&lt;p&gt;Additionally, as of this fall, Safespring is a partner with Microsoft, enabling us to offer images with the Windows Server operating system on the Compute platform.&lt;/p&gt;
&lt;h2 id="safespring-backup"&gt;Safespring Backup&lt;/h2&gt;
&lt;p&gt;We offer three versions of Backup:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Large&lt;/li&gt;
&lt;li&gt;Small&lt;/li&gt;
&lt;li&gt;On-Demand&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Together with Sikt, we have created a guide that provides guidance on which service fits best depending on your needs.&lt;/p&gt;</description></item><item><title>Upgrade of Safespring's Compute platform</title><link>https://beta.safespring.eu/deep-dive/upgrade-of-safesprings-compute-platform/</link><pubDate>Mon, 28 Aug 2017 00:00:00 +0000</pubDate><guid>https://beta.safespring.eu/deep-dive/upgrade-of-safesprings-compute-platform/</guid><description>&lt;p&gt;In line with Safespring’s goal to keep pace with OpenStack’s official releases (with a three-month delay to ensure stability), the work to upgrade to the latest release, Ocata, is now well underway.&lt;/p&gt;
&lt;p&gt;The upgrade is expected to improve integration with the Ceph storage platform, which will make a number of disk-dependent operations faster.&lt;/p&gt;
&lt;p&gt;Details about the upgrade can be found at &lt;a href="https://status.safespring.com"&gt;https://status.safespring.com&lt;/a&gt;.&lt;/p&gt;</description></item></channel></rss>