Vadim
почему? - обоснуйте
selinux, например
Andor
использование selinux автоматически делает вашу систему безопасной!
Vadim
ну и всякие вещи типа access control, хотя бы по gid
𝚔𝚟𝚊𝚙𝚜
ну и всякие вещи типа access control, хотя бы по gid
А оно разве не kubelet'ом обрабатывается после маунта и непосредственно перед запуском пода - т.е. независимо от бэкенда?
𝚔𝚟𝚊𝚙𝚜
Я лично не использую selinux и access control для волюмов, так что точно сказать не могу, но мне интересно, может вы в курсе?
Vadim
А оно разве не kubelet'ом обрабатывается после маунта и непосредственно перед запуском пода - т.е. независимо от бэкенда?
макнт не причем, дело в пермишшенах кому писать а кому нет https://kubernetes.io/docs/tasks/configure-pod-container/configure-persistent-volume-storage/#access-control
𝚔𝚟𝚊𝚙𝚜
макнт не причем, дело в пермишшенах кому писать а кому нет https://kubernetes.io/docs/tasks/configure-pod-container/configure-persistent-volume-storage/#access-control
> When a Pod consumes a PersistentVolume that has a GID annotation, the annotated GID is applied to all Containers in the Pod in the same way that GIDs specified in the Pod’s security context are. Every GID, whether it originates from a PersistentVolume annotation or the Pod’s specification, is applied to the first process run in each Container. А, ну так это же и для любых других PV работать будет, в том числе и для hostPath
𝚔𝚟𝚊𝚙𝚜
я имею ввиду если оформить hostPath как persistentVolume, а не цеплять напрямую в под
Vadim
только безопаснее, потому что проверяет пути и хранит лог что и куда прицепилось
𝚔𝚟𝚊𝚙𝚜
ага, я и имел ввиду, что не понятно в чем конкретно разница между драйверами hostPath и local, так как по сути это одно и тоже
𝚔𝚟𝚊𝚙𝚜
hostPath тоже будет пути проверять, если поставить type: Directory вместо дефотного type: DirectoryOrCreate
Artem
Какие альтернативные дашборды используете?
Nata
а как hostpath в чарты пихать? )
𝚔𝚟𝚊𝚙𝚜
но он не остановит кого то от повторрного монтирования
Речь об ReadWriteOnce? - Если да, то остановит, т.к. проверяется на стороне куба а не самим плагином
𝚔𝚟𝚊𝚙𝚜
а как hostpath в чарты пихать? )
Зачем его туда пихать? - там же PVC должны быть.
Vadim
создавать PV ручками с hostPath, чтобы потом привязать их к PVC, чтобы потом под мог смонтировать PV связанный с PVC
Vadim
годная идея
𝚔𝚟𝚊𝚙𝚜
ну в целом да, я так с envsubst делал
Евгений
подскажите пожалуйста, уставновил дашборд для кубернетеса по инструкции, завел себе права, но при заходе через браузер вижу только джсоны
Sergey
:D
Евгений
я был кинул ссылку но бот удаляет их
Sergey
ты напиши че делал
Евгений
сначала сделал kubectl apply дашбоарда
Евгений
потом выдал системные права анонимной роли
Sergey
системные или админ роль
Евгений
ща
Евгений
kubectl create clusterrolebinding cluster-system-anonymous --clusterrole=cluster-admin --user=system:anonymous
Евгений
ну короче права появились, до этого 403 было
Евгений
но это неважно
Евгений
потому что у меня при заходе на страницу отображается json
Andor
Валидный с данными?
Евгений
да
Sergey
ты ей порт какой поставил
Sergey
kubectl -n kube-system edit service kubernetes-dashboard
Евгений
сек
Михаил
секунду
Михаил
кидай
Евгений
https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/
Евгений
обычная дока с оффсайта
Sergey
apiVersion: v1 kind: ServiceAccount metadata: name: admin-user namespace: kube-system --- apiVersion: rbac.authorization.k8s.io/v1beta1 kind: ClusterRoleBinding metadata: name: admin-user roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: admin-user namespace: kube-system
Евгений
apiVersion: v1 kind: Service metadata: creationTimestamp: 2018-09-27T12:33:21Z labels: k8s-app: kubernetes-dashboard name: kubernetes-dashboard namespace: kube-system resourceVersion: "17183" selfLink: /api/v1/namespaces/kube-system/services/kubernetes-dashboard uid: 84d9884e-c251-11e8-8a01-0800275dec40 spec: clusterIP: 10.101.135.42 ports: - port: 443 protocol: TCP targetPort: 8443 selector: k8s-app: kubernetes-dashboard sessionAffinity: None type: ClusterIP status: loadBalancer: {}
Sergey
ты как заходишь? через нод порт?
Евгений
через ip master ноды
Евгений
а как надо?
Sergey
сделай через node port
Sergey
spec: clusterIP: 10.99.198.216 externalTrafficPolicy: Cluster ports: - nodePort: 30000 port: 443 protocol: TCP targetPort: 8443 selector: k8s-app: kubernetes-dashboard sessionAffinity: None type: NodePort status: loadBalancer: {}
Sergey
и заходи по токену
Sergey
от того аккаунта что создал
Sergey
ты нод порт ей не выставил потому и жсон
Евгений
Sergey
погуглю, спс
так я тебе все готовое для борды дал:)
Евгений
так я тебе все готовое для борды дал:)
это просто вставить в тот ямл?
Sergey
агась
Евгений
так, ок, рестартнуть ее теперь?
Sergey
если забыл токен можешь его найти kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')
Евгений
работает, спасибо!
Михаил
holy shit
Да нормально
Евгений
мне просто куча токенов прилетает, какой из них для дашборда?
Pavel
ns
Sergey
namespace
Sergey
какой ты создавал?
Евгений
я не создавал аккаунтов ._.
Евгений
или
𝚔𝚟𝚊𝚙𝚜
Какие альтернативные дашборды используете?
пока не использую, но планирую ранчер прикрутить
Sergey
apiVersion: v1 kind: ServiceAccount metadata: name: admin-user namespace: kube-system --- apiVersion: rbac.authorization.k8s.io/v1beta1 kind: ClusterRoleBinding metadata: name: admin-user roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: admin-user namespace: kube-system
𝚔𝚟𝚊𝚙𝚜
он умеет классно по LDAP доступ выдавать
𝚔𝚟𝚊𝚙𝚜
технишенам поды ребутать, самое оно