Загрузить файлы в «/»
This commit is contained in:
parent
0a8b851fe1
commit
4fcef4fe94
71
METALLIB.md
Normal file
71
METALLIB.md
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
# Настройка MetalLB для K3s с одним внешним IP-адресом
|
||||||
|
|
||||||
|
## Шаги по настройке
|
||||||
|
|
||||||
|
1. **Проверьте статус Traefik и MetalLB:**
|
||||||
|
```bash
|
||||||
|
kubectl get svc -n kube-system traefik
|
||||||
|
kubectl get pods -n metallb-system
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Установка MetalLB (если не установлен):**
|
||||||
|
```bash
|
||||||
|
kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/main/config/manifests/metallb-native.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Создайте файл конфигурации `metallb-config.yaml` с указанием внешнего IP-адреса:**
|
||||||
|
```yaml
|
||||||
|
apiVersion: metallb.io/v1beta1
|
||||||
|
kind: IPAddressPool
|
||||||
|
metadata:
|
||||||
|
name: my-single-ip-pool
|
||||||
|
namespace: metallb-system
|
||||||
|
spec:
|
||||||
|
addresses:
|
||||||
|
- <ваш-внешний-IP-адрес> # Укажите здесь ваш внешний IP-адрес
|
||||||
|
---
|
||||||
|
apiVersion: metallb.io/v1beta1
|
||||||
|
kind: L2Advertisement
|
||||||
|
metadata:
|
||||||
|
name: my-l2-advertisement
|
||||||
|
namespace: metallb-system
|
||||||
|
spec: {}
|
||||||
|
```
|
||||||
|
|
||||||
|
Примените конфигурацию:
|
||||||
|
```bash
|
||||||
|
kubectl apply -f metallb-config.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
4. **Создайте сервис типа LoadBalancer:**
|
||||||
|
Создайте файл `service.yaml` со следующим содержимым:
|
||||||
|
```yaml
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: external-service
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: my-app
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
port: 80
|
||||||
|
targetPort: 80
|
||||||
|
type: LoadBalancer
|
||||||
|
```
|
||||||
|
|
||||||
|
Примените манифест:
|
||||||
|
```bash
|
||||||
|
kubectl apply -f service.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
5. **Проверьте, что сервис получил внешний IP:**
|
||||||
|
```bash
|
||||||
|
kubectl get svc external-service
|
||||||
|
```
|
||||||
|
|
||||||
|
## Заметки
|
||||||
|
- Убедитесь, что ваш сервер позволяет доступ к указанному IP-адресу на соответствующих портах.
|
||||||
|
- IP-адрес должен быть статическим и доступным для использования.
|
||||||
|
|
||||||
|
Следуя этим шагам, вы настроите MetalLB для работы с указанным внешним IP-адресом в кластере K3s.
|
||||||
Loading…
Reference in New Issue
Block a user