Category Archives: Virtualization

In computing, virtualization refers to the act of creating a virtual version of something, including virtual computer hardware platforms, storage devices, and computer network resources.

Prometheus: running Pushgateway on Kubernetes with Helm and Terraform

28 April 2023
 

  We have a lot of AWS Lambda functions in the project, and developers want to be able to send metrics to our Prometheus to add their own alerts and graphs in Grafana. For this, the functions use the Prometheus library, which allows these metrics to be created (see Prometheus: Building a Custom Prometheus Exporter… Read More »

AWS: security – Instance Metadata Service v1 vs IMDS v2, Kubernetes Pod and Docker containers

24 April 2023
 

  Instance metadata (IMDS – Instance Metadata Service) – data about an EC2 instance, such as information about AMI, IP, hostname, etc. You can also add User Data to Instance Metadata to store some parameters, which can then be retrieved inside the instance. See Instance metadata and user data and Instance metadata categories. From the beginning of the… Read More »

Knative: Serverless for Kubernetes – an overview and launch in Minikube

9 April 2023
 

  Knative is a system that allows you to use the Serverless development model in Kubernetes. In essence, Knative can be imagined as another level of abstraction that allows developers not to dive into the details of deployment, scaling, and networking in “vanilla” Kubernetes. The development of Knative itself was started at Google with the participation… Read More »

GitLab: monitoring – Prometheus, metrics, and Grafana dashboard

12 March 2023
 

 So, let’s continue our journey with migrating GitLab to Kubernetes. See previous parts: GitLab: Components, Architecture, Infrastructure, and Launching from the Helm Chart in Minikube GitLab: Helm chart of values, dependencies, and deployment in Kubernetes with AWS S3 GitLab: міграція даних з GitLab cloud та процес backup-restore у self-hosted версії в Kubernetes In general, everything is working,… Read More »

Grafana Loki: alerts from the Loki Ruler and labels from logs

12 March 2023
 

  For general information on Grafana Loki, see the Grafana Loki: architecture and running in Kubernetes with AWS S3 storage and boltdb-shipper. Among other services that make up Loki, there is a separate service called ruler that is responsible for working with alerts that can be generated directly from logs. The idea is very simple:… Read More »

Prometheus: Building a Custom Prometheus Exporter in Python

25 February 2023
 

  Prometheus has many ready-to-use exporters, but sometimes you may need to collect your own metrics. For this, Prometheus provides client libraries that we can use to generate metrics with the necessary labels. Such an exporter can be included directly in the code of your application, or it can be run as a separate service that will poll… Read More »

GitLab: Helm chart of values, dependencies, and deployment in Kubernetes with AWS S3

4 February 2023
 

  We continue our engagement with GitLab and its deployment in Kubernetes. The first part – GitLab: Components, Architecture, Infrastructure, and Launching from the Helm Chart in Minikube, and now let’s get ready to deploy to AWS Elastic Kubernetes Service. What will we do and where: deploy to AWS from the Helm-chart, with some test env Kubernetes… Read More »

GitLab: Components, Architecture, Infrastructure, and Launching from the Helm Chart in Minikube

2 February 2023
 

  As GitLab recently changed the policy of providing free access, and now only 5 users will be available for the Free subscription, we decided to move to the self-hosted version. In general, they have interesting terms with the license: the price depends on the number of users, you can buy it for at least… Read More »

Kubernetes: Cluster Cost Monitoring – Kubernetes Resource Report and Kubecost

29 January 2023
 

  The very useful thing is to monitor how efficiently the cluster is being used, especially if applications are deployed by developers who do not delve into requests much and set inflated values ​​”in reserve”. A reserve, of course, is needed – but simply requesting resources is a bad idea. For example, you have a… Read More »