Skip to content
This repository has been archived by the owner on Mar 16, 2024. It is now read-only.

Commit

Permalink
Switch router pod to deployment and not daemonset
Browse files Browse the repository at this point in the history
Signed-off-by: Darren Shepherd <darren@acorn.io>
  • Loading branch information
ibuildthecloud committed Nov 3, 2022
1 parent 99bc5d9 commit 9170b2e
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 58 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
kind: DaemonSet
kind: Deployment
apiVersion: apps/v1
metadata:
name: app-name-app-namespace-app-name-1234567890ab
Expand Down
Original file line number Diff line number Diff line change
@@ -1,50 +1,3 @@
kind: DaemonSet
apiVersion: apps/v1
metadata:
name: app-name-app-namespace-app-name-1234567890ab
namespace: acorn-system
labels:
acorn.io/app-name: app-name
acorn.io/app-namespace: app-namespace
acorn.io/managed: "true"
acorn.io/service-name: app-name
spec:
selector:
matchLabels:
acorn.io/app-name: app-name
acorn.io/app-namespace: app-namespace
acorn.io/managed: "true"
acorn.io/service-name: app-name
template:
metadata:
labels:
acorn.io/app-name: app-name
acorn.io/app-namespace: app-namespace
acorn.io/managed: "true"
acorn.io/service-name: app-name
spec:
containers:
- env:
- name: SRC_PORT
value: "80"
- name: DEST_PROTO
value: tcp
- name: DEST_PORT
value: "80"
- name: DEST_IPS
image: rancher/klipper-lb:v0.3.4
name: port-80
ports:
- containerPort: 80
protocol: TCP
resources: { }
securityContext:
capabilities:
add:
- NET_ADMIN
enableServiceLinks: false
automountServiceAccountToken: false
---
kind: Service
apiVersion: v1
metadata:
Expand All @@ -57,7 +10,6 @@ metadata:
acorn.io/service-name: app-name
spec:
type: ClusterIP
internalTrafficPolicy: Local
ports:
- appProtocol: HTTP
name: "80"
Expand Down
1 change: 1 addition & 0 deletions pkg/controller/routes.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ func routes(router *router.Router) {
router.Type(&corev1.PersistentVolume{}).Selector(managedSelector).HandlerFunc(appdefinition.ReleaseVolume)
router.Type(&corev1.Namespace{}).Selector(managedSelector).HandlerFunc(namespace.DeleteOrphaned)
router.Type(&appsv1.DaemonSet{}).Namespace(system.Namespace).HandlerFunc(gc.GCOrphans)
router.Type(&appsv1.Deployment{}).Namespace(system.Namespace).HandlerFunc(gc.GCOrphans)
router.Type(&corev1.Service{}).Namespace(system.Namespace).HandlerFunc(gc.GCOrphans)
router.Type(&corev1.Pod{}).Selector(managedSelector).HandlerFunc(gc.GCOrphans)
router.Type(&netv1.Ingress{}).Selector(managedSelector).Middleware(dns.RequireLBs).Handler(dns.NewDNSHandler())
Expand Down
17 changes: 8 additions & 9 deletions pkg/expose/acorns.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@ func Acorns(req router.Request, app *v1.AppInstance) (result []kclient.Object, _
})
}

ds := toDaemonSet(service, app, ports)
dsSvc := toDaemonSetService(service, app, ds, ports)
ds := toRouterDeployment(service, app, ports)
dsSvc := toRouterDeploymentService(service, app, ds, ports)
svc := toService(cfg, service, app, dsSvc)

result = append(result, ds, dsSvc, svc)
Expand All @@ -68,15 +68,15 @@ type exposedPort struct {
DestIPs []string
}

func toDaemonSet(serviceName string, app *v1.AppInstance, exposedPorts []exposedPort) *appsv1.DaemonSet {
func toRouterDeployment(serviceName string, app *v1.AppInstance, exposedPorts []exposedPort) *appsv1.Deployment {
labels := toAcornLabels(app, serviceName)
ds := &appsv1.DaemonSet{
ds := &appsv1.Deployment{
ObjectMeta: metav1.ObjectMeta{
Name: toName(app, serviceName),
Namespace: system.Namespace,
Labels: labels,
},
Spec: appsv1.DaemonSetSpec{
Spec: appsv1.DeploymentSpec{
Selector: metav1.SetAsLabelSelector(labels),
Template: corev1.PodTemplateSpec{
ObjectMeta: metav1.ObjectMeta{
Expand Down Expand Up @@ -138,7 +138,7 @@ func toDaemonSet(serviceName string, app *v1.AppInstance, exposedPorts []exposed
return ds
}

func toDaemonSetService(serviceName string, appInstance *v1.AppInstance, ds *appsv1.DaemonSet, exposedPorts []exposedPort) *corev1.Service {
func toRouterDeploymentService(serviceName string, appInstance *v1.AppInstance, ds *appsv1.Deployment, exposedPorts []exposedPort) *corev1.Service {
var (
labels = toAcornLabels(appInstance, serviceName)
)
Expand All @@ -154,9 +154,8 @@ func toDaemonSetService(serviceName string, appInstance *v1.AppInstance, ds *app
Ports: typed.MapSlice(exposedPorts, func(v exposedPort) corev1.ServicePort {
return ports.ToServicePort(v.Port)
}),
Selector: labels,
Type: corev1.ServiceTypeClusterIP,
InternalTrafficPolicy: &[]corev1.ServiceInternalTrafficPolicyType{corev1.ServiceInternalTrafficPolicyLocal}[0],
Selector: labels,
Type: corev1.ServiceTypeClusterIP,
},
}
}
Expand Down

0 comments on commit 9170b2e

Please sign in to comment.