diff --git a/README.md b/README.md
index 64ef33813a..eced87da73 100644
--- a/README.md
+++ b/README.md
@@ -1,117 +1,56 @@
-# Домашнее задание к занятию "`Название занятия`" - `Фамилия и имя студента`
+# Домашнее задание к занятию "Хранение в K8s" - `Молоствов Андрей`
-### Инструкция по выполнению домашнего задания
-
- 1. Сделайте `fork` данного репозитория к себе в Github и переименуйте его по названию или номеру занятия, например, https://github.com/имя-вашего-репозитория/git-hw или https://github.com/имя-вашего-репозитория/7-1-ansible-hw).
- 2. Выполните клонирование данного репозитория к себе на ПК с помощью команды `git clone`.
- 3. Выполните домашнее задание и заполните у себя локально этот файл README.md:
- - впишите вверху название занятия и вашу фамилию и имя
- - в каждом задании добавьте решение в требуемом виде (текст/код/скриншоты/ссылка)
- - для корректного добавления скриншотов воспользуйтесь [инструкцией "Как вставить скриншот в шаблон с решением](https://github.com/netology-code/sys-pattern-homework/blob/main/screen-instruction.md)
- - при оформлении используйте возможности языка разметки md (коротко об этом можно посмотреть в [инструкции по MarkDown](https://github.com/netology-code/sys-pattern-homework/blob/main/md-instruction.md))
- 4. После завершения работы над домашним заданием сделайте коммит (`git commit -m "comment"`) и отправьте его на Github (`git push origin`);
- 5. Для проверки домашнего задания преподавателем в личном кабинете прикрепите и отправьте ссылку на решение в виде md-файла в вашем Github.
- 6. Любые вопросы по выполнению заданий спрашивайте в чате учебной группы и/или в разделе “Вопросы по заданию” в личном кабинете.
-
-Желаем успехов в выполнении домашнего задания!
-
-### Дополнительные материалы, которые могут быть полезны для выполнения задания
-
-1. [Руководство по оформлению Markdown файлов](https://gist.github.com/Jekins/2bf2d0638163f1294637#Code)
-
----
-
### Задание 1
-`Приведите ответ в свободной форме........`
-
-1. `Заполните здесь этапы выполнения, если требуется ....`
-2. `Заполните здесь этапы выполнения, если требуется ....`
-3. `Заполните здесь этапы выполнения, если требуется ....`
-4. `Заполните здесь этапы выполнения, если требуется ....`
-5. `Заполните здесь этапы выполнения, если требуется ....`
-6.
-
```
-Поле для вставки кода...
-....
-....
-....
-....
+mkdir -p k8s-storage-tasks
+cd k8s-storage-tasks
+nano containers-data-exchange.yaml
+kubectl apply -f containers-data-exchange.yaml
+kubectl describe pod -l app=data-exchange
+kubectl logs -l app=data-exchange -c multitool --tail=5
+kubectl get pv
+kubectl describe pv local-pv
```
+
-`При необходимости прикрепитe сюда скриншоты
-`
-
-
----
+
### Задание 2
-`Приведите ответ в свободной форме........`
-
-1. `Заполните здесь этапы выполнения, если требуется ....`
-2. `Заполните здесь этапы выполнения, если требуется ....`
-3. `Заполните здесь этапы выполнения, если требуется ....`
-4. `Заполните здесь этапы выполнения, если требуется ....`
-5. `Заполните здесь этапы выполнения, если требуется ....`
-6.
-
-```
-Поле для вставки кода...
-....
-....
-....
-....
-```
-
-`При необходимости прикрепитe сюда скриншоты
-`
-
-
----
+local-pv - созданный вручную, статус Available
+pvc-dcd0e528... - автоматически созданный, статус Bound к PVC
-### Задание 3
+PVC привязался не к local-pv, а к автоматически созданному PV потому что:
-`Приведите ответ в свободной форме........`
+1)У автоматического PV storageClassName: standard (дефолтный)
-1. `Заполните здесь этапы выполнения, если требуется ....`
-2. `Заполните здесь этапы выполнения, если требуется ....`
-3. `Заполните здесь этапы выполнения, если требуется ....`
-4. `Заполните здесь этапы выполнения, если требуется ....`
-5. `Заполните здесь этапы выполнения, если требуется ....`
-6.
+2)У PV не указан storageClassName
+3)PVC ищет подходящий PV, нашел стандартный и привязался к нему
```
-Поле для вставки кода...
-....
-....
-....
-....
+nano simple-pv-pvc.yaml
+kubectl apply -f simple-pv-pvc.yaml --validate=false
+kubectl get pv,pvc,pods -l app=data-exchange-pvc
+kubectl logs -l app=data-exchange-pvc -c multitool --tail=3
+kubectl delete deployment data-exchange-pvc
+kubectl get pv
+kubectl describe pv local-pv
```
+
-`При необходимости прикрепитe сюда скриншоты
-`
-
-### Задание 4
-
-`Приведите ответ в свободной форме........`
+
-1. `Заполните здесь этапы выполнения, если требуется ....`
-2. `Заполните здесь этапы выполнения, если требуется ....`
-3. `Заполните здесь этапы выполнения, если требуется ....`
-4. `Заполните здесь этапы выполнения, если требуется ....`
-5. `Заполните здесь этапы выполнения, если требуется ....`
-6.
+
+### Задание 3
```
-Поле для вставки кода...
-....
-....
-....
-....
+nano sc.yaml
+minikube ssh "sudo mkdir -p /mnt/sc-data && sudo chmod 777 /mnt/sc-data"
+kubectl apply -f sc.yaml
+sleep 15
+kubectl get sc,pv,pvc,pods -l app=data-exchange-sc
+kubectl logs -l app=data-exchange-sc -c multitool --tail=3
```
-
-`При необходимости прикрепитe сюда скриншоты
-`
+
diff --git a/containers-data-exchange.yaml b/containers-data-exchange.yaml
new file mode 100644
index 0000000000..bbabbc7d6d
--- /dev/null
+++ b/containers-data-exchange.yaml
@@ -0,0 +1,32 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: data-exchange
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: data-exchange
+ template:
+ metadata:
+ labels:
+ app: data-exchange
+ spec:
+ containers:
+ - name: busybox
+ image: busybox
+ command: ["/bin/sh", "-c"]
+ args: ["while true; do echo $(date) >> /shared/data.log; sleep 5; done"]
+ volumeMounts:
+ - name: shared-volume
+ mountPath: /shared
+ - name: multitool
+ image: wbitt/network-multitool
+ command: ["/bin/sh", "-c"]
+ args: ["tail -f /shared/data.log"]
+ volumeMounts:
+ - name: shared-volume
+ mountPath: /shared
+ volumes:
+ - name: shared-volume
+ emptyDir: {}
diff --git a/img/1.jpg b/img/1.jpg
new file mode 100644
index 0000000000..98079eb6dd
Binary files /dev/null and b/img/1.jpg differ
diff --git a/img/2.jpg b/img/2.jpg
new file mode 100644
index 0000000000..617cf5e28f
Binary files /dev/null and b/img/2.jpg differ
diff --git a/img/3.jpg b/img/3.jpg
new file mode 100644
index 0000000000..01676978f7
Binary files /dev/null and b/img/3.jpg differ
diff --git a/img/4.jpg b/img/4.jpg
new file mode 100644
index 0000000000..7b9fa8a61d
Binary files /dev/null and b/img/4.jpg differ
diff --git a/sc.yaml b/sc.yaml
new file mode 100644
index 0000000000..8fd12ad7cf
--- /dev/null
+++ b/sc.yaml
@@ -0,0 +1,69 @@
+---
+apiVersion: storage.k8s.io/v1
+kind: StorageClass
+metadata:
+ name: local-sc
+provisioner: kubernetes.io/no-provisioner
+volumeBindingMode: WaitForFirstConsumer
+---
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+ name: local-sc-pv
+spec:
+ capacity:
+ storage: 1Gi
+ volumeMode: Filesystem
+ accessModes:
+ - ReadWriteOnce
+ persistentVolumeReclaimPolicy: Delete
+ storageClassName: local-sc
+ hostPath:
+ path: /mnt/sc-data
+---
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+ name: local-sc-pvc
+spec:
+ volumeMode: Filesystem
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 512Mi
+ storageClassName: local-sc
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: data-exchange-sc
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: data-exchange-sc
+ template:
+ metadata:
+ labels:
+ app: data-exchange-sc
+ spec:
+ containers:
+ - name: busybox
+ image: busybox
+ command: ["/bin/sh", "-c"]
+ args: ["while true; do echo $(date) >> /storage/data.log; sleep 5; done"]
+ volumeMounts:
+ - name: sc-volume
+ mountPath: /storage
+ - name: multitool
+ image: wbitt/network-multitool
+ command: ["/bin/sh", "-c"]
+ args: ["tail -f /storage/data.log"]
+ volumeMounts:
+ - name: sc-volume
+ mountPath: /storage
+ volumes:
+ - name: sc-volume
+ persistentVolumeClaim:
+ claimName: local-sc-pvc
diff --git a/simple-pv-pvc.yaml b/simple-pv-pvc.yaml
new file mode 100644
index 0000000000..659bf9f2f1
--- /dev/null
+++ b/simple-pv-pvc.yaml
@@ -0,0 +1,59 @@
+---
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+ name: local-pv
+spec:
+ capacity:
+ storage: 1Gi
+ accessModes:
+ - ReadWriteOnce
+ persistentVolumeReclaimPolicy: Retain
+ hostPath:
+ path: /mnt/k8s-data
+ type: DirectoryOrCreate
+---
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+ name: local-pvc
+spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 512Mi
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: data-exchange-pvc
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: data-exchange-pvc
+ template:
+ metadata:
+ labels:
+ app: data-exchange-pvc
+ spec:
+ containers:
+ - name: busybox
+ image: busybox
+ command: ["sh", "-c"]
+ args: ["while true; do echo 'PV test: $(date)' >> /mnt/shared.log; sleep 5; done"]
+ volumeMounts:
+ - name: mypvc
+ mountPath: /mnt
+ - name: multitool
+ image: busybox
+ command: ["sh", "-c"]
+ args: ["tail -f /mnt/shared.log"]
+ volumeMounts:
+ - name: mypvc
+ mountPath: /mnt
+ volumes:
+ - name: mypvc
+ persistentVolumeClaim:
+ claimName: local-pvc