Authordsezen

Agile42 Scrum Trainings

Facebooktwittergoogle_pluslinkedinmailby feather
SCRUM Pull versus Push

SCRUM Pull versus Push

I recently attended to the two trainings of Agile42 in Istanbul: CSPO and CSM.

CSPO was conducted by Bent Myllerup, CSM was conducted by Lasse Ziegler.

Despite i was previously attended to SCRUM trainings, meetups and read books, i found so many points which improved my agility vision and skills.

The practical experience and use-case examples of both trainers was impressive.

Hope, to progress towards CSP in the future.

DevOps Presentation @Turkcell

Facebooktwittergoogle_pluslinkedinmailby feather

 

I was invited by "Açık Kaynak Yazılım Paylaşım Gurubu" (Open Source Software Sharing Group), to perform a DevOps Presentation, which is a community inside Turkcell Technology

It was exciting to make a presentation to the company which i worked between 2003-2007.

The attendees were high-tech profile and there was a group which almost concluded the workshop targets only within two iterations.

Here are some images:

Turkcell_Devops_01Turkcell_Devops_03

 

Turkcell_Devops_02

turkcell_devops_04turkcell_devops_05

DevOps Workshop @kodcu.com

Facebooktwittergoogle_pluslinkedinmailby feather

 

I was invited last thursday to Koc Incubation Center by kodcu.com to perform a DevOps workshop.

The crowd was big enough to form 6 different teams, each about 6-10 people.

During the workshop, there was so many suggestions to the Development Pipeline including:

Cucumber

Sonar

Blazemeter

SauceLabs

kodcu_devops01

kodcu_devops02kodcu_devops03kodcu_devops04

DevOps Seminar @IstanbulCoders

Facebooktwittergoogle_pluslinkedinmailby feather

 

My DevOps workshop and real-world example from AWS Elasticbeanstalk during the IstanbulCoders weekly meetup.

We have run 4 iterations during which i provided new requirements as product owner, guiding the teams to develop a Deployment Pipeline.

By the end, most teams achieved to the goals:

– Automated provisioning

– Performance testing

– Automated Acceptance Tests

including the specific technologies they selected.

Just the requirement "Automated Security Testing" remained open…

The presentation link is here

 

IMG_0949 IMG_0944 IMG_0951 IMG_0954 IMAG0825 IMAG0824

 

Istanbul Lean Startup DevOps Presentation

Facebooktwittergoogle_pluslinkedinmailby feather

 

I was invited by Istanbul Lean Startup Meetup Group, together with the sponsorship of Agile42, to present the DevOps approach to their community. 

DevOps is the mindset i have encountered in my latest projects. I involved into automation of the deployment for the latest Java based project DigOut i worked on using AWS Elastic Beanstalk and Jenkins.

Here is the presentation link: Presentation

Here are some pictures:

Derya Sezen DevOps Presentation

Derya Sezen DevOps Presentation

 

Voxxed Days Istanbul 2015

Facebooktwittergoogle_pluslinkedinmailby feather

Thanks to kodcu.com for the great VoxxedIstanbul event, in which i was also an organizator.

It was also awesome to meet with top-level technology developers worldwide and share the experience.

Although i was not able to attend to all of the sessions, because of my responsibilities there, from the ones which i attended, i have some notes for myself:

– ElasticSearch has been becoming a choice for the new projects against Solr

– Using Logstash to feed the data to ElasticSearch.

– MicroServices approaches is being utilized more than i have expected, still some questions about how to implement and migrate to it. Thanks to Arun Gupta for the possible pattern proposals to overcome this.

– It was interesting to hear about the hash and clustering mechanism of Cassandra from Christopher Batey.

Some photos from the organization:

VoxxedIstanbul Team

VoxxedIstanbul TeamDisadvantages of Monolith Architecture IMAG0738 IMAG0742 IMAG0747 IMAG0749

 

 

Dilemma about when to feed the data during automated deploys: Code First vs. Model First

Facebooktwittergoogle_pluslinkedinmailby feather

In case you are supposed to feed the initial data to the DB for a code-first project during deploy-time (There are possible ways to do it in the code level of course), there is a problem: You do not know when the database schema is created even if you start the service.

In my case, i have Tomcat environment and i cannot feed the data just after i start the tomcat service. There can be two ways to workaround that:

1. Polling: Check periodically if the schema is created and after feed the data

2. Sleep: Observe the worst-case time and put a "sleep" before the data feed scripts

If there are other practical ways to do that during deploy-time and out of the codebase, please comment!

AWS Elastic Beanstalk how to access to the RDS environment variables under ebextensions and postdeploy hooks

Facebooktwittergoogle_pluslinkedinmailby feather

As a beginning, just to let you know, it is now my 54th deployment (which means around a week) using ebextensions in order to reverse engineering how it works in terms of environment variables!

The RDS environment variables are:

– RDS_USERNAME

– RDS_PASSWORD

– RDS_HOSTNAME

– RDS_DB_ NAME

The weird part is, accessing to those environment variables under the following 3 scenarios are different:

1. Directly under ebextensions : This is not possible !

2. Under the scripts triggered by ebextensions : This is possible, you can use them like $RDS_HOSTNAME …

3. Under the hooks  : This was not possible but here is the workaround that i found and worked for my case:

– Store them under a file using a script trigged by ebextensions:

echo RDS_HOSTNAME=$RDS_HOSTNAME >> /etc/environment
echo RDS_USERNAME=$RDS_USERNAME >> /etc/environment
echo RDS_PASSWORD=$RDS_PASSWORD >> /etc/environment

– Parse them from the hook:

RDS_HOSTNAME="$(awk -F= '/RDS_HOSTNAME/{print $2}' /etc/environment)"
RDS_USERNAME="$(awk -F= '/RDS_USERNAME/{print $2}' /etc/environment)"
RDS_PASSWORD="$(awk -F= '/RDS_PASSWORD/{print $2}' /etc/environment)"

What a nasty solution but works!

 

AWS Elastic Beanstalk ebextensions Security Group firewall rules

Facebooktwittergoogle_pluslinkedinmailby feather

In order to define the firewall rules of the Security Group that the instance will belong to, you need to define the “Resources” like as the following:

Resources:

  AWSEBSecurityGroup:

    Type: “AWS::EC2::SecurityGroup”

    Properties:

      GroupDescription: “Security group to allow HTTP, HTTPS,SSH”

      SecurityGroupIngress:

        – {CidrIp: “0.0.0.0/0”, IpProtocol: “tcp“, FromPort: “8080”, ToPort: “8080”}

        – {CidrIp: “0.0.0.0/0”, IpProtocol: “tcp“, FromPort: “8443”, ToPort: “8443”}

        – {CidrIp: “0.0.0.0/0”, IpProtocol: “tcp“, FromPort: “443”, ToPort: “443”}

        – {CidrIp: “0.0.0.0/0”, IpProtocol: “tcp“, FromPort: “80”, ToPort: “80”}

        – {CidrIp: “0.0.0.0/0”, IpProtocol: “tcp“, FromPort: “22”, ToPort: “22”}

Save the “resources.config” under “.ebextensions” folder and deploy!

      

AWS Elasticbeanstalk hooking after app deploy

Facebooktwittergoogle_pluslinkedinmailby feather

I need to run a specific command after the app is deployed but there is no relevant key under ebextensions for that purpose. The key “container_commands” is not giving this functionality, runs your command before the deploy, but there is a workaround:

1. Create your own script and place it under .ebextensions directory

2. Under container_commands, add the following lines (preferably in a separate config file):

container_commands:

         01-command:

         command: cp .ebextensions/001_pre_tomcat_start.sh /opt/elasticbeanstalk/hooks/appdeploy/post

      02-command:

         command: chmod 775 /opt/elasticbeanstalk/hooks/appdeploy/post/001_pre_tomcat_start.sh

That’s it!


visited 27 states (12%)
Create your own visited map of The World