Guest User

Untitled

a guest
Feb 6th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.35 KB | None | 0 0
  1. kind: PersistentVolumeClaim
  2. apiVersion: v1
  3. metadata:
  4. name: {{clustername}}pvcs001
  5. namespace: {{usernamespace}}
  6. annotations:
  7. volume.beta.kubernetes.io/storage-class: {{storageclass}}
  8. spec:
  9. accessModes:
  10. - ReadWriteOnce
  11. resources:
  12. requests:
  13. storage: {{volumesize}}Gi
  14. ---
  15. kind: PersistentVolumeClaim
  16. apiVersion: v1
  17. metadata:
  18. name: {{clustername}}pvcs002
  19. namespace: {{usernamespace}}
  20. annotations:
  21. volume.beta.kubernetes.io/storage-class: {{storageclass}}
  22. spec:
  23. accessModes:
  24. - ReadWriteOnce
  25. resources:
  26. requests:
  27. storage: {{volumesize}}Gi
  28. ---
  29. kind: PersistentVolumeClaim
  30. apiVersion: v1
  31. metadata:
  32. name: {{clustername}}pvcs003
  33. namespace: {{usernamespace}}
  34. annotations:
  35. volume.beta.kubernetes.io/storage-class: {{storageclass}}
  36. spec:
  37. accessModes:
  38. - ReadWriteOnce
  39. resources:
  40. requests:
  41. storage: {{volumesize}}Gi
  42. ---
  43. kind: StatefulSet
  44. apiVersion: apps/v1beta1
  45. metadata:
  46. name: {{clustername}}haproxy
  47. namespace: {{usernamespace}}
  48. spec:
  49. serviceName: {{clustername}}haproxy
  50. replicas: 1
  51. template:
  52. metadata:
  53. labels:
  54. app: {{clustername}}haproxy
  55. annotations:
  56. pod.beta.kubernetes.io/init-containers: '[
  57. {
  58. "name": "init-rabbitmq-first",
  59. "image": "busybox",
  60. "command": ["sh", "-c", "until nslookup {{clustername}}slave1; do echo waiting for {{clustername}}slave1; sleep 2; done;"],
  61. "imagePullPolicy": "IfNotPresent"
  62. }
  63. ]'
  64. spec:
  65. containers:
  66. - name: {{clustername}}haproxy
  67. imagePullPolicy: IfNotPresent
  68. image: daocloud.io/daocloud/haproxy-redis:v2-k1
  69. env:
  70. - name : REDIS_AUTH_PASSWORD
  71. value: {{PASSWORD}}
  72. - name : STARTORDER
  73. value: "7"
  74. - name : APPNAME
  75. value: "{{clustername}}"
  76. - name : HAPROXY_MAXCONN
  77. value: "{{haproxy_maxconn}}"
  78. - name : HAPROXY_CONNECT_TIMEOUT
  79. value: "{{haproxy_connect_timeout}}"
  80. - name : HAPROXY_CLIENT_TIMEOUT
  81. value: "{{haproxy_client_timeout}}"
  82. - name : HAPROXY_SERVER_TIMEOUT
  83. value: "{{haproxy_server_timeout}}"
  84. - name : HAPROXY_BALANCE
  85. value: "{{haproxy_balance}}"
  86. resources:
  87. requests:
  88. cpu: 50m
  89. memory: {{request_memory}}Mi
  90. limits:
  91. cpu: 50m
  92. memory: {{limit_memory}}Mi
  93. restartPolicy: Always
  94. ---
  95. apiVersion: v1
  96. kind: Service
  97. metadata:
  98. name: {{clustername}}haproxy
  99. namespace: {{usernamespace}}
  100. labels:
  101. io.daocloud.service.role: "master"
  102. io.daocloud.service.console: "true"
  103. app: {{clustername}}haproxy
  104. spec:
  105. ports:
  106. - port: 6379
  107. name: {{clustername}}haproxy
  108. protocol: TCP
  109. targetPort: 6379
  110. type: NodePort
  111. selector:
  112. app: {{clustername}}haproxy
  113. ---
  114. kind: StatefulSet
  115. apiVersion: apps/v1beta1
  116. metadata:
  117. name: {{clustername}}master
  118. namespace: {{usernamespace}}
  119. labels:
  120. app: {{clustername}}master
  121. alert: alert
  122. apptype: redis
  123. appgroup: {{clustername}}
  124. username: "redis"
  125. password: {{PASSWORD}}
  126. spec:
  127. serviceName: {{clustername}}master
  128. replicas: 1
  129. template:
  130. metadata:
  131. labels:
  132. app: {{clustername}}master
  133. alert: alert
  134. apptype: redis
  135. appgroup: {{clustername}}
  136. username: "redis"
  137. password: {{PASSWORD}}
  138. spec:
  139. volumes:
  140. - name: master
  141. persistentVolumeClaim:
  142. claimName: {{clustername}}pvcs001
  143. containers:
  144. - name: redis
  145. imagePullPolicy: IfNotPresent
  146. image: daocloud.io/daocloud/redis:ha-k1
  147. env:
  148. - name : REDIS_AUTH_PASSWORD
  149. value: {{password}}
  150. - name : STARTORDER
  151. value: "0"
  152. - name: MASTER
  153. value: "1"
  154. - name: ANNOUNCE_IP
  155. value: "{{clustername}}master"
  156. - name : STARTORDER
  157. value: "0"
  158. - name: MAXMEMORY
  159. value: "{{maxmemory}}"
  160. - name: REDIS_TIMEOUT
  161. value: "{{redis_timeout}}"
  162. - name: REDIS_RDB_COMPRESSION
  163. value: "{{redis_rdb_compression}}"
  164. - name: REDIS_APPEND_ONLY
  165. value: "{{redis_append_only}}"
  166. - name: REDIS_APPEND_FSYNC
  167. value: "{{redis_append_fsync}}"
  168. - name: REDIS_MAXMEMORY_POLICY
  169. value: "{{redis_maxmemory_policy}}"
  170. resources:
  171. requests:
  172. cpu: 50m
  173. memory: {{request_memory}}Mi
  174. limits:
  175. cpu: 50m
  176. memory: {{limit_memory}}Mi
  177. volumeMounts:
  178. - name: master
  179. mountPath: "/data"
  180. - name: sidecar
  181. imagePullPolicy: IfNotPresent
  182. image: daocloud.io/daocloud/dao-exporter:v1-1
  183. ports:
  184. - containerPort: 9120
  185. name: sidecar
  186. env:
  187. - name : USERNAME
  188. value: "redis"
  189. - name : PASSWORD
  190. value: "{{PASSWORD}}"
  191. - name : APPNAME
  192. value: "{{clustername}}"
  193. - name : APPTYPE
  194. value: "redis"
  195. - name : SERVICENAME
  196. value: "SERVICENAME"
  197. - name : HOSTS
  198. value: "redis:{{clustername}}:localhost:6379"
  199. resources:
  200. requests:
  201. cpu: 50m
  202. memory: 100Mi
  203. limits:
  204. cpu: 50m
  205. memory: 100Mi
  206. restartPolicy: Always
  207. ---
  208. apiVersion: v1
  209. kind: Service
  210. metadata:
  211. name: {{clustername}}master
  212. namespace: {{usernamespace}}
  213. labels:
  214. app: {{clustername}}master
  215. spec:
  216. ports:
  217. - port: 6379
  218. name: {{clustername}}master
  219. protocol: TCP
  220. targetPort: 6379
  221. type: ClusterIP
  222. selector:
  223. app: {{clustername}}master
  224. ---
  225. kind: StatefulSet
  226. apiVersion: apps/v1beta1
  227. metadata:
  228. name: {{clustername}}slave0
  229. namespace: {{usernamespace}}
  230. labels:
  231. app: {{clustername}}slave0
  232. alert: alert
  233. apptype: redis
  234. appgroup: {{clustername}}
  235. username: "redis"
  236. password: {{PASSWORD}}
  237. spec:
  238. serviceName: {{clustername}}slave0
  239. replicas: 1
  240. template:
  241. metadata:
  242. labels:
  243. app: {{clustername}}slave0
  244. alert: alert
  245. apptype: redis
  246. appgroup: {{clustername}}
  247. username: "redis"
  248. password: {{PASSWORD}}
  249. annotations:
  250. pod.beta.kubernetes.io/init-containers: '[
  251. {
  252. "name": "init-rabbitmq-first",
  253. "image": "busybox",
  254. "command": ["sh", "-c", "until nslookup {{clustername}}master; do echo waiting for masterr; sleep 2; done;"],
  255. "imagePullPolicy": "IfNotPresent"
  256. }
  257. ]'
  258. spec:
  259. affinity:
  260. podAntiAffinity:
  261. requiredDuringSchedulingIgnoredDuringExecution:
  262. - labelSelector:
  263. matchExpressions:
  264. - key: "app"
  265. operator: In
  266. values:
  267. - {{clustername}}master
  268. topologyKey: "kubernetes.io/hostname"
  269. podAntiAffinity:
  270. requiredDuringSchedulingIgnoredDuringExecution:
  271. - labelSelector:
  272. matchExpressions:
  273. - key: "app"
  274. operator: In
  275. values:
  276. - {{clustername}}slave1
  277. topologyKey: "kubernetes.io/hostname"
  278. volumes:
  279. - name: slave0
  280. persistentVolumeClaim:
  281. claimName: {{clustername}}pvcs002
  282. containers:
  283. - name: redis
  284. imagePullPolicy: IfNotPresent
  285. image: daocloud.io/daocloud/redis:ha-k1
  286. volumeMounts:
  287. - name: slave0
  288. mountPath: "/data"
  289. env:
  290. - name: MASTER_ADDRESS
  291. value: "{{usercluster}}master"
  292. - name: ANNOUNCE_IP
  293. value: "{{usercluster}}slave"
  294. - name : REDIS_AUTH_PASSWORD
  295. value: "{{PASSWORD}}"
  296. - name: MAXMEMORY
  297. value: "{{maxmemory}}"
  298. - name: REDIS_TIMEOUT
  299. value: "{{redis_timeout}}"
  300. - name: REDIS_RDB_COMPRESSION
  301. value: "{{redis_rdb_compression}}"
  302. - name: REDIS_APPEND_ONLY
  303. value: "{{redis_append_only}}"
  304. - name: REDIS_APPEND_FSYNC
  305. value: "{{redis_append_fsync}}"
  306. - name: REDIS_MAXMEMORY_POLICY
  307. value: "{{redis_maxmemory_policy}}"
  308. resources:
  309. requests:
  310. cpu: 50m
  311. memory: {{request_memory}}Mi
  312. limits:
  313. cpu: 50m
  314. memory: {{limit_memory}}Mi
  315. - name: sidecar
  316. imagePullPolicy: IfNotPresent
  317. image: daocloud.io/daocloud/dao-exporter:v1-1
  318. ports:
  319. - containerPort: 9120
  320. name: sidecar
  321. env:
  322. - name : USERNAME
  323. value: "redis"
  324. - name : PASSWORD
  325. value: "{{PASSWORD}}"
  326. - name : APPNAME
  327. value: "{{clustername}}"
  328. - name : APPTYPE
  329. value: "redis"
  330. - name : SERVICENAME
  331. value: "SERVICENAME"
  332. - name : HOSTS
  333. value: "redis:{{clustername}}:localhost:6379"
  334. resources:
  335. requests:
  336. cpu: 50m
  337. memory: 100Mi
  338. limits:
  339. cpu: 50m
  340. memory: 100Mi
  341. restartPolicy: Always
  342. ---
  343. apiVersion: v1
  344. kind: Service
  345. metadata:
  346. name: {{clustername}}slave
  347. namespace: {{usernamespace}}
  348. labels:
  349. app: {{clustername}}slave
  350. spec:
  351. ports:
  352. - port: 6379
  353. name: {{clustername}}slave
  354. protocol: TCP
  355. targetPort: 6379
  356. type: ClusterIP
  357. selector:
  358. app: {{clustername}}slave0
  359. ---
  360. kind: StatefulSet
  361. apiVersion: apps/v1beta1
  362. metadata:
  363. name: {{clustername}}slave1
  364. namespace: {{usernamespace}}
  365. labels:
  366. app: {{clustername}}slave1
  367. alert: alert
  368. apptype: redis
  369. appgroup: {{clustername}}
  370. username: "redis"
  371. password: {{PASSWORD}}
  372. spec:
  373. serviceName: {{clustername}}slave1
  374. replicas: 1
  375. template:
  376. metadata:
  377. labels:
  378. app: {{clustername}}slave1
  379. alert: alert
  380. apptype: redis
  381. appgroup: {{clustername}}
  382. username: "redis"
  383. password: {{PASSWORD}}
  384. annotations:
  385. pod.beta.kubernetes.io/init-containers: '[
  386. {
  387. "name": "init-rabbitmq-first",
  388. "image": "busybox",
  389. "command": ["sh", "-c", "until nslookup {{clustername}}slave; do echo waiting for {{clustername}}slave; sleep 2; done;"],
  390. "imagePullPolicy": "IfNotPresent"
  391. }
  392. ]'
  393. spec:
  394. affinity:
  395. podAntiAffinity:
  396. requiredDuringSchedulingIgnoredDuringExecution:
  397. - labelSelector:
  398. matchExpressions:
  399. - key: "app"
  400. operator: In
  401. values:
  402. - {{clustername}}slave0
  403. topologyKey: "kubernetes.io/hostname"
  404. podAntiAffinity:
  405. requiredDuringSchedulingIgnoredDuringExecution:
  406. - labelSelector:
  407. matchExpressions:
  408. - key: "app"
  409. operator: In
  410. values:
  411. - {{clustername}}master
  412. topologyKey: "kubernetes.io/hostname"
  413. volumes:
  414. - name: {{clustername}}slave1
  415. persistentVolumeClaim:
  416. claimName: {{clustername}}pvcs003
  417. containers:
  418. - name: redis
  419. imagePullPolicy: IfNotPresent
  420. image: daocloud.io/daocloud/redis:ha-k1
  421. volumeMounts:
  422. - name: {{clustername}}slave1
  423. mountPath: "/data"
  424. env:
  425. - name: MASTER_ADDRESS
  426. value: "{{usercluster}}master"
  427. - name: ANNOUNCE_IP
  428. value: "{{usercluster}}slave1"
  429. - name : REDIS_AUTH_PASSWORD
  430. value: "{{PASSWORD}}"
  431. - name: MAXMEMORY
  432. value: "{{maxmemory}}"
  433. - name: REDIS_TIMEOUT
  434. value: "{{redis_timeout}}"
  435. - name: REDIS_RDB_COMPRESSION
  436. value: "{{redis_rdb_compression}}"
  437. - name: REDIS_APPEND_ONLY
  438. value: "{{redis_append_only}}"
  439. - name: REDIS_APPEND_FSYNC
  440. value: "{{redis_append_fsync}}"
  441. - name: REDIS_MAXMEMORY_POLICY
  442. value: "{{redis_maxmemory_policy}}"
  443. resources:
  444. requests:
  445. cpu: 50m
  446. memory: {{request_memory}}Mi
  447. limits:
  448. cpu: 50m
  449. memory: {{limit_memory}}Mi
  450. - name: sidecar
  451. imagePullPolicy: IfNotPresent
  452. image: daocloud.io/daocloud/dao-exporter:v1-1
  453. ports:
  454. - containerPort: 9120
  455. name: sidecar
  456. env:
  457. - name : USERNAME
  458. value: "redis"
  459. - name : PASSWORD
  460. value: "{{PASSWORD}}"
  461. - name : APPNAME
  462. value: "{{clustername}}"
  463. - name : APPTYPE
  464. value: "redis"
  465. - name : SERVICENAME
  466. value: "SERVICENAME"
  467. - name : HOSTS
  468. value: "redis:{{clustername}}:localhost:6379"
  469. resources:
  470. requests:
  471. cpu: 50m
  472. memory: 100Mi
  473. limits:
  474. cpu: 50m
  475. memory: 100Mi
  476. restartPolicy: Always
  477. ---
  478. apiVersion: v1
  479. kind: Service
  480. metadata:
  481. name: {{clustername}}slave1
  482. namespace: {{usernamespace}}
  483. labels:
  484. app: {{clustername}}slave1
  485. spec:
  486. ports:
  487. - port: 6379
  488. name: {{clustername}}slave1
  489. protocol: TCP
  490. targetPort: 6379
  491. type: ClusterIP
  492. selector:
  493. app: {{clustername}}slave1
  494. ---
  495. kind: StatefulSet
  496. apiVersion: apps/v1beta1
  497. metadata:
  498. name: {{clustername}}sentinel
  499. namespace: {{usernamespace}}
  500. spec:
  501. serviceName: {{clustername}}sentinel
  502. replicas: 3
  503. template:
  504. metadata:
  505. labels:
  506. app: {{clustername}}sentinel
  507. annotations:
  508. pod.beta.kubernetes.io/init-containers: '[
  509. {
  510. "name": "init-rabbitmq-first",
  511. "image": "busybox",
  512. "command": ["sh", "-c", "until nslookup {{clustername}}slave1; do echo waiting for {{clustername}}slave1; sleep 2; done;"],
  513. "imagePullPolicy": "IfNotPresent"
  514. }
  515. ]'
  516. spec:
  517. affinity:
  518. podAntiAffinity:
  519. requiredDuringSchedulingIgnoredDuringExecution:
  520. - labelSelector:
  521. matchExpressions:
  522. - key: "app"
  523. operator: In
  524. values:
  525. - {{clustername}}sentinel
  526. topologyKey: "kubernetes.io/hostname"
  527. containers:
  528. - name: redis
  529. imagePullPolicy: IfNotPresent
  530. image: daocloud.io/daocloud/redis-sentinel:v2-alpha1
  531. env:
  532. - name : REDIS_AUTH_PASSWORD
  533. value: "{{PASSWORD}}"
  534. - name: SENTINEL
  535. value: "1"
  536. - name: MASTER_IP
  537. value: "{{clustername}}master"
  538. - name: SENTINEL_PORT
  539. value: "26379"
  540. - name: downaftermilliseconds
  541. value: "10000"
  542. - name: failovertimeout
  543. value: "5000"
  544. - name : APPNAME
  545. value: "{{clustername}}"
  546. - name: REDIS_SENTINEL_DOWN_AFTER_MILLISECONDS
  547. value: "{{redis_sentinel_down_after_milliseconds}}"
  548. - name: REDIS_SENTINEL_FAILOVER_TIMEOUT
  549. value: "{{redis_sentinel_failover_timeout}}"
  550. - name: REDIS_SENTINEL_PARALLEL_SYNCS
  551. value: "{{redis_sentinel_parallel_syncs}}"
  552. resources:
  553. requests:
  554. cpu: 50m
  555. memory: {{request_memory}}Mi
  556. limits:
  557. cpu: 50m
  558. memory: {{limit_memory}}Mi
  559. restartPolicy: Always
  560. ---
  561. apiVersion: v1
  562. kind: Service
  563. metadata:
  564. name: sentinel
  565. namespace: {{usernamespace}}
  566. labels:
  567. app: {{clustername}}sentinel
  568. spec:
  569. ports:
  570. - port: 26379
  571. name: {{clustername}}sentinel
  572. protocol: TCP
  573. targetPort: 26379
  574. type: ClusterIP
  575. selector:
  576. app: {{clustername}}sentinel
Add Comment
Please, Sign In to add comment