# 1. Jenkins Plugin kya hota hai?

## 1\. Jenkins Plugin kya hota hai?

Plugin ek **extra feature / extension** hota hai jo Jenkins ke andar add hota hai.

Jenkins by default bahut basic hota hai.  
Agar plugins na ho to Jenkins sirf shell command chala payega.

**Example**

* Git se code lana hai → Git plugin
    
* Maven/Gradle build → Maven plugin
    
* Docker image banana → Docker plugin
    
* Slack pe notification → Slack plugin
    

Matlab:  
👉 **Har real-world kaam plugin ke through hota hai**

---

## 2\. Plugins kyun use karte hain?

Short aur clear points:

* Jenkins ko **customizable** banane ke liye
    
* Har tool ke liye alag-alag support lane ke liye
    
* CI/CD pipeline ko **automation-friendly** banane ke liye
    
* Manual kaam kam karne ke liye
    
* Industry tools ke sath integrate karne ke liye
    

Agar plugins na ho:  
❌ Git, Docker, AWS, Kubernetes sab bekaar

---

## 3\. Plugins kaha use hote hain? (Real CI/CD Flow)

Ek normal pipeline dekho:

1. **Code fetch**
    
    * Git Plugin
        
2. **Build**
    
    * Maven / Gradle / NodeJS Plugin
        
3. **Test**
    
    * JUnit / TestNG Plugin
        
4. **Dockerize**
    
    * Docker Pipeline Plugin
        
5. **Deploy**
    
    * Kubernetes / AWS / SSH Plugin
        
6. **Notify**
    
    * Slack / Email Plugin
        

👉 Har stage ke peeche koi na koi plugin hota hai

---

## 4\. Popular Jenkins Plugins (Must know)

| Plugin | Use |
| --- | --- |
| Git Plugin | GitHub/GitLab se code |
| Pipeline Plugin | Jenkinsfile use karne ke liye |
| Docker Plugin | Docker build & push |
| NodeJS Plugin | Node environment setup |
| Maven Plugin | Java builds |
| Credentials Plugin | Secrets manage |
| Blue Ocean | Better UI |
| SSH Agent | Remote server deploy |

Interview me ye naam bolna strong point hota hai.

---

## 5\. Plugin Versioning kya hota hai?

Har plugin ka **apna version number** hota hai  
Jaise:

* Git Plugin: 5.2.1
    
* Docker Plugin: 1.6.0
    

Ye version batata hai:

* Bug fix hai ya nahi
    
* New feature add hua hai ya nahi
    
* Jenkins ke kaunse version ke sath compatible hai
    

---

## 6\. Versioning kyun important hai?

Ye part bahut important hai, dhyan se:

### 1\. Compatibility issue

Agar:

* Jenkins latest hai
    
* Plugin purana hai
    

To:  
❌ Build fail  
❌ Jenkins crash  
❌ Pipeline break

---

### 2\. Stability

Latest plugin hamesha best nahi hota.

Production me:

* **Stable version** use karte hain
    
* Har update pe blind trust nahi
    

---

### 3\. Security

Old plugin = security vulnerability  
Hack hone ka risk

---

## 7\. Plugin update kaise karte hain?

Jenkins UI me:

```plaintext
Dashboard → Manage Jenkins → Plugins
```

Yaha se:

* Installed plugins dekho
    
* Update available dekho
    
* Select karke update karo
    
* Jenkins restart (mostly required)
    

---

## 8\. Best Practices (Real-world)

Ye points interviewer ko pasand aate hain:

* Sab plugins blindly update mat karo
    
* Production se pehle staging Jenkins pe test karo
    
* Plugin compatibility check karo
    
* Unused plugins remove karo
    
* Jenkins core + plugin versions aligned rakho
    
* LTS (Long Term Support) Jenkins use karo
    

---

## 9\. Interview-ready one line summary

Agar short me bolna ho:

> Jenkins plugins Jenkins ko external tools ke sath integrate karte hain, aur plugin versioning system stability, security aur compatibility ensure karta hai.

# Disk Issue :——

Jenkins me **Disk Issue** ka matlab simple hai:  
👉 **Jenkins server ki disk space khatam ho rahi hai ya almost full ho chuki hai**  
Is wajah se builds fail hone lagte hain.

Chalo ekdum clearly tod ke samjhte hain.

---

## 1\. Disk Issue hota kya hai?

Jenkins har build ke time par:

* source code clone karta hai
    
* build artifacts banata hai
    
* logs store karta hai
    
* workspace maintain karta hai
    

Ye sab cheezein **disk space** leti hain.  
Jab disk bhar jaati hai to Jenkins kaam band kar deta hai.

Typical error:

```plaintext
No space left on deviceDisk space is too low on Jenkins node
```

---

## 2\. Disk Issue kyun aata hai? (Main reasons)

### 1\. Old builds delete nahi ho rahe

* Har build ka log + artifact save hota rehta hai
    
* 100–200 builds ke baad disk full
    

### 2\. Workspace bahut heavy ho jana

* Node\_modules
    
* target/
    
* build/
    
* .gradle / .m2 cache
    

### 3\. Docker images & containers

* Old Docker images remove nahi
    
* Containers running + stopped dono space lete hain
    

### 4\. Jenkins logs

* Jenkins system logs grow hote rehte hain
    
* Rotation nahi hui to disk bhar jaati hai
    

### 5\. Multiple jobs, single server

* Ek hi Jenkins machine pe bahut saare jobs
    

---

## 3\. Disk issue ka impact kya hota hai?

* Builds fail ho jate hain
    
* Jenkins slow ho jata hai
    
* New job run nahi hoti
    
* Worst case: Jenkins crash
    

Production me ye **serious issue** hota hai.

---

## 4\. Disk Issue kaise check karein?

Jenkins server pe login karke:

```plaintext
df -h
```

Workspace check:

```plaintext
du -sh /var/lib/jenkins/*
```

Docker space:

```plaintext
docker system df
```

---

## 5\. Disk Issue ka solution (Practical)

### 1\. Old builds delete karo

Job → Configure →  
✔ Discard Old Builds

* Max builds: 10–20
    
* Max days: 7–30
    

---

### 2\. Workspace clean karo

Plugin:

* Workspace Cleanup Plugin
    

Ya pipeline me:

```plaintext
post {  always {    cleanWs()  }}
```

---

### 3\. Docker cleanup

```plaintext
docker system prune -af
```

(Production me carefully)

---

### 4\. Jenkins log rotation

* `/var/log/jenkins`
    
* Logrotate enable karo
    

---

### 5\. Separate build agents

* Master pe build mat chalao
    
* Agents pe disk distribute karo
    

---

## 6\. Best Practices (Interview points)

* Disk monitoring alert lagao
    
* Artifact retention policy set karo
    
* Docker cleanup schedule karo
    
* Jenkins home alag partition pe rakho
    
* Regular maintenance window rakho
    

---

## 7\. One-line interview answer

> Jenkins disk issue tab hota hai jab build artifacts, logs, workspaces ya Docker data ki wajah se server ki disk space exhaust ho jati hai, jis se builds fail aur Jenkins unstable ho jata hai.
