15m-ops-break's People
15m-ops-break's Issues
Nice
- Scheduling priorities and classes
nice
,renice
and nice levels- How this interacts with cgroups
Capabilities, setuid, sudo
TLS
- TLS handshake, latency
- SNI headers, encrypted SNI
- Certificates and validation (client and server)
- TLS record sizes and TCP MSS
- Certificate chain and bundles
shell for beginners
limits
- rlimit/ulimit
- /etc/limits.conf
- pam_limit
- sysctl limits
- cgroups
Memory management: OOM Killer
Init + systemd
- What is init
- What is systemd
systemctl
- units, services, targets
- socket activation
- dependencies
systemd-analyze
README
add readme with link to channel
SSH
- What is SSH
- Channels, subsystems
- Auth keys, agent
- Multiplexing
- Forwarding
- Is it safe to expose on public net?
Mount binds
- What is mount bind
- Soft/hard/recursive
- When to use
Git
Intro to Git
- Merkle trees
- Content addressable storage
- Blobs, commits, heads
- Repo, work tree, staging area
- Merges vs rebase
Router, NAT, proxy; 3 ways to get to the internet
Compare 3 ways of getting to the internet with packet capture and OSI diagrams
- Router - packets not touched only moved
- NAT - Layer 3/4 address rewrite
- SOCKS/HTTP proxy - Layer 3/4 full rewrite, Layer 7 rewrite (HTTP)
sysctl
Series: Networking
Memory management: virtual memory
- memory architecture
- TLB
- hugepages
- dirty pages
- mmap
- shared memory
- copy on write
PAM
- What is PAM
- Integrating SSO using PAM
- Automating audit, session management etc
how email works
- SMTP
- POP/IMAP
- Security
tracing
- strace
- ltrace
- perf
- ebpftrace
separate video on ebpf
what happens after you press enter
Classic interview question: list everything that happens when you click enter in the browser address box
manpages
Networking in the cloud & k8s era/space
Hi,
Would love it if you could create an episode about networking in the cloud - debugging, useful tools, and how it differs from "old times".
Also, networking in k8s - how it works, what to do/try when defining IP masquerade is not enough, and how the hell to debug stuff when containers are running alpine and no root so you don't have any curl/telnet/ping and other useful commands in the container and you can't install it either.
Random
- Why we need random
- How random is "random"? random quality, "secure random", pseudo random
- Why we need PRNG (determinism, performance)
- /dev/random, /dev/urandom
- libc
random()
,srandom()
- uuid4
Memory management: intro
- How to read
free
, what are the memory categories - Why doesn't free = total - used
- Kernel/userspace memory
- Shared memory
- Memory pressure behaviour
Executables
- The executable bit
- How Linux executes files: magic headers, binary formats, shells
- LDD and the linker
- binfmt extensions
Runtimes, compilers, interpreters
What's the difference between compilers and interpreters, how does relate to runtimes and language VMs.
Name resolution (nsswitch/DNS)
- Anatomy of
resolve()
- NSSwitch,
/etc/hosts
- DNS basics,
/etc/resolv.conf
- DNS cache daemons
Memory management: NUMA
editline, readline
- what are readline and editline
.inputrc
,.editrc
- ncurses
SLO/SLA/SLI
quite related to resilience engineering IMO
- misconceptions
- how can these be calculated in complex systems (especially when dependent on public clouds)
Das Boot
How Linux boot sequence works:
- bootloader
- kernel
- initrd
- init
- runlevels
Introduction to resilience engineering
- The risk matrix (impact/frequency) and the long tail
- Failure domains
- Blast radius/bulkheading
- Preconditions/limits of automation
- Runbooks
- Monitoring/observability
Memory management: CoW
What is a Linux distribution?
ICMP and traceroute
- ICMP
- routing messages (destination not reachable)
- ping
- TTL header and traceroute
Load Average
Load average is one of the basic metric we have while debugging performance issues. I often see people (candidates?) think that load average is only effected by CPU, while it can be effected by disk/network utilization, I think it worth an episode
Iptables and IP based security
Kernel structure and its role in day to day
Hi :)
Would love it if you could create an episode about kernel structure, and how knowing it can help incorporate it in day to day tasks and troubleshooting :)
5 different ways to H/A and load balancing
- DNS
- IP (BGP, VIP)
- TCP
- HTTP (L7 proxy)
- Client side
anatomy of a cdn
spf, dkim
backups
- Its not about backup, it's about restore
- A replica is not a backup
- But dataset regeneration is
- RTO/RPO
- Full/incremental/differential
o/s anatomy
- Userspace/kernelspace
- System calls
- libc
- init
- packages
tools
Why tools
Build your tools
Get your tools
Combine your tools
Master your tools (only a few, choose carefully)
Pagecache/swap
virtualisation, emulation, abstraction
The concept of virtualisation (generic, e.g. virtual memory, virtual methods, virtual machines), and how it relates and contrasts with emulation (e.g. terminals, machine emulation a-la qemu) and abstraction. In a nutshell:
- virtualisation: disconnecting an existing interface from implementation while keeping the implementation the same. often done for logistical reasons - improved resource management. E.g. hypervisors, virtual memory
- emulation: disconnecting an existing interface from implementation but providing it by a different unrelated implementation, pretending to be the original thing. Often done for compatibility. e.g. terminals
- abstraction: creating a new interface; this implies existing implementations do not dictate the interface. Usually done to reduce semantic surface (limit possible inputs), simplify and/or add high level features.
Over time abstractions break and become dependent on their implementation, eventually requiring virtualisation and emulation.
Users/groups
- UID/GID process bits,
getuid()
family - usernames,
/etc/shadow
,/etc/passwd
,/etc/group
- nsswitch
- UID namespaces
Graphing 101
- How should good graphs look like
- Axis, bounds, resolution
- Colors
- Peak erosion, resolution, aggregates
- Graphs should reflect a model
- Reference lines/bars
- Related graphs (e.g. USE, latency/throughtput/errors)
- Working with multiple series
- Comparing timeframes
- Clusters (bands, most deviants, top K)
Memory management & debug
Hi :)
Would love it if you could create an episode about memory management and how to debug memory issues
The grid
- What is a grid and why you need it
- K8s, Nomad, ECS, etc
- Responsibilities of a grid
- Scheduling
- Process management
- Resource management
- Auxiliary services
- Service discovery
- Config data/meta data/secrets
- Load balancing
Http - request performance analysis
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.