Terraform: introduction to data types – primitives and complex
0 (0)

9 September 2023

In this post, we will take a brief look at the data types that we can use in Terraform to better understand the topic of the following post – Terraform: count, for_each, and for loops. Documentation – Type Constraints and Types and Values. We have the following types divided into groups: Primitive Types: string: sequence of Unicode characters,… Read More: Terraform: introduction to data types – primitives and complex0 (0) »

Loading

Terraform: dynamic remote state with AWS S3 and multiple environments by directory
0 (0)

3 September 2023

Following the series of posts about preparing to use Terraform on a project. So, in the first part, we thought about how to organize the preparation of the backend for the project, that is, to perform its bootstrap, and a bit – how to manage the Dev/Prod environments in general, see Terraform: Getting started and… Read More: Terraform: dynamic remote state with AWS S3 and multiple environments… »

Loading

Terraform: remote state with AWS S3, and state locking with DynamoDB
0 (0)

3 September 2023

We are preparing to transfer infrastructure management from AWS CDK to Terraform. I’ve already wrote about planning it in the Terraform: planning a new project with Dev/Prod environments post, but there I didn’t wrote about one very important option – creating a lock for state files. State file locking is used to avoid situations where… Read More: Terraform: remote state with AWS S3, and state locking with… »

Loading

VictoriaMetrics: VMAuth – Proxy, Authentication, and Authorization
0 (0)

27 August 2023

We continue to develop our monitoring stack. See the first part – VictoriaMetrics: creating a Kubernetes monitoring stack with its own Helm chart. What do we want to do next: give access to developers so that they can set Silence for alerts themselves in Alertmanager to avoid spamming Slack, see Prometheus: Alertmanager Web UI alerts Silence.… Read More: VictoriaMetrics: VMAuth – Proxy, Authentication, and Authorization0 (0) »

Loading

AWS: Getting started with Karpenter for autoscaling in EKS, and its installation with Helm
0 (0)

19 August 2023

On all my previous projects where Kubernetes was, for its WorkerNodes scaling I’ve used the Cluster Autoscaler (CAS) because actually there were no other options before. In general, CAS worked well, but in November 2020 AWS released its own solution for scaling nodes in EKS – the Karpenter, and if at first time reviews were… Read More: AWS: Getting started with Karpenter for autoscaling in EKS, and… »

Loading

Kubernetes: Pods and WorkerNodes – control the placement of the Pods on the Nodes
0 (0)

19 August 2023

Kubernetes allows very flexible control over how its Pods will be located on servers, i.e. WorkerNodes. This can be useful if you need to run a pod on a specific node configuration, for example – a WorkerNode must have a GPU, or an SSD instead of an HDD. Another example is when you need to… Read More: Kubernetes: Pods and WorkerNodes – control the placement of the… »

Loading

Grafana: values ​​from records in Loki logs, and dual-Y-axes panels in Grafana
0 (0)

19 August 2023

We have a function in AWS Lambda, that is writing logs to CloudWatch Logs, from where with the lambda-promtail we are getting them to a Grafana Loki instance to use them in Grafana graphs. What the task is: in the logs, we have records about “Init duration” and “Max Memory Used” by Lambdas. There are no… Read More: Grafana: values ​​from records in Loki logs, and dual-Y-axes panels… »

Loading

Helm: multiple deployment of the same chart with Chart’s dependency
0 (0)

19 August 2023

To improve the performance of Grafana Loki, it is necessary to install several almost identical instances of Memcached, see Grafana Loki: performance optimization with Recording Rules, caching, and parallel queries. The monitoring stack itself is deployed from one Helm chart, which dependencies – Promtail, Loki, etc – are added through the dependency field of the… Read More: Helm: multiple deployment of the same chart with Chart’s dependency0… »

Loading

Grafana Loki: performance optimization with Recording Rules, caching, and parallel queries
0 (0)

19 August 2023

So, we have Loki installed from the chart in simple-scale mode, see Grafana Loki: architecture and running in Kubernetes with AWS S3 storage and boltdb-shipper. Loki is runnings on an AWS Elastic Kubernetes Service cluster, installed with Loki Helm chart, AWS S3 is used as a long-term store, and BoltDB Shipper is used to work… Read More: Grafana Loki: performance optimization with Recording Rules, caching, and parallel… »

Loading

AWS: Grafana Loki, InterZone traffic in AWS, and Kubernetes nodeAffinity
0 (0)

19 August 2023

Traffic in AWS is generally quite an interesting and sometimes complicated thing, I once wrote about it in the AWS: Cost optimization – services expenses overview and traffic costs in AWS. Now, it’s time to return to this topic again. So, what’s the problem: in AWS Cost Explorer, I’ve noticed that we have an increase… Read More: AWS: Grafana Loki, InterZone traffic in AWS, and Kubernetes nodeAffinity0… »

Loading