Blog Entries

31. 12. 2024 Alessandro Taufer Development, DevOps

Tips for Writing Efficient Python Code

Writing high-performance code is key when tackling complex problems. While it might be tempting to focus on optimizing the programming language itself, the best strategy is often to implement the right algorithm. Let’s take a look at three lesser-known Python libraries that can boost your code’s efficiency without diving into complicated implementations. 1. Deque: The…

Read More
31. 12. 2024 Damiano Chini Automation, Development, DevOps

Maintaining Forks of Upstream Projects without git

When adopting an open-source software project that you don’t own, you may find it necessary to modify it partially to meet your specific requirements. However, as you implement those changes, it’s important to recognize that the upstream project will eventually update itself, leading to potential conflicts in the files that both you and the upstream…

Read More
31. 12. 2024 Alessandro Valentini DevOps

GitOps: Pull-based vs Push-based Approaches

When approaching a GitOps workflow you’ll soon have to choose between push- and pull-based approaches. In this blog post I’ll explain the high-level differences of each approach with pros and cons. What is GitOps? GitOps stands for Git Operation: in this workflow all the infrastructure configurations are stored in a Git repository, which represents the…

Read More
30. 12. 2024 Alessandro Taufer DevOps, Log-SIEM

Configure Kubernetes Index Lifecycle Policies in Elastic Stack

If you’re monitoring an OpenShift or a Kubernetes cluster with Elastic Stack, you might’ve noticed that the Kubernetes integration uses the default Index Lifecycle Policy. It means that those logs and metrics have an unlimited retention. If the volume of logs is high – and for Kubernetes clusters it usually is – it won’t be…

Read More
30. 12. 2024 Alessandro Taufer DevOps, Log-SIEM

Optimizing Log Collection in Kubernetes/OpenShift with Elastic Stack

When monitoring Kubernetes clusters using Elastic Stack, the volume of logs can be overwhelming, often reaching gigabytes per minute. This is particularly true for OpenShift clusters, where significant traffic originates from system namespaces you might not be familiar with. Optimizing log collection becomes crucial for maintaining system efficiency and resource utilization. Success in this endeavor…

Read More
20. 12. 2024 Alessandro Taufer DevOps, Log-SIEM

How to Monitor Your OpenShift Cluster with the Elastic Stack

Logs should be centralized, easily accessible, and independent from the monitored objects. Therefore, it’s advisable not to rely solely on the built-in monitoring system of OpenShift; instead, consider using an additional external monitoring solution. In this article, we’ll explore how to monitor an OpenShift cluster using Elastic Stack. Installing the Integration Since OpenShift is entirely…

Read More
19. 12. 2024 Luigi Miazzo Automation, Development, DevOps

Embracing Idempotency: Writing Your Own Ansible Collection – From Code to Tests

Ansible is a powerful automation tool that simplifies the configuration, deployment, and management of systems. At its heart lies the concept of idempotency — the guarantee that applying the same operation any number of times will yield the same result. Writing your own Ansible collection can unlock a new level of customization and control for…

Read More
18. 12. 2024 Csaba Remenar DevOps, ITOA

Introduction to Container Resource Management and What We Can Learn for Monitoring

Recently, I’ve been deeply involved in OpenShift monitoring tasks, including configuring Grafana dashboards and creating Prometheus alerts. During this time, I’ve focused on effectively monitoring container resources such as CPU and memory. Container orchestration platforms like Kubernetes and OpenShift require efficient resource utilization and precise resource management in order to optimize performance and ensure application…

Read More
18. 12. 2024 Mattia Codato Automation, Development, DevOps

GitOps: Push vs Pull? Choosing the Right Approach for Production Deployments

Starting a new project is often an opportunity to reevaluate established practices. In our case, deploying a containerized application to production with OpenShift led us to revisit our GitOps strategy. Using ArgoCD as our GitOps tool raised a fundamental question: What is the best way to move changes into production—push or pull? Understanding Push and…

Read More
16. 12. 2024 Alessandro Valentini Development, DevOps

NetEye and RHUI Repositories

Recently we had to provision a couple of NetEye machines on Azure for production purposes. Our procedure essentially creates a RedHat 8.10 VM starting with an official RedHat image, and adds the NetEye repositories to install the required software. This procedure is what we usually follow to create training environments, but these machines are usually…

Read More
29. 10. 2024 Alessandro Taufer Development, DevOps

Is Signing git Commits Really Useful?

Securing your codebase is a fundamental step in guaranteeing the integrity of your software: if the access to your git commits is compromised, so is your whole supply chain. That’s the reason why  almost every git hosting service has implemented a strong authentication system to protect their users from unauthorized access. The question naturally arises…

Read More
18. 10. 2024 Franco Federico DevOps

My Laptop Is Broken …. What Can I Do?

In this blog post I’m abandoning advice and tips on our software suite for once and moving on to show you an important best practice that we recommend to all our customers for their servers. But what do you do for laptops, which are our primary work tool? I didn’t think much about it…. While…

Read More
19. 09. 2024 Davide Gallo Development, DevOps

Ansible Development, Part 1.5: Building an Execution Environment in a Pipeline (CI/CD)

Hello everyone, I’m back to discuss Ansible and Ansible Execution Environments. In my previous blog, we talked about why and how execution environments are critical for a successful Ansible implementation. I hope my guide was easy to follow, but as you may have noticed, the process requires a significant amount of manual effort to keep…

Read More
12. 09. 2024 Mattia Codato Development, DevOps

Publish NPM Package to GitHub Packages Registry with GitHub Actions

With the rise of continuous integration and delivery (CI/CD) in modern software development, automating tasks like publishing npm packages has become crucial for efficiency. GitHub packages Registry (npm.pkg.github.com) allows developers to host and manage npm packages directly within GitHub, offering a seamless experience for both private and public repositories. By leveraging GitHub Actions, developers can…

Read More
11. 09. 2024 Davide Gallo Contribution, Development, DevOps

Ansible Development, Part 1: Building an Execution Environment

Right now, at Würth Phoenix, we are investing in automating most of our operations using Ansible. You’re probably already familiar with what Ansible does, but to summarize, Ansible is an open-source, command-line IT automation application written in Python. I’ve talked about it here: One challenge we faced while developing our automation scripts was that we…

Read More

Archive