Answers: <p>In my opinion an Operations candidate (DevOps is a culture, not a role) should be capable to perform at least the following actions:</p>
  <ul>
  <li>deploy postgres</li>
  <li>backup postgres</li>
  <li>restore postgres</li>
  <li>run some psql commands like select and some innerjoins</li>
  <li>knows what the effect on memory usage would be if a <code>select *</code> is issued</li>
  <li>No manual labour, only automation. Deploy the postgres using a pipeline like gitlab</li>
  <li>infrastructure as code</li>
  <li>monitor it, disk usage, memory, cpu</li>
  <li>the difference between a relational and non-relational database</li>
  <li>see also <a href="https://devops.stackexchange.com/q/11506/210">this Q&amp;A</a></li>
  <li>there are tools like <a href="https://github.com/flyway/flyway" rel="nofollow noreferrer">Flyway</a> that are capable of applying version control to databases. This could facilitate to run it in a CI/CD.</li>
  </ul>
  
Answers: CC BY-SA 4.0
Answers: 2021-08-31T05:29:21.907Z
Answers: if one considers devops a culture, then smooth change management is a key part of it. I wonder if you could update the answer with some reference to schema migration as part of a CI/CD pipeline?
Answers: Bruce Becker
Answers: CC BY-SA 4.0
Answers: 2021-08-31T06:53:19.220Z
Answers: @BruceBecker an example has been added
Answers: 030
Answers: CC BY-SA 4.0
Answers: 2021-08-29T11:38:53.120Z
Answers: 2021-08-31T06:53:03.063Z
Answers: 2021-08-31T06:53:03.063Z
Answers: 030
Answers: <p>To add to 030's answer, and as a devops engineer who has had to do this a few times, learning how to set up replication and failover in an automated fashion is very important.</p>
  <p>If you're learning, start by setting up replication by hand on some test servers</p>
  <p><a href="https://www.postgresql.org/docs/13/runtime-config-replication.html" rel="nofollow noreferrer">https://www.postgresql.org/docs/13/runtime-config-replication.html</a></p>
  <p>Then craft a method for automating the configuration.  There are multiple ways to set up replication (they can run in parallel) and restoring a replicated database is pretty simple, but testing it out once and understanding how the file system is set up, what kinds of permissions users need to share data and what kinds of ACLs you need open between nodes to facilitate data transfer is very important.</p>
  <p>You'd also want to craft a plan for what to do for promoting a new read/write master in case your primary node goes down.</p>
  
Answers: CC BY-SA 4.0
Answers: 2021-08-30T18:30:50.363Z
Answers: 2021-08-30T18:30:50.363Z
Answers: Peter Turner
Body: <p>What are the basic skills and requirements a DevOps candidate should have when working with PostgreSQL?
  How to monitor it, deploy, etc.?</p>
  
Comments: CC BY-SA 4.0
Comments: 2021-09-01T23:04:48.943Z
Comments: Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.
Comments: Community
Tags: <postgresql><sql>
Title: Postgresql in DevOps skills
UserDisplayName: Дмитрий
ThreadText: # Postgresql in DevOps skills
  
  (Asked by: username_0 on 2021-08-28)
  
  What are the basic skills and requirements a DevOps candidate should have when working with PostgreSQL?
  How to monitor it, deploy, etc.?
  
  **Tags:** postgresql, sql
  
  > **Comments:**
  > **username_1**: Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_2 on 2021-08-29. Score: 6
  
  In my opinion an Operations candidate (DevOps is a culture, not a role) should be capable to perform at least the following actions:
  
  * deploy postgres
  * backup postgres
  * restore postgres
  * run some psql commands like select and some innerjoins
  * knows what the effect on memory usage would be if a `select *` is issued
  * No manual labour, only automation. Deploy the postgres using a pipeline like gitlab
  * infrastructure as code
  * monitor it, disk usage, memory, cpu
  * the difference between a relational and non-relational database
  * see also [this Q&A](https://devops.stackexchange.com/q/11506/210)
  * there are tools like [Flyway](https://github.com/flyway/flyway) that are capable of applying version control to databases. This could facilitate to run it in a CI/CD.
  
  > **Comments:**
  > **username_3**: if one considers devops a culture, then smooth change management is a key part of it. I wonder if you could update the answer with some reference to schema migration as part of a CI/CD pipeline?  
  > **username_2**: @username_3 an example has been added  
  
  ---
  
  ### Answer by username_4 on 2021-08-30. Score: 2
  
  To add to 030's answer, and as a devops engineer who has had to do this a few times, learning how to set up replication and failover in an automated fashion is very important.
  
  If you're learning, start by setting up replication by hand on some test servers
  
  <https://www.postgresql.org/docs/13/runtime-config-replication.html>
  
  Then craft a method for automating the configuration. There are multiple ways to set up replication (they can run in parallel) and restoring a replicated database is pretty simple, but testing it out once and understanding how the file system is set up, what kinds of permissions users need to share data and what kinds of ACLs you need open between nodes to facilitate data transfer is very important.
  
  You'd also want to craft a plan for what to do for promoting a new read/write master in case your primary node goes down.
  
  
  ---
  
  