@@ -168,9 +168,9 @@ Deployment нужна именно для описания подов и соз
Принцип работы ингресса следующий:
-Вы указываете хост ингресса и различные регексы пути.
+Вы указываете хост ингресса и различные пути.
В зависимости от входящего запроса ингресс выбирает в какой сервис
-направить его и в какой порт.
+направить запрос и в какой порт.
Настройка ингресса достаточно гибкая и я не думаю,
что вы можете столкнуться с какими либо проблемами.
@@ -218,10 +218,10 @@ Deployment нужна именно для описания подов и соз
- minikube
На первый взгляд minikube может показаться лучшим вариантом.
-И он действительно хорош тем, что его легко почистить после
+И он действительно хорош тем, что его легко развернуть и почистить после
своих экспериментов. Однако, там есть проблемы с ингрессами.
По факту они не работают и там надо окольными путями получать
-адреса приложения.
+адреса.
@@ -238,11 +238,10 @@ k3s - это легковесная production-ready реализация k8s. I
## Подключение кластера
-После установки в домашней дериктории должен был быть
+После установки `kubectl` в домашней дериктории должен был быть
сгенерирован файл `.kube/config`. Этот файл содержит данные для
подключения к различным кластерам. `minikube` Сам добавляет
-ключи для подключения к .kube/config. `K3S` не изменяет
-никаким образом `.kube/config`, поэтому надо будет это сделать вручную.
+ключи для подключения к .kube/config. `K3S` никак не изменяет `.kube/config`, поэтому надо будет это сделать вручную.
Для того, чтобы это сделать сначала разберёмся как выглядит конфиг.
@@ -298,27 +297,28 @@ current-context: "k3s"
можете передать параметр `--context $CONTEXT_NAME`, где `$CONTEXT_NAME` это название контекста.
Чтобы достать данные для подключения к `k3s` надо посмотреть его конфиг
-и скопировать данные. Либо выставить переменную среды, которая будет
+и скопировать данные. Либо выставить переменную среды `KUBECONFIG`, которая будет
указывать конфиг k3s. Конфиг подключения `k3s` лежит в файле `/etc/rancher/k3s/k3s.yaml`.
Можете выполнить команду, которая будет просить kubectl использовать указанный конфиг:
-`export KUBE_CONFIG=/etc/rancher/k3s/k3s.yaml`
+`export KUBECONFIG=/etc/rancher/k3s/k3s.yaml`
Либо скопируйте нужные данные для подключения себе в `.kube/config`.
После настройки выполните команду и проверьте что вам вернулось
-что-то подобное. Это значит, что никаких ресурсов пока в
-кластере нет. Это мы исправим позже. Пока что можно сказать,
-что подключение прошло успешно.
+что-то подобное.
```bash
$ kubectl --context "my-context" get pods
No resources found in default namespace.
```
-Если же у вас выпадает ошибка, например такая.
+Это значит, что никаких ресурсов пока в
+кластере нет. Это мы исправим чуть позже. Пока что можно сказать,
+что подключение прошло успешно.
+Если же у вас выпадает ошибка, например такая:
```
The connection to the server localhost:8080 was refused - did you specify the right host or port?
@@ -331,18 +331,19 @@ sudo systemctl start k3s.service
```
Либо у вас неверные данные для входа.
+Перепроверьте свой `.kube/config`.
### Мониторинг кластера
-Для просматривания управления кластером используется cli утилита `kubectl`.
-Но для того, чтобы с ней работать нужно получше понять что вообще в кластере есть.
+Для просмотра ресурсов и управления кластером используется `kubectl`.
+Но для того, чтобы с ней работать нужно получше понять, что вообще в кластере есть.
Для этого я советую использовать [Lens](https://k8slens.dev/). Это крайне
удобный интерфейс для управления своим кластером.
-Также там есть очень клёвая настрока, которая сама включит мониторинг
+Также там есть очень клёвая настройка, которая сама включит мониторинг
потребления памяти и процессора для всех подов и кластера в общем.
-На локальной машине это не очень много смысла имеет,
+На локальной машине это не имеет смысла,
а вот в проде было бы очень полезно.
Выглядит Lens примерно так:
@@ -437,7 +438,7 @@ app.listen(port, host, () => {
Это всё. Сервер готов.
-Протестируем запуск сервера выполнив команду ниже и открыв в
+Протестируем запуск сервера, выполнив команду ниже и открыв в
своём любимом браузере http://localhost:8080.
```
@@ -501,7 +502,7 @@ docker run --rm -it -p 3400:8000 "s3rius/req-counter-express:latest"
- Вы можете запушить собранное приложение в [Docker HUB](https://hub.docker.com/) и использовать его.
- Можете использовать мой образ `s3rius/req-counter-express:latest`
-- Импортировать собранный образ как tar файл и импортировать его в containerd напрямую.
+- Сохранить собранный образ как tar файл и импортировать его в containerd напрямую.
Как это сделать почитать можно в [этой статье](https://cwienczek.com/2020/06/import-images-to-k3s-without-docker-registry/).
### Деплой в k8s
@@ -645,7 +646,7 @@ service/req-counter-service created
Готово. Теперь вы можете зайти в lens, выбрать свой кластер из списка
и посмотреть как там поживает ваше приложение.
-Также не забудьте указать неймспей, в который вы беплоиди приложение.
+Также не забудьте указать неймспейс, в который вы деплоили приложение.
Выглядит это чудо примерно так:
@@ -694,7 +695,7 @@ ingress.networking.k8s.io/req-counter-ingress unchanged
service/req-counter-service unchanged
```
-Как можно видеть изменился только наш `Deployment`.
+Как можно видеть, изменился только наш `Deployment`.
Остальные ресурсы остались нетронутыми.
Давайте посмотрим на поды в нашем неймспейсе.
@@ -711,16 +712,15 @@ req-counter-deployment-764476db97-x28fr 1/1 Running 0 69s
нашего приложения.
-Теперь я пойду и выполню кучу запросов по адресу http://req-counter.local/
-и получу балансировку между подами из коробки, без дополнительных
+Теперь можно выполнить кучу запросов по адресу http://req-counter.local/
+и получить балансировку между подами из коробки, без дополнительных
конфигураций.
Если у вас не получается найти адрес. Добавьте данный хост себе в
`/etc/hosts` на линуксе или в `C:\Windows\System32\drivers\etc\hosts` на windows,
дописав в конец файла следующее:
-```
-...
+```[/etc/hosts]
127.0.0.1 req-couter.local
```
diff --git a/layouts/default.vue b/layouts/default.vue
index 80912f7..0577cdf 100644
--- a/layouts/default.vue
+++ b/layouts/default.vue
@@ -3,7 +3,7 @@
-
Dev blog
+
Dev blog
diff --git a/nuxt.config.js b/nuxt.config.js
index d9db534..3848b05 100644
--- a/nuxt.config.js
+++ b/nuxt.config.js
@@ -13,8 +13,12 @@ export default {
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
{ hid: 'description', name: 'description', content: '' },
{ name: 'format-detection', content: 'telephone=no' },
+ { hid: "og:image", name: 'og:image', content: "https://s3rius.blog/icon.png"}
],
link: [{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }],
+ headAttrs: {
+ "prefix": "og: http://ogp.me/ns#"
+ }
},
// Global CSS: https://go.nuxtjs.dev/config-css
diff --git a/pages/_slug.vue b/pages/_slug.vue
index 8063ad7..46ecf3e 100644
--- a/pages/_slug.vue
+++ b/pages/_slug.vue
@@ -48,12 +48,6 @@ export default defineComponent({
name: 'og:image',
content: doc.image,
})
- } else {
- meta_data.push({
- hid: 'og:image',
- name: 'og:image',
- content: 'https://s3rius.blog/logo.png',
- })
}
meta.value = meta_data
})
diff --git a/static/icon.png b/static/icon.png
index de3a247..418f932 100644
Binary files a/static/icon.png and b/static/icon.png differ
diff --git a/static/logo.png b/static/logo.png
new file mode 100644
index 0000000..de3a247
Binary files /dev/null and b/static/logo.png differ