Kubernetes: part 4 – AWS EKS authentification, aws-iam-authenticator and AWS IAM

3 September 2019
 

  Let’s proceed with our AWS Elastic Kubernetes Service, EKS. Previous parts: Kubernetes: part 1 – architecture and main components overview Kubernetes: part 2 – a cluster set up on AWS with AWS cloud-provider and AWS LoadBalancer Kubernetes: part 3 – AWS EKS overview and manual EKS cluster set up. In the previous – Kubernetes:… Read More »

SonarQube: solving “Unrecoverable indexation failures” and Elasticsearch “Disk watermark exceeded” errors

29 August 2019
 

 We are using SonarQube started from a Jenkins jobs. See more at SonarQube: running tests from Jenkins Pipeline in Docker. So, the SonarQube is started from the Jenkins – all good here, but inside SonarQube we can see errors: java.lang.IllegalStateException: Unrecoverable indexation failures: 1 errors among 1 requests at org.sonar.server.es.IndexingListener$1.onFinish(IndexingListener.java:39) at org.sonar.server.es.BulkIndexer.stop(BulkIndexer.java:122) … And host… Read More »

Redis: fork – Cannot allocate memory, Linux, virtual memory and vm.overcommit_memory

28 August 2019
 

 Currently, I’m configuring a Redis as a caching service for our application and during that, I faced with the question: do I need to set vm.overcommit_memory to the value 1, i.e. disable it – or not? The question is quite old for me, see The story, but only now I found time to get to… Read More »

Docker: Compose shared networks

20 August 2019
 

 We have a Docker Compose stack with Jenkins, SonarQube, and PostgresSQL, check the SonarQube: running tests from Jenkins Pipeline in Docker post. The problem is that they are described in the same Docker Compose file and are restarted by the same systemd file (check the Linux: systemd сервис для Docker Compose post, Rus) Thus, if… Read More »

Kubernetes: part 3 – AWS EKS overview and manual EKS cluster set up

15 August 2019
 

 Let’s proceed with our Kubernetes journey. Previous parts: Kubernetes: part 1 – architecture and main components overview Kubernetes: part 2 – a cluster set up on AWS with AWS cloud-provider and AWS LoadBalancer In this part we will start working with AWS Elastic Kuberneters Service (EKS) – its short overview, then will create Kubernetes Control… Read More »

Kubernetes: part 2 – a cluster set up on AWS with AWS cloud-provider and AWS LoadBalancer

10 August 2019
 

 In the first part – Kubernetes: part 1 – architecture and main components overview – we did a quick glance about Kubernetes. Also, check the third part – Kubernetes: part 3 – AWS EKS overview and manual EKS cluster set up. The next thing I’d like to play with is to manually create a cluster… Read More »

NGINX: limit_req – limiting requests per IP

9 August 2019
 

 The next task is to set a limit per one IP to our backend’s API: add requests limiter on the /user/oauth/refresh_token URI set limit to 5 requests/minute from one IP if the limit is reached – return 429 Too Many Requests response Will use NGINX ngx_http_limit_req_module. limit_req_zone To make limiting works firs need to create… Read More »

AWS RDS: “SQLSTATE[22001] – Data too long for column” using MariaDB 10.2

8 August 2019
 

 We have a PHP-application with the AWS RDS MariaDB as a backend. On the previously used 10.0 version all was good, but right after we upgraded to the MariaDB 10.2 – got errors during tests: PDOException: SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column ‘name’ at row 1 in /data/projects/projectname/vendor/yiisoft/yii2/db/Command.php:1290 The first… Read More »

Kubernetes: part 1 – architecture and main components overview

25 July 2019
 

  On my current project for our mobile applications, we have an API-backend on the Yii PHP-framework, which is working now on an ordinary LEMP stack – Linux/NGINX/PHP-FPM/MySQL (AWS EC2 + MariaDB RDS). Eventually, it’s time to break this monolith into microservices which will be orchestrated by the Kubernetes and will be running on the… Read More »